通过SSH信任关系,批量修改LINUX密码
2010-08-31 23:54
525 查看
通过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 [b]三
===============================================================================
批量修改主机密码 (继续完成中!!!!!!!!!!!!!!!)
批量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[/b]
批量修改主机密码
cat ip.txt |while read line
do
echo "###############Now change the passwd of $line##################"
a=`echo $line|awk -F'.' '{print $4}'`;
c=`echo $a|wc -c`;
if [ $c -lt 4 ]
then
if [ $c == 3 ]
then
d=Aug*0${a}$;
elif [ $c == 2 ]
then
d=Aug*00${a}$;
fi
else
d=Aug*${a}$;
fi
echo "d=$d"
echo "root:${d}" >/root/.ssh/passwd/temp;
scp /root/.ssh/passwd/temp ${line}:/root/temp;
ssh $line "chpasswd </root/temp";
ssh $line "rm -rf /root/temp";
done
作者: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 [b]三
===============================================================================
批量修改主机密码 (继续完成中!!!!!!!!!!!!!!!)
批量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[/b]
批量修改主机密码
cat ip.txt |while read line
do
echo "###############Now change the passwd of $line##################"
a=`echo $line|awk -F'.' '{print $4}'`;
c=`echo $a|wc -c`;
if [ $c -lt 4 ]
then
if [ $c == 3 ]
then
d=Aug*0${a}$;
elif [ $c == 2 ]
then
d=Aug*00${a}$;
fi
else
d=Aug*${a}$;
fi
echo "d=$d"
echo "root:${d}" >/root/.ssh/passwd/temp;
scp /root/.ssh/passwd/temp ${line}:/root/temp;
ssh $line "chpasswd </root/temp";
ssh $line "rm -rf /root/temp";
done
相关文章推荐
- 通过SSH信任关系,批量修改LINUX密码[转]
- Linux 批量建立信任关系,实现ssh无密码登陆的脚本
- Linux主机间建立信任关系,无ssh密码登陆主机的问题
- 批量实现多台服务器之间ssh无密码登录的相互信任关系
- Linux 批量建立信任关系,实现ssh无password登陆的脚本
- linux初装ssh,使用expect建立信任关系,搞定烦人的输入密码或者要求yes/no建立指纹
- java通过SSH远程修改linux用户密码
- LINUX/AIX下批量修改用户名密码
- linux下的ssh——如何建立linux下的机器信任关系
- 如何用一次性密码通过 SSH 安全登录 Linux
- 两台linux服务器之间建立ssh信任关系
- linux上修改ssh密码和mysql密码
- Linux 系统通过WEB修改svn 帐号密码
- linux下批量修改用户密码(转)
- Linux 批量修改服务器密码
- 两台linux机器 通过ssh传文件 不需要输入密码
- python批量通过mysql修改用户密码
- ssh-copy-id帮你建立信任 免密码登录Linux
- ssh 建立信任关系免密码登录(同构及异构系统)
- 在两台服务器之间建立信任关系解决scp,ssh等不用输入密码等问题