1. 客户端建立两把密钥:
ssh-keygen [-t rsa|dsa]
2. 将公钥档案数据上传到服务器上
scp ~/.ssh/id_rsa.pub dmtsai@192.168.100.254:~
# 上传到 dmtsai 的家目录底下即可。
3. 将公钥放置服务器端的正确目录与文件名:
建立 ~/.ssh 档案,注意权限需要为 700 喔!
[dmtsai@www ~]$ ls -ld .ssh
ls: .ssh: 没有此一档案或目录
# 由于可能是新建的用户,
因此这个目录不存在。不存在才作底下建立目录的行为
[dmtsai@www ~]$ mkdir .ssh; chmod 700 .ssh
[dmtsai@www ~]$ ls -ld .ssh
drwx------. 2 dmtsai dmtsai 4096 Jul 25 13:06 .ssh
# 权限设定中,务必是 700 且属于使用者本人的账号与群组才行!
# 2. 将公钥档案内的数据使用 cat 转存到 authorized_keys 内
[dmtsai@www ~]$ ls -l *pub
-rw-r--r--. 1 dmtsai dmtsai 416 Jul 25 13:05 id_rsa.pub <==确实有存
在
[dmtsai@www ~]$ cat id_rsa.pub >> .ssh/authorized_keys
[dmtsai@www ~]$ chmod 644 .ssh/authorized_keys
[dmtsai@www ~]$ ls -l .ssh
-rw-r--r--. 1 dmtsai dmtsai 416 Jul 25 13:07 authorized_keys
# 这个档案的权限设定中,就得要是 644 才可以!不可以搞混了!
[root@www ~]# vim /etc/ssh/sshd_config
PermitRootLogin no <==约在第 39 行,请拿掉批注且修改成这样
DenyGroups nossh <==底下这两行可以加在档案的最后面
DenyUsers testssh
[root@www ~]# vim /usr/local/virus/iptables/iptables.allow
iptables -A INPUT -i $EXTIF -s 192.168.1.0/24 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i $EXTIF -s 192.168.100.0/24 -p tcp --dport 22 -j
ACCEPT
[root@www ~]# vim /etc/hosts.allow
sshd: 127.0.0.1 192.168.1.0/255.255.255.0
192.168.100.0/255.255.255.0
[root@www ~]# vim /etc/hosts.deny
sshd : ALL
转载于:https://blog.51cto.com/halfming/1160160