SSH远程连接及报错解决

hostA免密登录hostB

hostA

ssh-keygen -t rsa

一直回车,再远程拷贝至hostB

scp /root/.ssh/id_rsa.pub root:192.168.IP.IP:/root/.ssh/authorized_keys

这个时候可能会报错:

scp /root/.ssh/authorized_keys: No such file or directory

在hostB上也执行密钥生成,主要是生成.ssh/的目录,服务端才能够将公钥拷贝过去

hostB

一般要更改权限,只允许属主读写

chmod 600 /root/.ssh/authorized_keys
vim /etx/ssh/sshd_config
PubkeyAuthentication yes ##一般去除#号
AuthorizedKeysFile      .ssh/authorized_keys 

在hostA上ssh hostB通了就成功

如果报错

RSA host key for XXX has changed and you have requested strict checking.
Host key verification failed.

这是Linux重装或openssh-server重装引起的,ssh会把你每个你访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告,避免受到DNS Hijack之类的攻击

解决1

ssh-keygen -R IP  ##IP为要连接的服务器IP

解决2

vim /root/.ssh/known_hosts

删除掉要连接服务器IP那行

你可能感兴趣的:(ssh,服务器,运维)