使用一种被称为”公私钥”认证的方式来进行ssh登录. “公私钥”认证方式简单的解释:首先在客户端上创建一对公私钥 (公钥文件:~/.ssh/id_rsa.pub; 私钥文件:~/.ssh/id_rsa) 然后把公钥放到服务器上(~/.ssh/authorized_keys), 自己保留好私钥.在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了
#1生成
先要在远程生成一个 rsa 的公共key
ssh-keygen -t rsa
这里会提示输入密码,(这个密码与与远程ssh登入密码无关)
#2 将公钥文件复制到authorized_keys
cat ~/.ssh/id_rsa.pub » ~/.ssh/authorized_keys
#3 下载私钥 把私钥下载到本地,并把私钥转换成ppk 用winscp 把 .ssh/id_rsa copy到本地 使用puttygen 加载 id_rsa, 并导出 putty private key
#3 Ennable public key login
需要检查sshd服务的Pubkey认证功能是否默认打开 /etc/ssh/sshd_config
PubkeyAuthentication yes
#4 Disable password login
PasswordAuthentication no
如果修改后记的要重起你的ssh服务,用ssh –v来显示详细的登陆过程.
#5 Restart SSH sudo service ssh restart
#6 修改ssh登录端口 vi /etc/ssh/sshd_config
#Port 22
#修改为:
Port 60022 #这里修改为你想要设置的端口,以60022为例
#7 修改防火墙配置 vi /etc/sysconfig/iptabels
-A INPUT -m state --state NEW -m tcp -p tcp --dport 60022 -j ACCEPT
sduo service iptables restart
#8 Permissions are too open chmod 600 dev_node_key