创建Linux系统用户并发送邮件脚本
脚本描述:需要创建用户后将key发给该用户的邮箱
废话不多说直接上脚本了
#!/bin/bash
#创建用户
read -p "Enter your name:" USER_NAME
USER_COUNT=`cat /etc/passwd | grep "$USER_NAME" -c`
if [ $USER_COUNT -ne 1 ]
then
useradd $USER_NAME
echo "Successful user creation: $USER_NAME"
su - $USER_NAME -c 'ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ""'
cd /home/$USER_NAME/.ssh/
cp id_rsa.pub authorized_keys
chown -R $USER_NAME:$USER_NAME authorized_keys
tar -czvf key.tar.gz /home/$USER_NAME/.ssh/id_rsa* >>/dev/null 2>&1
echo "你想发送的邮件内容" | mail -s "个人秘钥" -a key.tar.gz $USER_NAME@163.com >>/dev/null 2>&1
echo "成功发送邮件给$USER_NAME"
else
echo 'user exits'
fi
遇到的问题:
脚本中需要新建用户后生成一个key并当附件发送给该用户的邮箱 //解决办法:su - 用户名 -c “你想用root用户操作的命令”