SSH基础应用

SSH基础应用

一、不登陆远程主机在上面创建用户
# ssh  root@远程主机  ‘useradd xxxx’
二、登陆远程主机,能打开GUI界面
# ssh  -X  root@远程主机
三、主要的配置文件更改
# vim /etc/ssh/sshd_config
UseDNS  no        阻止DNS反解析(可提高客户端登录效率)
LoginGraceTime  2m    登录限时(宽限期),若客户端超过此时间(默认2分钟)未登录成功,服务器将主动断开连接
StrictModes  yes    严格模式,此模式会在允许登入前检查用户家目录和密钥库文件的权限、归属,若有异常(其他人能写入)则拒绝登入
MaxAuthTries  6        每次连接允许认证登录的最多次数,若超过此次数仍未登录成功,服务器将主动断开连接

DenyUsers User1 User2
AllowUser User2 User2
DenyGroups GROUP1 GROUP2
AllowGroups GROUP1 GROUP2
sshd处理规则的先后顺序,是从上到下执行的,Deny和Allow规则建议不要同时使用
只用Deny规则时相当于黑名单策略(仅拒绝…,其他允许);
只用Allow规则时相当于白名单策略(仅允许…,其他拒绝).

四.实现不用密码即可连接ssh

1、生成密钥对
# ssh-keygen   ->后续全部回车
2、上传公钥到服务器root用户下
# ssh-copy-id  -i  root@服务器IP地址

3、ssh到服务器上或scp文件都不再需要填写密码

4、当客户端连接远程服务器时,会在客户端当前用户的家目录下生成.ssh/known_hosts文件,把服务器的身份信息保存下来。下一次客户端再连接时,就不再询问是否继续(yes/no)?

5、使用密钥对方式连接时,客户端生成的密钥是用户家目录下.ssh/id_rsa和.ssh/id_rsa.pub,上传时是将id_rsa.pub写入到服务器相关用户家目录下.ssh/authorized_keys文件中

五.脚本实现更改多台服务器的密码

安装expect工具
创建存放IP地址的文件/root/bin/ipaddr.txt
因为需要更改的ip地址可能是不不规律的;
脚本        
#!/bin/bash

OLDPASS=123456
NEWPASS=Taren1

for IP in $(cat /root/bin/ipaddr.txt)
do
expect<<EOF
  spwan ssh $IP "echo $NEWPASS | passwd --stdin root"
expect "(yes/no)?"{
        send "yes\r"
       expect "password:"
           send "$OLDPASS\r"
         }"password:"{send "$OLDPASS\r"} 
expect eof
EOF
done



      本文转自Jx战壕  51CTO博客,原文链接:http://blog.51cto.com/xujpxm/1403224,如需转载请自行联系原作者




上一篇:手动初始化设置3PAR存储系统


下一篇:NDK开发历程(一):android native code的调试方法