概述
一.更换端口, 可以在一定程度上防止扫描攻击
vim /etc/ssh/sshd_config
将 port 一项从 22 更改为高位端口, 然后重启 ssh 服务
systemctl restart sshd.service
二.禁止使用root账号登录, 允许使用root账号登录服务器是一个极其危险的行为!
vim /etc/ssh/sshd_config
MaxAuthTries 3
#
限制失败次数
PermitRootLogin no
#
禁止使用
root
账号登录
重启 ssh 服务
三.关闭密码登录, 防止暴力攻击, 使用 非对称密钥对进行身份认证
vim /etc/ssh/sshd_config
RSAAuthentication yes # 开启RSA验证
PubkeyAuthentication yes # 是否使用公钥验证
AuthorizedKeysFile .ssh/authorized_keys # 保存公钥的文件的位置, 这里就是登录用户的家目录下的 .ssh目录, 可以根据自己的实际情况进行配置
PasswordAuthentication no #禁止使用密码验证登陆
四.生成公钥私钥, 将公钥上传到服务器
1、确认服务器都已都已安装了ssh服务
2、在本机上创建密钥对
ssh-keygen -
t rsa
1).注意查看提示
,
如果出现提示系统已经生成了
ssh-
key,
则不必生成
2).如果需要重新生成ssh-key,所有的提示按enter键即可,也可以根据自己的需要输入自己的选项
3).注意提示保存
ssh-key
的存放目
录
4).完成以后进入到保存ssh-key的目录, 就可以看到id_rsa和id_rsa.pub文件
3、把公钥的内容追加拷贝到服务器上登录用户的家目录下的.ssh目录下的authorized_keys 文件(具体将公钥追加拷贝到那个文件, 根据ssh的配置文件的实际配置而定)
4、systemctl restart sshd.service
#
重启
ssh
服务
再次使用ssh远程连接服务器, 发现已不需要输入密码进行验证
注意: 如果使用ssh进行远程登录时 使用了sudo 超级管理员权限, 那么私钥就是当前服务器的root用户的私钥, 所以,也就是说需要把当前服务器root用户的公钥上传到目标服务器,才可以使用 sudo 超级管理员权限, 否则仍然需要输入密码(如果开启了允许输入密码进行身份验证)
转载于:https://www.cnblogs.com/lowmanisbusy/p/11166022.html
最后
以上就是称心便当为你收集整理的Linux SSH 连接安全设置的全部内容,希望文章能够帮你解决Linux SSH 连接安全设置所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复