#ssh安全优化之一:关闭DNS反向解析,加快登陆速度
UseDNS no
#ssh安全优化之二:合理运用ssh黑白名单
#白名单(只允许指定用户登陆,拒绝其他,下面表示student可以在任意主机登陆,root只能在123主机上登陆)
AllowUsers student root@123.123.123.123
#黑名单(拒绝指定用户登陆,其余放行)
DenyUsers nginx
#ssh安全优化之三:禁止root账户登陆
用root权限修改如下配置文件内容(/etc/ssh/sshd.config)
找到此行内容 PermitRootLogin yes
修改为 PermitRootLogin no
重启ssh服务
命令:/etc/init.d/ssh restart
#ssh安全优化之四:普通用户采用密钥方式登陆
使用命令创建普通用户:useradd -d /home username
重置username密码:passwd username
这里连续键入两次想设置的密码;
至此我们又可以ssh登录了;
1:生成密钥对儿(在自己笔记本上操作):
ssh-keygen -t dsa (此命令一敲,第一个停顿提示可以不管直接enter,因为他是说待会儿密钥对儿的默认保存路径~/.ssh)
第二个停顿叫你键入验证此密钥对儿的口令(可以为空,也可以为5个或则以上的字符)
第三个停顿是再次键入密钥对儿的口令(第二个你键入什么这里也键入什么)
至此ok,密钥对儿算是有了;
2:修改服务器的ssh配置文件
编辑/etc/ssh/sshd.config文件找到以下逐项配置
PasswordAuthentication yes (注释:使用口令登录)
PubkeyAuthentication no (注释:不使用非对称密钥登录)
UsePAM yes (注释:非对称密钥验证失败后可以用口令验证)(我太讨厌ssh暴力破解了)
将上面的配置改为
PasswordAuthentication no (注释:使不用口令登录)
PubkeyAuthentication yes (注释:使用非对称密钥登录)
UsePAM no (注释:非对称密钥验证失败后不可以用口令验证)(我太讨厌ssh暴力破解了,才改成这样,我建议改为yes)
到这里我们的配置算是改好了,重启ssh服务,上面有介绍哦
3:将公钥(就是在本机用户home/.ssh中.pub结尾的那个东东)上传到服务器
并将其重定向到服务器/home/uesrname/.ssh/authorized_keys的文件中(既上面创建username普通用户)
注意:authorized_keys 这个文件权限必须600,.ssh这个目录权限必须700
cat id_dsa.pub >> /home/username/.ssh/authorized_keys
4:测试密钥验证链接
在笔记本上运行ssh username@ip
然后会提示你键入验证口令,这可不是你username的密码,而是刚才你生成密码是连续两次键入的东东
哈哈成功了吧。若是失败了,好好检查
案例在线(四):辣条在服务器上测试vsftpd链接,不想太麻烦就直接创建了一个系统用户,当作ftp账户;我有个非常明确的目标♦ftp账户不能登录系统
不让ftp账户登录系统这好办是吧,就在/etc/passwd文件中把其账户对应的shell改成/usr/sbin/nologin就好了,
但是,但是,但是,重要的事情说三遍,系统是登录不了了,可ftp同样也登录不了了,直接报 530 Login incorrect,错误,我傻眼了,折腾好几天,试了权限黑白名单,防火墙,都不管是,照样530。
怎么说呢 ,算是皇天不负吧,我将/etc/pam.d/vsftpd文件中最后一行注释掉就好了,也是奇了怪了,至今不懂原理,知道的同学还烦告知在下。。。
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论