有时候在两台Linux服务器之间需要免密码登录,比如时候脚本定时复制文件等。
假设有服务器A和B,A需要免密码登录B。
(1)ssh-keygen
生成的过程中不要输入密码,直接回车,会在目录~/.ssh下生成两个文件id_rsa、id_rsa.pub
(2)scp id_rsa.pub username@ip:~/.ssh
把A服务器上的id_rsa.pub复制到B服务器上的~/.ssh/目录下
(3)touch authorized_keys
chmod 600 authorized_keys
若B服务器~/.ssh目录下没有authorized_keys,需要先创建,并设置权限为600(必须设置为600,否则在登录时会提示权限过大)。
且.ssh目录的权限必须为700:chmod 700 .ssh
(4)cat id_rsa.pub >> authorized_keys
把从A服务器上复制过来的公钥,追加到authorized_keys。
(5)尝试从A服务器免密码登录B服务器。