标签:模式 根据 send res middle dropbear selinux mat 身份认证
SSH是最常用的远程安全登陆协议,具体的软件实现有:
SSH协议版本:
SSH常用的两种用户登认证
Host PATTERN StrictHostKeyChecking no 首次登录不显示检查提示
格式:ssh [user@]host [COMMAND]
ssh [-l user] host [COMMAND]
-p port:远程服务器监听的端口
-b:指定连接的源IP
-v:调试模式
-C:压缩方式
-X: 支持x11转发
-Y:支持信任x11转发
ForwardX11Trusted yes
-t: 强制伪tty分配
ssh -t remoteserver1 ssh remoteserver2
注意: 基于key验证,私钥的保存特别关键,可以用ssh-keygen -p加口令验证,此时ssh对方主机时输入的口令是私钥的口令,而不是对方服务器口令
每台服务器上执行ssh-keygen
ssh-copy-id 本机IP
别的服务器执行同样的command
scp authorized_keys 到所有服务器
scp -pr .ssh到所有主机上,共享一个密钥。
#!:/bin/bash
hostname
编写ip.txt,把key通过验证的服务器IP加入
for ip in $(cat ip.txt); do scp f1.sh $ip:/root/ ;done(批量copy脚本f1.sh到多台服务器)
for ip in $(cat ip.txt); do ssh $ip "/root/f1.sh" ;done(可以远程批量执行脚本)
实用场景:100台机器实现key验证:
#!/bin/bash
rpm -q expect &> /dev/null || yum install expect -y
ssh-keygen -P "" -f "/root/.ssh/id_rsa"
password=verimatrix
while read ipaddr;do
expect <<EOF
set timeout 10
spawn ssh-copy-id $ipaddr
expect {
"yes/no" { send "yes\n";exp_continue }
"password" { send "$password\n" }
}
expect eof
EOF
done < ip.txt
pscp.pssh -h ip.txt /root/f1.sh /data/ (把)额发生过f1.sh推送到远程主机上/data是远程主机的文件夹
pssh -h ip.txt -i ”/data/f1.sh“在所有服务上执行f1.sh脚本
pslurp -h ip.txt -L /app/test/script/psshtest /var/log/messages m 把ip.txt中指定的服务器的/var/log/messages复制到本机/app/test/script/psshtest目录下,执行之后会在此目录下生以ip.txt中指定的ip为名称的文件夹,同时以m的文件名字保存。
标签:模式 根据 send res middle dropbear selinux mat 身份认证
原文地址:https://www.cnblogs.com/liangjindong/p/9069390.html