1. 创建用户案例 ,2. 限制/允许 用户登录,3. 普通用户可以加 sudo 为超级权限
#新增普通用户 并登录ssh #
#groupadd eisc # 新建test工作组
useradd -m -d /home/eisc -s /bin/bash eisc; passwd eisc
useradd -g root eisc -d /home/eisc # 创建用户eisc是root群组,登录目录是 /eisc
echo "aaaassss" | passwd --stdin eisc # --stdin 指定用户更改密码:echo打印密码用管道将密码配置用户密码
# usermod -G groupname username # 给已有的用户增加工作组
NR=`cat -n /etc/sudoers | grep root | grep ALL | awk -F" " '{print $1}'`
# 定义一个变量NR,命令查看 root 的行号
sed -i "$NR a\eisc ALL=(ALL) ALL" /etc/sudoers
# 授权规则是分配权限的执行规则
######### 2. 禁用root 用户登录 ###########
NR=`cat -n /etc/ssh/sshd_config | grep "PermitRootLogin" | grep yes | awk -F" " '{print $1}' | sed "s/ //g"`
# Permit [pərˈmɪt] 允许 ; login [ˈlɔɡˌɪn] 登录;
# 获取root允许登录规则的行号
sed -i "/PermitRootLogin/d" /etc/ssh/sshd_config
sed -i "$NR a\PermitRootLogin no" /etc/ssh/sshd_config
# 在变量NR 行 (root 规则的下一行)加入禁止登录规则
######### 3. 添加和允许用户登录 ###########
NR=`cat -n /etc/ssh/sshd_config | grep "ListenAddress" | awk -F" " 'NR==1{print $1}' `
# 获取ssh 允许用户登录的位置
sed -i "/AllowUsers/d" /etc/ssh/sshd_config # 先删除这个规则,再添加
echo "AllowUsers admin eisc" >> /etc/ssh/sshd_config
# Allow [əˈlaʊ] 允许用户登录 : admin eisc 两个用户,多个用户用空格隔开
/usr/sbin/sshd -T # sshd 保存配置
/bin/systemctl restart sshd.service # 重启 sshd 服务
yum install -y net-tools # 端口查看工具
netstat -ntlp # 查看运行的端口
exit
lastlog # 查看登录情况
sshd -t # sshd 检查
useradd eisc
passwd eisc
# 创建普通用户和设置密码
vi /etc/sudoers
# 再末尾 添加用户 eisc 的超级权限sudo 案例:
eisc ALL=(ALL) ALL
超级权限再使用时候,需要再命令前面加上 sudo
超级权限使用方案修改文件案例fstab :sudo vi /etc/fstab
#-------- 其他 --------#
vi /etc/sudoers
# User privilege specification
root ALL=(ALL) ALL # root 表示用户
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL # admin 用户组(%+名表示给用户组设置权限)
# 第一个ALL:多个系统之间部署 sudo 环境时,ALL所有主机。也可以指定主机名
# 第二个ALL(即括号内的):表示user用户能够以任何用户的身份执行命令
# 第三个ALL:能够执行系统中的所有命令。
###########################################################
useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>]
-c<备注> 加上备注文字。备注文字会保存在passwd的备注栏位中。
-d<登入目录> 指定用户登入时的起始目录。
-D 变更预设值.
-e<有效期限> 指定帐号的有效期限。
-f<缓冲天数> 指定在密码过期后多少天即关闭该帐号。
-g<群组> 指定用户所属的群组。
-G<群组> 指定用户所属的附加群组。
-m 自动建立用户的登入目录。
-M 不要自动建立用户的登入目录。
-n 取消建立以用户名称为名的群组.
-r 建立系统帐号。
-s<shell> 指定用户登入后所使用的shell。
-u<uid> 指定用户ID。
useradd -g root eisc -d /eisc # 创建用户eisc是root群组,登录目录是 /eisc
id -a eisc # 查看用户的ID群租
adduser testuser # 新建testuser 用户
passwd testuser # 给testuser 用户设置密码
groupadd testgroup # 新建test工作组
useradd -g testgroup testuser # 新建testuser用户并增加到testgroup工作组
# 注::-g 所属组 -d 家目录 -s 所用的SHELL
usermod -G groupname username # 给已有的用户增加工作组
# useradd -u 0 -o -g 0 user1 # 创建一个uid=0的用户user1
# -u 0 就是建一个uid=0的帐号
# -o (注意是字母o,不是数字0)就是允许使用重复的id号
# -g 0 就是建一个gid=0的帐
# gpasswd -a sirius wheel # 给予sudo权限, 当权限不够时,可以用sudo
# lid -g wheel # 查询所有带sudo权限的用户
# userdel -r sirius # 删除用户和相应的目录
# useradd -d /appdeploy -m appdeploy # 创建普通用户: 用户名 和 用户组、密码 都是 appdeploy
# chown -R appdeploy:appdeploy /usr/local/tms
# 授权文件归属于另一个用户组的用户 (root权限下)
# echo appdeploy | passwd --stdin appdeploy # 授权普通用户登录
## 5.临时关闭
/etc/shadow # 文件中属于该用户的行的第二个字段(密码)前面加上就可以了。想恢复该用户,去掉即可
passwd testuser –l # 命令关闭用户账号
passwd testuser –u # 重新释放
userdel testuser # 删除用户
groupdel testgroup # 删除用户组
usermod –G testgroup testuser # 强制删除该用户的主目录和主目录下的所有文件和子目录
id user # 显示用户信息
cat /etc/passwd # 查看密码
/etc/passwd # 用户列表文件
/etc/group # 用户组列表文件
cut -d : -f 1 /etc/passwd # 查看系统中有哪些用户
cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1
# 查看可以登录系统的用户
# cut -d 查看文件分隔符为冒号, -f 显示字段 第一列
查看用户操作:w命令(需要root权限)
查看某一用户:w 用户名
查看登录用户:who
查看用户登录历史记录:last
用户账号管理:https://www.linuxprobe.com/of-user-accounts.html
Powered by ddoss.cn 12.0
©2015 - 2025 ddoss
渝公网安备50011302222260号
渝ICP备2024035333号
【实验平台安全承诺书】
小绿叶技术社区,优化网络中,点击查看配置信息
主机监控系统: 安全防火墙已开启检查cc攻击-下载文件完成后等待10s 恢复访问,检查连接数低于峰值恢复访问
您的IP:10.8.103.62,2025-12-09 04:53:09,Processed in 0.01657 second(s).