Linux 用户与权限:安全管理的核心
一、Linux 权限模型
Linux 每个文件都有三类权限:所有者、所属组、其他人。每类各有读、写、执行三个权限。
ls -l /home/ubuntu/
drwxr-xr-x 3 ubuntu ubuntu 4096 Jul 14 10:00 projects</code></pre><p><code>r</code>=4, <code>w</code>=2, <code>x</code>=1,所以 <code>rwxr-xr-x</code> 也可写成 <code>755</code>。</p><h2>二、chmod:修改文件权限</h2><pre><code>chmod u+x script.sh # 给所有者加执行权限
chmod g-w file.txt # 从组里移除写权限
chmod 755 script.sh # 数字方式:rwxr-xr-x
chmod 600 id_rsa # 仅所有者可读写
chmod 700 .ssh # SSH 配置目录必须这样三、chown:修改所有者和组
sudo chown ubuntu:www-data file.txt
sudo chown -R ubuntu:www-data /var/www/mysite四、用户和用户组管理
sudo adduser alice # 创建用户
sudo userdel -r bob # 删除用户
sudo groupadd developers # 创建用户组
sudo usermod -aG developers alice # 把用户加入组五、sudo 提权
sudo usermod -aG sudo alice
sudo visudo # 编辑 sudoers 文件六、实战:配置网站目录权限
sudo chown -R ubuntu:www-data /var/www/mysite
sudo chmod -R 750 /var/www/mysite
sudo chmod 770 /var/www/mysite/uploads
mkdir ~/.ssh && chmod 700 ~/.ssh
touch ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys
七、常见错误
Permission denied:没有权限。用 ls -la 诊断,检查文件权限和所有者。
not in the sudoers file:该用户没有 sudo 权限,用 sudo usermod -aG sudo 用户名 添加。