目录
项目要求
项目步骤
1.编写脚本for1.sh,使用for循环创建20账户,账户名前缀由用户从键盘输入,账户初始密码由用户输入,例如:test1、test2、test3、.......、test10
1.1、创建for1.txt文件
1.2、输入编写的代码
1.3、结果展示
2.编写脚本for2.sh,使用for循环,通过ping命令测试网段的主机连通性,IP前3段由用户输入,如:输入192.168.48,则ping 192.168.48.125-192.168.48.135,将可以ping通的主机IP地址写入到 /tmp/host_up.txt文件中,不能ping通的主机IP地址写入到:/tmp/host_down.txt文件中
2.1、创建for2.txt文件
2.2、输入编写的代码
2.3、结果展示(打开相应的文件夹查看)
3.使用for循环实现批量主机root密码的修改(1)打开多台主机(2)使用ssh-keyqen命令建立密钥对(3)多台主机间通过ssh-copy-id进行免密登录(4)编写脚本for3.sh,通过for循环登录主机修改对方root账户密码
3.1、使用ssh-keyqen命令建立密钥对
3.2、通过 ssh-copy-id 将sever端的公钥上传到两个服务端,实现免密登录
3.3、编写for3.xtt文件
3.4、 输入编写的代码
3.5、结果展示
项目要求
1.编写脚本for1.sh,使用for循环创建20账户,账户名前缀由用户从键盘输入,账户初始密码由用户输入,例如:test1、test2、test3、.......、 test10
2.编写脚本for2.sh,使用for循环,通过ping命令测试网段的主机连通性,IP前3段由用户输入,如:输入192.168.48,则ping 192.168.48.125-192.168.48.135,将可以ping通的主机IP地址写入到 /tmp/host_up.txt文件中,不能ping通的主机IP地址写入到:/tmp/host_down.txt文件中
3.使用for循环实现批量主机root密码的修改
(1)打开多台主机
(2)使用ssh-keyqen命令建立密钥对
(3)多台主机间通过ssh-copy-id进行免密登录
(4)编写脚本for3.sh,通过for循环登录主机修改对方root账户密码
项目步骤
1.编写脚本for1.sh,使用for循环创建20账户,账户名前缀由用户从键盘输入,账户初始密码由用户输入,例如:test1、test2、test3、.......、test10
1.1、创建for1.txt文件
vim for1.sh #创建for1.txt文件
1.2、输入编写的代码
#!/bin/bash
read -p "请输入账户名前缀:" username
read -p "请输入账户初始密码:" passwordfor((i=1;i<=20;i++)) #for循环
do
if id $username$i &> /dev/null
then
echo -e "\e[1;32m 用户$username$i已存在 \e[0m" #用户已存在将字体显示为绿色
else
echo "正在创建账户,请稍等"
useradd $username$i #批量创建用户
echo "$password" | passwd --stdin $username$i &> /dev/null #批量创建密码
echo -e "\e[1;32m 用户$username$i创建成功 \e[0m" ##用户创建成功将字体显示为绿色
fi
done
1.3、结果展示
2.编写脚本for2.sh,使用for循环,通过ping命令测试网段的主机连通性,IP前3段由用户输入,如:输入192.168.48,则ping 192.168.48.125-192.168.48.135,将可以ping通的主机IP地址写入到 /tmp/host_up.txt文件中,不能ping通的主机IP地址写入到:/tmp/host_down.txt文件中
2.1、创建for2.txt文件
vim for2.txt #创建for2.txt文件
2.2、输入编写的代码
#!/bin/bash
read -p "请输入测试网段IP前三段:" ip
for((i=125;i<=135;i++)) #for循环
do
IP="$ip.$i"
if ping -c 2 -w 3 $IP &> /dev/null #ping通数据只显示两行,但是全部丢进黑洞中
then
echo -e "\e[1;32m $IP成功ping通 \e[0m" >> /tmp/host_up.txt #ping通就会被丢进/tmp/host_up.txt文件中,并显示绿色
else
echo -e "\e[1;31m $IP无法ping通 \e[0m" >> /tmp/host_down.txt #无法ping通就会被丢进/tmp/host_down.txt文件中,并显示红色
fi
done
2.3、结果展示(打开相应的文件夹查看)
3.使用for循环实现批量主机root密码的修改
(1)打开多台主机
(2)使用ssh-keyqen命令建立密钥对
(3)多台主机间通过ssh-copy-id进行免密登录
(4)编写脚本for3.sh,通过for循环登录主机修改对方root账户密码
3.1、使用ssh-keyqen命令建立密钥对
ssh-keygen -t rsa #使用ssh-keyqen命令建立密钥对
3.2、通过 ssh-copy-id 将sever端的公钥上传到两个服务端,实现免密登录
ssh-copy-id root@192.168.159.131
ssh-copy-id root@192.168.159.132
3.3、编写for3.xtt文件
vim for3.txt
3.4、 输入编写的代码
#!/bin/bash
read -p "请输入要修改的主机起始地址:" user1
read -p "请输入要修改的主机结尾地址:" user2
read -p "请输入新密码:" passwdfor ((i=$user1;i<=$user2;i++)) #for循环
do
ssh root@192.168.159.$i "echo "$passwd" | passwd --stdin root &> /dev/null"
if [ $? -eq 0 ]
then
echo -e "\e[1;32m 新密码修改成功 \e[0m"
else
echo -e "\e[1;31m 新密码修改失败 \e[0m"
fi
done