Linux用户与权限管理教程


搬瓦工VPS默认提供 root 账户,但长期使用 root 操作存在安全隐患。正确的做法是创建普通用户进行日常操作,需要管理员权限时通过 sudo 提权。本文详细介绍用户创建、用户组管理、文件权限设置和 sudo 配置。

一、用户管理

创建用户:

# 创建用户并自动创建家目录
useradd -m -s /bin/bash username

# 设置密码
passwd username

-m 表示创建家目录(/home/username),-s 指定登录Shell。

用户管理常用命令:

命令说明示例
useradd创建用户useradd -m -s /bin/bash john
userdel删除用户userdel -r john (-r同时删除家目录)
usermod修改用户属性usermod -aG sudo john 添加到sudo组
passwd设置/修改密码passwd john
id查看用户ID信息id john
whoami查看当前用户whoami
su切换用户su - john (-表示加载用户环境)
w查看当前登录用户w
last查看登录历史last -10 最近10条记录

修改用户属性:

# 修改用户名
usermod -l newname oldname

# 修改家目录
usermod -d /home/newdir -m username

# 修改默认Shell
usermod -s /bin/zsh username

# 锁定用户(禁止登录)
usermod -L username

# 解锁用户
usermod -U username

二、用户组管理

Linux通过用户组来批量管理权限。一个用户可以属于多个组。

命令说明示例
groupadd创建用户组groupadd webadmin
groupdel删除用户组groupdel webadmin
groups查看用户所属组groups john
usermod -aG将用户添加到组usermod -aG webadmin john
gpasswd -d从组中移除用户gpasswd -d john webadmin
getent group查看组成员getent group webadmin

注意 usermod -aG 中的 -a 表示追加(append),不加 -a 会覆盖用户的所有附加组。

三、文件权限(chmod)

Linux文件权限分为三组:所有者(owner)、所属组(group)、其他用户(others),每组有读(r=4)、写(w=2)、执行(x=1)三种权限。

查看权限:

ls -la /var/www/
# 输出示例:
# drwxr-xr-x 2 www www 4096 Jan 1 00:00 html
# -rw-r--r-- 1 www www  612 Jan 1 00:00 index.html

权限字符串 rwxr-xr-x 含义:所有者可读写执行,组用户可读和执行,其他用户可读和执行。

数字权限对照:

数字权限说明
7rwx读 + 写 + 执行
6rw-读 + 写
5r-x读 + 执行
4r--只读
0---无权限

常用权限设置:

命令说明
chmod 755 file所有者全权限,组和其他可读执行(适用于目录和脚本)
chmod 644 file所有者可读写,其他只读(适用于普通文件)
chmod 600 file仅所有者可读写(适用于密钥等敏感文件)
chmod +x script.sh给所有用户添加执行权限
chmod -R 755 /var/www递归设置目录及其内容

符号模式:

# u=所有者, g=组, o=其他, a=全部
chmod u+x file       # 给所有者添加执行权限
chmod g-w file       # 去掉组的写权限
chmod o=r file       # 其他用户只有读权限
chmod a+r file       # 所有人添加读权限

四、文件所有者(chown)

chown 用于修改文件的所有者和所属组。

命令说明
chown user file修改所有者
chown user:group file同时修改所有者和组
chown :group file仅修改所属组
chown -R user:group dir/递归修改目录

网站目录权限设置示例:

# 将网站目录所有者设为www用户
chown -R www:www /var/www/html

# 目录权限755,文件权限644
find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;

五、Sudo 配置

sudo 允许普通用户以 root 身份执行特定命令,比直接使用 root 登录更安全。

方法一:将用户添加到 sudo/wheel 组

# Ubuntu/Debian(sudo 组)
usermod -aG sudo username

# CentOS(wheel 组)
usermod -aG wheel username

方法二:编辑 sudoers 文件(精细控制)

# 使用 visudo 编辑(会自动检查语法)
visudo

在文件中添加规则:

# 允许用户执行所有命令(需要输入密码)
john ALL=(ALL:ALL) ALL

# 允许用户免密码执行所有命令
john ALL=(ALL) NOPASSWD:ALL

# 允许用户只执行特定命令
john ALL=(ALL) /usr/bin/systemctl restart nginx, /usr/bin/systemctl restart mysql

注意:务必使用 visudo 编辑 sudoers 文件,直接用 vim 编辑如果语法错误可能导致 sudo 不可用。

六、安全建议

Tip: 购买搬瓦工VPS时使用优惠码 NODESEEK2026 可享 6.77% 折扣,详见优惠码使用教程。更多教程请查看新手教程
关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工 BandwagonHost 的优惠信息、使用教程和方案对比,方便中文用户选购和使用。

新手必读
搬瓦工优惠码

当前最大折扣优惠码:

NODESEEK2026(优惠 6.77%)

在购买方案时填入优惠码即可自动抵扣。详见 优惠码使用教程