Linux基础(二):用户管理、文件权限与系统日志

内容预览 ≧∀≦ゞ

  • Linux基础2:用户账号管理、文件权限与系统日志
    • 声明
    • 1. 用户管理
      • 1.1 查看用户信息
        • `/etc/passwd` 文件
      • 1.2 用户密码信息
        • `/etc/shadow` 文件
      • 1.3 查看用户组信息
        • `/etc/group` 文件
      • 1.4 禁用用户账号
    • 2. 文件权限管理
      • 2.1 查看文件权限
      • 2.2 更改文件所有者
      • 2.3 修改文件权限
      • 2.4 `chmod` 权限模式详解
    • 3. 系统日志管理
      • 3.1 查看日志目录
      • 3.2 查看认证日志
      • 3.3 查看二进制日志
      • 3.4 查看内核日志
      • 3.5 查看 `systemd` 日志
    • 总结

Linux基础2:用户账号管理、文件权限与系统日志


声明

笔记内容参考了B站UP主 泷羽sec 的学习视频,如有侵权,将立即删除。
本笔记旨在促进网络安全学习,任何不当使用均与作者无关,请勿逾越法律红线,否则后果自负。
希望这些内容能对各位师傅有所帮助,欢迎您的点赞和评论!


在 Linux 系统中,用户管理、文件权限控制和系统日志记录是日常操作中至关重要的内容。通过合理管理用户、配置文件权限、以及查看日志文件,可以大大提高系统的安全性和可维护性。本文将围绕这几个主题详细介绍相关命令和操作方法。

1. 用户管理

1.1 查看用户信息

/etc/passwd 文件

/etc/passwd 文件存储了系统中所有用户的基本信息。每一行代表一个用户,字段之间用冒号分隔,具体包括:

  • 用户名:用户的登录名
  • 密码占位符:表示密码,通常在现代 Linux 系统中不保存真实密码,而是保存占位符(如 x
  • UID:用户的唯一 ID
  • GID:用户所在组的 ID
  • 用户描述信息:通常用于描述该用户(如全名等)
  • 用户的家目录:该用户的工作目录路径
  • 默认 shell:用户登录后使用的 shell 类型
cat /etc/passwd

1.2 用户密码信息

/etc/shadow 文件

/etc/shadow 文件用于存储用户的加密密码以及密码的安全属性,只有 root 用户及拥有相应权限的用户才能访问此文件。

文件字段解析:

  • 用户名:与 /etc/passwd 中的用户名一致
  • 加密密码:保存用户的加密密码,若没有密码,则显示 *!!
  • 密码上次修改时间:以自1970年1月1日以来的天数表示
  • 最小密码修改间隔:两次密码修改的最短间隔
  • 密码最大有效期:密码过期前的最大使用时间
  • 到期警告期:密码到期前多少天开始警告
  • 宽限期:密码到期后的宽限天数
  • 账户失效时间:以时间戳表示账户失效的时间
cat /etc/shadow

1.3 查看用户组信息

/etc/group 文件

/etc/group 文件存储了系统中所有用户组的信息。每一行包括组名、组密码、GID以及组成员。

cat /etc/group

1.4 禁用用户账号

可以使用 passwdchage 命令禁用用户账号或设置账户失效日期。

  • 禁用用户:

    sudo passwd -l username
    
  • 设置用户账号过期时间:

    sudo chage -E 1990-01-01 username
    
  • 查看用户密码状态:

    sudo passwd -S username
    

2. 文件权限管理

文件权限控制是 Linux 系统安全的基石之一。通过合理配置文件权限,可以防止未经授权的访问和修改。

2.1 查看文件权限

使用 ls -la 命令查看文件或目录的详细信息,包括文件权限、所有者、所属组等。

ls -la /etc/passwd

2.2 更改文件所有者

chown 命令用于更改文件的所有者。以下示例将文件 file 的所有者更改为 root

sudo chown root file

2.3 修改文件权限

使用 chmod 命令修改文件权限。以下是一些常见的命令示例:

  • 为文件所有者添加读、写、执行权限,为组用户添加读、写权限,并移除其他用户的读权限:

    sudo chmod u=rwx,g+rw,o-r file
    
  • 使用数字方式设置权限:

    chmod 400 file
    

    400 权限表示文件所有者具有读权限,而组和其他用户没有任何权限。

  • 给文件设置最高权限:

    chmod 777 file
    

2.4 chmod 权限模式详解

  • 用户类型

    • u:文件所有者(User)
    • g:用户组(Group)
    • o:其他用户(Others)
    • a:所有用户(All)
  • 操作符

    • +:添加权限
    • -:移除权限
    • =:设置指定权限,覆盖现有权限
  • 权限类型

    • r:读权限
    • w:写权限
    • x:执行权限
    • s:SetUID / SetGID 权限
    • t:粘贴位(Sticky Bit)

3. 系统日志管理

日志记录对于系统管理和故障排除至关重要。Linux 提供了多个日志文件,帮助管理员了解系统的运行状况和事件。

3.1 查看日志目录

系统日志通常存储在 /var/log 目录下。使用以下命令查看日志文件:

ls -l /var/log

3.2 查看认证日志

查看认证相关的日志,帮助分析用户登录、认证失败等问题:

sudo tail -3 /var/log/auth.log

3.3 查看二进制日志

/var/log/wtmp 是一个二进制日志文件,记录了用户的登录和注销信息。使用 who 命令查看最近的登录/注销记录:

who /var/log/wtmp | tail -5

3.4 查看内核日志

dmesg 命令用于显示内核环形缓冲区中的信息,包括硬件检测、内核模块加载等信息。

dmesg

3.5 查看 systemd 日志

journalctl 命令用于查看和管理 systemd 日志,它记录了系统和服务的启动、运行、错误信息等。

journalctl

总结

本篇文章介绍了 Linux 系统中的用户账号管理、文件权限配置以及系统日志查看的基本方法和命令。通过了解这些基础操作,可以帮助管理员更好地管理系统、提高安全性,并在发生问题时迅速定位故障。掌握这些技能对于系统运维和安全管理至关重要。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/465697.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务中常用分布式锁原理及执行流程

1.什么是分布式锁 分布式锁是一种在分布式系统环境下实现的锁机制,它主要用于解决,多个分布式节点之间对共享资源的互斥访问问题,确保在分布式系统中,即使存在有多个不同节点上的进程或线程,同一时刻也只有一个节点可…

A15基于Spring Boot的宠物爱心组织管理系统的设计与实现

🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 赠送计算机毕业设计600…

测试自动化如何和业务流程结合?

测试自动化框架固然重要,但是最终自动化的目的都是为了业务服务的。 那测试自动化如何对业务流程产生积极影响? 业务流程的重要性 测试自动化项目并非孤立存在,其生命周期与被测试的应用程序紧密相关。项目的价值在于被整个开发团队所使用&a…

AI - 使用LangChain请求LLM结构化生成内容

AI - 使用LangChain请求LLM结构化生成内容 基于深度学习的大型语言模型(LLM)不仅可以生成文本,还可以帮助我们完成许多复杂任务,如自动化客服、内容创作和数据分析。然而,如何从这些模型中结构化地获取输出&#xff0c…

使用GPT-SoVITS训练语音模型

1.项目演示 阅读单句话 1725352713141 读古诗 1725353700203 2.项目环境 开发环境:linux 机器配置如下:实际使用率百分之二十几, 3.开发步骤 1.首先是准备数据集,要求是wav格式,一到两个小时即可, 2.…

UML的另一个主角——用例图

顺序图和类图已经出过单集,本贴要分享的是用例图。 类图https://blog.csdn.net/jsl123x/article/details/143526286?spm1001.2014.3001.5501顺序图https://jslhyh32.blog.csdn.net/article/details/134350587 目录 一.系统 二.参与者 1.主要参与者 2.次要参与…

set和map的使用

目录 1.关联式容器 2.键值对 3.set 3.1set的模版参数列表 3.2对set的修改 3.2.1insert 3.2.2 erase 3.2.3clear 3.2.4swap 3.2.5 find 3.3set的迭代器 3.4set的容量 4.map 4.1对map的修改 4.1.1insert 4.1.2erase 4.1.3swap 4.1.4clear 4.2map的迭代器 4.3opera…

【5.10】指针算法-快慢指针将有序链表转二叉搜索树

一、题目 给定一个单链表,其中的 元素按升序排序 ,将其转换为 高度平衡的二叉搜索树 。 本题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1。 示例: 给定的有序链表: [ -10 , -3 , 0 , …

dns服务器配置

主服务器 1.挂载点 mount /dev/sr0 /mnt 2.防火墙关闭 systemctl stop firewalld setenforce 0 3.下载bind软件 dnf install bind -y 4.进行正向解析配置 vim /etc/named.conf options { listen-on port 53 { 192.168.92.128; }; directo…

stable diffusion图生图

本节内容,给大家带来的是stable diffusion的图生图课程,我们在midjourney的课程中有学习过midjourney的图生图功能,即使用垫图的方式来引导AI绘制图片。图生图是AI绘图程序一个非常重要的功能,stable diffusion同样提供了类似的功…

论文阅读笔记:DRCT: Saving Image Super-Resolution away from Information Bottleneck

论文阅读笔记:DRCT: Saving Image Super-Resolution away from Information Bottleneck 1 背景1.1 问题1.2 本文提出的方法 2 创新点3 方法4 模块4.1 问题描述4.2 深度特征提取模块4.3 同任务渐进式训练策略 5 效果5.1 和SOTA方法对比 论文:https://arxi…

一周内从0到1开发一款 AR眼镜 相机应用?

目录 1. 📂 前言 2. 💠 任务拆分 2.1 产品需求拆分 2.2 开发工作拆分 3. 🔱 开发实现 3.1 代码目录截图 3.2 app 模块 3.3 middleware 模块 3.4 portal 模块 4. ⚛️ 拍照与录像 4.1 前滑后滑统一处理 4.2 初始化 View 以及 Came…

【论文精读】LPT: Long-tailed prompt tuning for image classification

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀论文精读_十二月的猫的博客-CSDN博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 1. 摘要 2. …

《重学Java设计模式》之 建造者模式

建造者模式所完成的内容就是通过将多个简单对象通过一步步的组装构建出一个复杂对象的过程 模拟装修公司对于设计出一些套餐装修服务的场景。 很多装修公司都会给出自家的套餐服务,一般有;豪华、轻奢、简约等,这些套餐的后面是不同的商品的…

Android Framework AMS(12)广播组件分析-3(广播发送流程解读)

该系列文章总纲链接:专题总纲目录 Android Framework 总纲 本章关键点总结 & 说明: 说明:本章节主要解读广播组件的广播发送过程。关注思维导图中左上侧部分即可。 有了前面广播组件 注册和注销程分析的基础,基于此&#xff…

MongoDB笔记02-MongoDB基本常用命令

文章目录 一、前言二、数据库操作2.1 选择和创建数据库2.2 数据库的删除 3 集合操作3.1 集合的显式创建3.2 集合的隐式创建3.3 集合的删除 四、文档基本CRUD4.1 文档的插入4.1.1 单个文档插入4.1.2 批量插入 4.2 文档的基本查询4.2.1 查询所有4.2.2 投影查询(Projec…

MySQL基础-单表查询

语法 select [distinct] 列名1,列名2 as 别名... from数据表名 where组前筛选 group by分组字段 having组后筛选 order by排序的列 [asc | desc] limit 起始索引,数据条数 测试数据 # 建测试表 create table products (id int primary key a…

【pycharm jupyter】远程开发 启动报错

报错信息 upyter server process exited with code 1 ServerApp] A _jupyter_server_extension_points function was not found in jupyter_lsp. Instead, a _jupyter_server_extension_paths function was found and will be used for now. This function name will be depre…

CPU Study - Instructions Fetch

参考来源:《超标量处理器设计》—— 姚永斌 N-Way CPU 取指问题 如果CPU可以在每个周期内同时解码N条指令,则此类CPU为N-Way超标量处理器。 N-Way超标量处理器需要每个周期从I-Cache中至少取得N条指令,这N条指令成为一组Fetch Group。 为了…

掌握 PyQt5:从零开始的桌面应用开发

PyQT5——图形化界面 文章目录 PyQT5——图形化界面集成化图形界面工具为什么使用 \$ProjectFileDir$?示例场景其他 Varaiablespyuic参数解释整体含义示例使用PyQt5和pyuic 创建pyqt5的程序创建一个窗口app.exec\_()和sys.exit(app.exec_())的区别1. app.exec_()2. sys.exit(a…