在Linux系统中,如果你需要在多台机器上批量创建用户并设置密码,可以使用SSH无密码登录结合脚本的方式来实现。以下是基本步骤:
提示:服务器需要提前安装好工具
yum install -y sshpass
yum install -y shadow-utils
1、生成SSH密钥:
在本地机器上生成SSH密钥对,如果已有则跳过此步骤。
ssh-keygen
2、准备好ip列表
192.168.1.100
192.168.1.101
192.168.1.102
192.168.1.103
192.168.1.104
192.168.1.105
3、复制SSH公钥到远程机器:
编写一个脚本,使用ssh-copy-id命令将公钥复制到远程机器上,以便实现无密码登录。
#!/bin/bash
USER=root
PASS=xxxxx
for IP_host in `cat ip.txt`
do
ping -c 1 -w 1 ${IP_host} &>/dev/null
if [ $? -eq 0 ];then
(sshpass -p ${PASS} ssh-copy-id -o StrictHostKeyChecking=no ${IP_host})
fi
done
4、编写脚本:
编写一个脚本,比如create_users.sh,用于在远程机器上创建用户并设置密码。脚本内容可能如下:
#!/bin/bash
users=xxxx
ip=$(cat /data/script/ip.txt)
# 循环创建用户并设置密码
for user in $users
do
ssh $ip "sudo useradd -m $user && echo '$user:Password' | sudo chpasswd"
if [ $? -eq 0 ]
then
echo "$ip done"
else
echo "$ip false"
fi
done