添加一个用户并为多个服务器给他相同的密码 linux
Adding one user and give him the same password for many servers linux
我是 Linux(以及 Stack overflow)的新手,所以我可能犯了一个愚蠢的错误,但我制作了一个脚本来向多个服务器添加一个具有相同密码的相同用户:
#!/bin/bash
password=`cat /root/scripts/password`
for i in `cat /root/scripts/LIST_TEST.txt`
do
printf "Serveur : $i \n"
ssh -tt -o PasswordAuthentication=no $i
adduser newuser
yes `echo $password` | passwd newuser
exit 0
done
此外,我在使用此脚本时处于根目录下,似乎已创建用户但密码未更改,因为我尝试 ssh 时无法登录 newuser@server
.
困扰我的是,当我以 root 身份手动登录服务器并执行命令 yes `echo $password` | passwd newuser
然后注销并重试 newuser@server
时,它有效...
抱歉,如果不是很清楚,感谢任何愿意提供帮助的人!
编辑:
现在的脚本看起来更清晰了一些,但它仍然没有添加正确的密码,我不知道它给出的新密码是什么...
#!/bin/bash
password=`cat /root/scripts/password`
for i in `cat /root/scripts/LIST_TEST.txt`
do
printf "Serveur : $i \n"
ssh $i 'adduser newuser; yes $password | passwd newuser'
echo $password
done
尝试创建一个脚本来更改密码并在远程计算机上执行该脚本,如下所示:
更改拳头脚本:
#!/bin/bash
password=`cat /root/scripts/password`
for i in `cat /root/scripts/LIST_TEST.txt`
do
printf "Serveur : $i \n"
#Password is passed as to the next script
cat ./paschange.sh $passwd | ssh $i #Command to excecute the script
echo $password
done
而 paschange.sh
将是:
#!/bin/bash
adduser newuser
yes | passwd newuser #Password is passed as
请注意,这是假设:
- 您将创建一个名为:
'newuser
' 的用户,在所有服务器中使用相同的名称
- 他将对所有服务器使用相同的密码
- 您正在使用相同的名称登录到所有这些服务器以访问 运行 脚本,即您在当前执行此脚本的计算机上的用户名。
我是 Linux(以及 Stack overflow)的新手,所以我可能犯了一个愚蠢的错误,但我制作了一个脚本来向多个服务器添加一个具有相同密码的相同用户:
#!/bin/bash
password=`cat /root/scripts/password`
for i in `cat /root/scripts/LIST_TEST.txt`
do
printf "Serveur : $i \n"
ssh -tt -o PasswordAuthentication=no $i
adduser newuser
yes `echo $password` | passwd newuser
exit 0
done
此外,我在使用此脚本时处于根目录下,似乎已创建用户但密码未更改,因为我尝试 ssh 时无法登录 newuser@server
.
困扰我的是,当我以 root 身份手动登录服务器并执行命令 yes `echo $password` | passwd newuser
然后注销并重试 newuser@server
时,它有效...
抱歉,如果不是很清楚,感谢任何愿意提供帮助的人!
编辑:
现在的脚本看起来更清晰了一些,但它仍然没有添加正确的密码,我不知道它给出的新密码是什么...
#!/bin/bash
password=`cat /root/scripts/password`
for i in `cat /root/scripts/LIST_TEST.txt`
do
printf "Serveur : $i \n"
ssh $i 'adduser newuser; yes $password | passwd newuser'
echo $password
done
尝试创建一个脚本来更改密码并在远程计算机上执行该脚本,如下所示:
更改拳头脚本:
#!/bin/bash
password=`cat /root/scripts/password`
for i in `cat /root/scripts/LIST_TEST.txt`
do
printf "Serveur : $i \n"
#Password is passed as to the next script
cat ./paschange.sh $passwd | ssh $i #Command to excecute the script
echo $password
done
而 paschange.sh
将是:
#!/bin/bash
adduser newuser
yes | passwd newuser #Password is passed as
请注意,这是假设:
- 您将创建一个名为:
'newuser
' 的用户,在所有服务器中使用相同的名称 - 他将对所有服务器使用相同的密码
- 您正在使用相同的名称登录到所有这些服务器以访问 运行 脚本,即您在当前执行此脚本的计算机上的用户名。