Linux服务器权限与安全核心笔记

一、Linux文件/文件夹权限基础

1.1 权限核心构成

Linux权限由「三类角色 」和「三种权限 」组合而成,权限标识以字符串形式呈现(如drwxr-xr-x)。

  • 三类角色:所有者(u,文件创建者)、所属组(g,创建者所在用户组)、其他用户(o,非所有者且非所属组用户);

  • 三种权限:读(r=4)、写(w=2)、执行(x=1),权限可叠加(如rwx=4+2+1=7);

  • 权限标识解析:共10位字符,第1位标识类型(d=文件夹,-=文件),第2-4位为所有者权限,第5-7位为所属组权限,第8-10位为其他用户权限。

1.2 常用权限场景对照表

使用场景 权限数值 权限字符(文件/文件夹) 核心说明
公共可访问文件夹 755 drwxr-xr-x 所有者读写执行,其他用户仅能访问
仅自己可用文件夹 700 drwx------ 仅所有者可操作,其他人无权限
公共可读文件 644 -rw-r--r-- 所有者读写,其他用户仅能查看
敏感文件(如配置) 600 -rw------- 仅所有者可读写,防止篡改
可执行脚本文件 755 -rwxr-xr-x 所有者可修改执行,其他用户可执行查看

1.3 权限设置方法

1.3.1 图形化方式(FileZilla)

  1. 选中目标文件/文件夹,右键选择「文件权限」或「属性→权限」;

  2. 勾选对应角色的「读/写/执行」权限,或直接输入权限数值(如755);

  3. 确认后生效。

1.3.2 命令行方式(chmod)

核心命令:chmod 权限数值 目标路径,可加-R参数递归设置子文件/文件夹权限。

bash 复制代码
# 示例1:设置文件夹为公共可访问
chmod 755 /home/public_dir
# 示例2:递归设置敏感文件仅自己可用
chmod -R 600 /home/user/config
# 示例3:设置脚本可执行
chmod 755 /home/user/script.sh

二、Linux用户管理与权限分配

2.1 新增用户完整流程

  1. 创建用户 :默认生成同名用户组,命令:useradd 用户名(如useradd testuser);

  2. 设置密码 :必须执行,否则无法登录,命令:passwd 用户名(如passwd testuser),按提示输入密码;

  3. (可选)添加附加组 :加入sudo组获取管理员权限,命令:usermod -aG 组名 用户名(如usermod -aG sudo testuser)。

2.2 用户权限分配方法

2.2.1 修改文件所有者/所属组(chown)

核心命令:chown 所有者:所属组 目标路径,-R参数递归生效。

bash 复制代码
# 示例:将/data文件夹及子内容的所有者和组设为testuser
chown -R testuser:testuser /data

2.2.2 直接开放文件权限(chmod)

针对非所有者用户,通过开放「所属组」或「其他用户」权限实现访问,推荐安全方式:给所属组开放权限而非所有用户。

bash 复制代码
# 示例:将/data所属组改为testuser组,开放组内读写权限
chgrp testuser /data
chmod -R 775 /data  # 所有者+组内读写执行,其他用户只读

2.2.3 验证权限

切换用户测试访问:su - 用户名(如su - testuser),再通过ls /data等命令验证。

相关推荐
喵个咪8 分钟前
GoWind 拆解:全链 ID 类型体系——int64 定版与前端字符串化契约
前端·后端·go
喵个咪13 分钟前
GoWind CMS 拆解:Flutter 设计系统内核——双态 token、四档断点与自适应壳层
前端·flutter·交互设计
xys_67819 分钟前
JavaEE通关手册:初识Java
java·开发语言
文丑颜不良啊20 分钟前
LeetCode2461~2480题目解析
java·leetcode
喵个咪36 分钟前
GoWind CMS 拆解:发布审批——多级推进、逐级角色与全程留痕
前端·后端·go
喵个咪1 小时前
GoWind Flow 拆解:一个 Go 工作流引擎与它的双模式设计器
前端·后端·go
喵个咪1 小时前
GoWind Admin 拆解:打印模板设计器——从画布到服务端 PDF 的完整打印链路
前端·后端·go
总要学点什么1 小时前
第96篇:三维数据加载-城市建筑白模样式+着色器——让色带按体量上色,最白的那档却涂不上去
前端·gis·webgl·cesium·着色器·空间分析·白模
文丑颜不良啊1 小时前
LeetCode2441~2460题目解析
java·leetcode
Hilaku2 小时前
你们公司有 35 岁以上的前端吗?
前端·javascript·程序员