centos

centos虚拟机多用户环境设置

小樊
56
2025-09-17 16:49:55
栏目: 云计算

CentOS虚拟机多用户环境设置指南

一、基础用户与组管理

1. 创建用户与组

使用useradd命令创建用户时,建议添加-m参数自动生成家目录(如/home/username),并可通过-s指定默认shell(如/bin/bash)。例如创建dev1dev2两个开发用户:

sudo useradd -m -s /bin/bash dev1
sudo useradd -m -s /bin/bash dev2

创建用户组可使用groupadd命令,如为项目创建project_dev组:

sudo groupadd project_dev

2. 分配用户到组

将用户添加到组可实现权限共享,使用usermod -aG命令(-a表示追加,避免移除原有组):

sudo usermod -aG project_dev dev1
sudo usermod -aG project_dev dev2

创建用户时直接指定组(主组):

sudo useradd -m -G project_dev dev3

3. 设置用户密码

使用passwd命令为用户设置强密码(包含大小写字母、数字、特殊字符,长度≥10位):

sudo passwd dev1

系统会提示输入并确认密码,密码需符合复杂度要求以避免安全风险。

二、权限精细化配置

1. 文件/目录权限管理

通过chmod设置文件/目录权限(r=4、w=2、x=1),例如:

通过chown更改属主/属组,例如将文件属主改为dev1,属组改为project_dev

sudo chown dev1:project_dev /path/to/file

2. 特殊权限(可选)

三、sudo权限管理(最小权限原则)

1. 将用户添加到wheel

wheel组是CentOS中默认的sudo权限组,将用户添加到该组即可使用sudo执行管理员命令:

sudo usermod -aG wheel dev1
sudo usermod -aG wheel dev2

2. 使用visudo编辑/etc/sudoers

visudo会检查语法避免配置错误,推荐使用。例如:

3. 最小权限示例

禁止用户修改root密码(避免权限滥用):

dev1 ALL=(ALL) ALL, !/usr/bin/passwd root

允许安全管理员组(secadmin)管理防火墙:

%secadmin ALL=(ALL) /usr/bin/firewall-cmd, /usr/sbin/iptables

四、登录安全强化

1. 禁止root远程登录

编辑SSH配置文件/etc/ssh/sshd_config,设置:

PermitRootLogin no

重启SSH服务使配置生效:

sudo systemctl restart sshd

2. 设置用户会话超时

/etc/profile或用户家目录的.bash_profile中添加:

export TMOUT=180  # 180秒无操作自动注销

使配置生效:

source /etc/profile

3. 强制密码策略

编辑/etc/login.defs,设置密码有效期(如90天)、最小长度(如10位):

PASS_MAX_DAYS 90
PASS_MIN_LEN 10

修改现有用户密码策略:

sudo chage -M 90 dev1
sudo chage -m 10 dev1

五、常用操作命令

0
看了该问题的人还看了