登录服务器步骤(从一台linux登录到另外一台linux)
登录服务器需要有两个步骤,一个输入yes、一个输入密码
试想如果有上千台服务器?每台都要输入yes、输入密码
ssh免输入yes,修改/etc/ssh/ssh_config
StrictHostKeyChecking no
ssh免输入密码的实现1
yum install -y epel-release
yum install -y sshpass
sshpass -p "jackin" ssh 192.168.237.131
ssh免输入密码的实现2,通过密钥
生成公钥(锁)、私钥(钥匙),公钥放被登录的服务器上,私钥需要自己保留
ssh-keygen -t rsa
手动把公钥上传到被登录的服务器上,私钥就能进行无密码登录
借助ssh-copy-id来实现公钥上传,需要输入服务器的密码
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.237.131
sshpass -p 'jackin' ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.237.131 #sshpass自动输入密码
上千台服务器批量下发公钥,配置文件/root/.host
jackin1 192.168.237.128 jackin
jackin2 192.168.237.131 jackinpwd
Shell脚本实现批量下发公钥
OLDIFS=$IFS
IFS=$'\n'
for line in $(cat /root/.host);do
myip=$(echo $line |awk '{print $2}')
mypwd=$(echo $line | awk '{print $3}')
echo "$myip $mypwd"
sshpass -p $mypwd ssh-copy-id -i /root/.ssh/id_rsa.pub $myip
done
IFS=$OLDIFS
验证是否都能无密码登录