通过SSH信任关系,批量修改LINUX密码
作者:IORI 原创 2007-2-28 15点 于CC
一
===============================================================================
建立SSH信任
将A主机做为客户端(发起SSH请求)
将B主机作为服务器端(接收ssh请求)
以上以主动发起SSH登录请求的主机和接收请求的主机进行分类
1.
A主机生成公,私钥证书
[root@buddytj-10 .ssh]# ssh-keygen -t rsa #rsa算法的证书
Generating public/private rsa key pair. (以下一路回车)
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? y (因为我的证书已存在,覆盖即可)
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa. (私钥)
Your public key has been saved in /root/.ssh/id_rsa.pub. (公钥)
The key fingerprint is:
c1:26:cc:88:2b:05:dd:c3:6b:1e:78:5d:da:9c:da:8a
[email=root@buddytj-10]root@buddytj-10[/email]
证书就生成了。 id_rsa (私钥)|| id_rsa.pub (公钥)
2.
将A主机生成的公钥传递给B主机
[root@buddytj-10 .ssh]# scp id_rsa.pub 60.28.*.*:/root/.ssh/
3.
在B主机上将A的公钥更名为
[root@buddytj-11 .ssh]# mv id_rsa.pub authorized_keys
4.至此从A主机远程SSH B主机的工作即告完成
超EASY
===============================================================================
二
===============================================================================
修改B主机的密码SHELL
A# echo ’your_config_passwd’ > passwd.txt (建立一个密码文档,输入您要的密码)
# ssh 60.28.*.* passwd root --stdin 三
===============================================================================
批量修改主机密码 (继续完成中!!!!!!!!!!!!!!!)
批量SHELL小例,其中更有些不完善的地方!使用中请注意
#!/bin/bash
###################Though ssh remote server ,auto modify ROOT passwd###########
for IP in `cat /root/ip_list.txt` #####导入远程要修改主机的IP#################
do
##############获得远程主机的用户名###############################################
##############这个程式是通过获得远程主机名,利用这个名字为每一台设备添加自己的专用密码###
##############假如密码均一致,不用效仿#############################################
R_HOSTNAME=`ssh $IP cat /etc/sysconfig/network|awk -F = ’/HOSTNAME/ {print $2}’`
#echo $R_HOSTNAME
#################创建远程主机密码################################################
CREATE_PWD=`echo $R_HOSTNAME|awk -F - ’{print $2}’|tr ’[a-z]’ ’[A-Z]’`
echo "${CREATE_PWD}123" > passwd.tmp
###################修改远程主机密码##############################################
if [ $? = 0 ] ; then
ssh $IP passwd root --stdin
if [ $? = 0 ] ; then
echo "The $R_HOSTNAME ($IP) passwd is modify OK"
else
echo -e "The $R_HOSTNAME ($IP) passwd is modify fail\n"
echo "please you check"
fi
done
===============================================================================
创建于2007-2-28
修改于2007-3-2
作者:IORI 原创 2007-2-28 15点 于CC
一
===============================================================================
建立SSH信任
将A主机做为客户端(发起SSH请求)
将B主机作为服务器端(接收ssh请求)
以上以主动发起SSH登录请求的主机和接收请求的主机进行分类
1.
A主机生成公,私钥证书
[root@buddytj-10 .ssh]# ssh-keygen -t rsa #rsa算法的证书
Generating public/private rsa key pair. (以下一路回车)
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? y (因为我的证书已存在,覆盖即可)
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa. (私钥)
Your public key has been saved in /root/.ssh/id_rsa.pub. (公钥)
The key fingerprint is:
c1:26:cc:88:2b:05:dd:c3:6b:1e:78:5d:da:9c:da:8a
[email=root@buddytj-10]root@buddytj-10[/email]
证书就生成了。 id_rsa (私钥)|| id_rsa.pub (公钥)
2.
将A主机生成的公钥传递给B主机
[root@buddytj-10 .ssh]# scp id_rsa.pub 60.28.*.*:/root/.ssh/
3.
在B主机上将A的公钥更名为
[root@buddytj-11 .ssh]# mv id_rsa.pub authorized_keys
4.至此从A主机远程SSH B主机的工作即告完成
超EASY
===============================================================================
二
===============================================================================
修改B主机的密码SHELL
A# echo ’your_config_passwd’ > passwd.txt (建立一个密码文档,输入您要的密码)
# ssh 60.28.*.* passwd root --stdin 三
===============================================================================
批量修改主机密码 (继续完成中!!!!!!!!!!!!!!!)
批量SHELL小例,其中更有些不完善的地方!使用中请注意
#!/bin/bash
###################Though ssh remote server ,auto modify ROOT passwd###########
for IP in `cat /root/ip_list.txt` #####导入远程要修改主机的IP#################
do
##############获得远程主机的用户名###############################################
##############这个程式是通过获得远程主机名,利用这个名字为每一台设备添加自己的专用密码###
##############假如密码均一致,不用效仿#############################################
R_HOSTNAME=`ssh $IP cat /etc/sysconfig/network|awk -F = ’/HOSTNAME/ {print $2}’`
#echo $R_HOSTNAME
#################创建远程主机密码################################################
CREATE_PWD=`echo $R_HOSTNAME|awk -F - ’{print $2}’|tr ’[a-z]’ ’[A-Z]’`
echo "${CREATE_PWD}123" > passwd.tmp
###################修改远程主机密码##############################################
if [ $? = 0 ] ; then
ssh $IP passwd root --stdin
if [ $? = 0 ] ; then
echo "The $R_HOSTNAME ($IP) passwd is modify OK"
else
echo -e "The $R_HOSTNAME ($IP) passwd is modify fail\n"
echo "please you check"
fi
done
===============================================================================
创建于2007-2-28
修改于2007-3-2
转载于:https://blog.51cto.com/wolfxue/174868