SSH公钥登陆且禁止密码登陆及更改默认端口 iptables过滤设置服务端口

一、ssh生成公私钥html

ssh-keygen -t rsa -C "zhangsan@qq.com"
生成密钥的位置以下,id_rsa是私钥、id_rsa.pub是公钥:
➜  .ssh pwd
/Users/xxxxx/.ssh
➜  .ssh ls
config      id_rsa      id_rsa.pub  known_hosts

注意:id_rsa必定不能泄露,不然。。。vim

二、设置密钥登陆安全

到须要登陆的服务器工做目录,把刚刚生成的公钥内容拷贝到,远程服务器下的authorized_keys文件中服务器

[root@xxxxxx .ssh]# ls
authorized_keys  known_hosts
[root@xxxxxx .ssh]#

保存以后退出终端,使用以下语句测试是否能正常登陆(不须要输入密码)ssh

ssh root@45.110.28.89

三、禁止密码登陆post

[root@xxxxxx ssh]# pwd
/etc/ssh
[root@xxxxxx ssh]# vim sshd_config

PasswordAuthentication 改成 no 测试

四、修改默认端口(22)阿里云

[root@xxxxxx ssh]# vim sshd_config

找到#Port 22一行,默认是注释掉的,去掉注释以后填写本身的端口,最大不要超过65535url

五、从新加载配置文件后生效spa

/etc/init.d/sshd reload

六、若是更改端口不能正常链接,请检查一下两点

  • 防火墙是否拦截了请求,具体设置请参考iptables过滤设置服务端口
  • 若是使用的是云VPS,请到管理后台修改安全规则,好比阿里云以下图:

相关文章
相关标签/搜索