提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
新配置三台服务器,安装open欧拉操作系统22.03,初始化配置用户及磁盘记录一下。
一、用户配置
1.基本命令
在 openEuler 系统中配置用户,可以通过以下方法进行管理:
1) 添加新用户
sudo useradd <用户名> # 创建用户(默认不创建家目录)
sudo useradd -m <用户名> # 创建用户并建立家目录
sudo useradd -m -s /bin/bash <用户名> # 指定Shell为bash
设置密码
sudo passwd <用户名> # 设置/修改用户密码
2) 修改用户信息
sudo usermod -s /bin/bash <用户名> # 修改用户的默认Shell
sudo usermod -d /new/home/dir <用户名> # 修改用户家目录
sudo usermod -aG wheel,users <用户名> # 将用户加入wheel和users组
3) 删除用户
sudo userdel <用户名> # 仅删除用户(保留家目录)
sudo userdel -r <用户名> # 删除用户并删除家目录
4) 用户组管理
sudo groupadd <组名> # 创建新组
sudo usermod -aG <组名> <用户名> # 将用户加入组
sudo gpasswd -d <用户名> <组名> # 从组中移除用户
5) 查看用户信息
id <用户名> # 查看用户UID、GID及所属组
groups <用户名> # 查看用户所属组
cat /etc/passwd | grep <用户名> # 查看用户详细信息
6) 配置sudo权限
sudo visudo # 编辑sudoers文件
在文件中添加:
<用户名> ALL=(ALL) ALL # 赋予用户sudo权限
或:
%wheel ALL=(ALL) ALL # 允许wheel组用户使用sudo
# 单个用户免密(例如用户名为 testuser)
testuser ALL=(ALL) NOPASSWD:ALL
# 用户组免密(例如组名为 nopasswdgroup)
%nopasswdgroup ALL=(ALL) NOPASSWD:ALL
7) 锁定/解锁用户
sudo passwd -l <用户名> # 锁定用户(禁止登录)
sudo passwd -u <用户名> # 解锁用户
8)修改用户UID/GID
sudo usermod -u <新UID> <用户名> # 修改用户UID
sudo groupmod -g <新GID> <组名> # 修改组GID
9)禁止 root 用户远程登录(通过 SSH 或其他方式:
方法 1:禁止 root 用户 SSH 登录(推荐)
修改 SSH 配置文件 /etc/ssh/sshd_config:
sudo vim /etc/ssh/sshd_config
找到并修改以下参数:
PermitRootLogin no # 禁止 root 远程登录
保存后重启 SSH 服务:
sudo systemctl restart sshd
验证是否生效:
ssh root@服务器IP # 应该提示 "Permission denied"
方法 2:禁止 root 用户远程登录(所有方式)
如果希望彻底禁止 root 用户远程登录(包括 SSH、Telnet、FTP 等),可以修改 /etc/securetty 文件:
sudo vim /etc/securetty
清空文件或仅保留本地终端(如 tty1):
tty1
或直接禁用 root 登录:
sudo usermod -s /sbin/nologin root # 设置 root 的 shell 为 nologin
方法 3:使用 PAM 限制 root 登录
编辑 PAM 配置文件 /etc/pam.d/login:
sudo vim /etc/pam.d/login
添加以下行:
auth required pam_securetty.so
这样 root 用户只能通过本地终端登录(如 tty1),不能远程登录。
方法 4:使用防火墙限制 root 登录
如果仅允许特定用户远程登录,可以配置防火墙(如 iptables 或 ufw):
# 示例:仅允许用户 "admin" 通过 SSH 登录
sudo ufw allow from 允许的IP to any port 22 proto tcp
sudo ufw deny root # 拒绝 root 登录(如果支持)
验证是否生效
尝试远程 SSH 登录 root:
ssh root@服务器IP # 应该失败
检查日志:
sudo tail -f /var/log/auth.log # 查看登录失败记录
注意事项
确保有普通用户拥有 sudo 权限,否则可能无法管理服务器:
sudo usermod -aG sudo 用户名 # 给普通用户 sudo 权限
不要直接禁用 root 账户(passwd -l root),否则可能导致系统维护问题。
建议使用 SSH 密钥认证,比密码更安全:
ssh-copy-id 用户名@服务器IP # 配置公钥登录
推荐 方法 1(SSH 配置) + 方法 3(PAM 限制) 组合使用,确保 root 无法远程登录,同时不影响本地维护。
2.实际操作
[root@dsjrk237 ~]# useradd dsjyy
[root@dsjrk237 ~]# passwd dsjyy
visudo
# 用户免密
dsjyy ALL=(ALL) NOPASSWD:ALL
vi /etc/ssh/sshd_config
配置:
PermitRootLogin no # 禁止 root 远程登录