Linux系统安全(用户、密码、grub引导密码、增加终端)

目录

系统安全

用户安全

密码安全

PAM认证

命令的历史

用户切换

命令的执行权限

grub引导密码

增加终端


系统安全

用户安全

命令

说明

chattr +i /etc/passwd

chattr:为文件添加特殊权限

+i:指定文件设为不可修改,只有root用户能为文件添加该权限

a:只能追加该文件

c:文件将被自动压缩以节省磁盘空间

d:该文件或目录不会被dump命令备份

s:当文件或目录被删除时,数据内容在磁盘上不会立即被清除,而是标记为删除

u:当文件或目录设置了u属性后,即使root用户也不能直接删除它,而是需要先移除这个属性

chattr -i /etc/passwd

将该文件减去不可修改的权限

chattr +a 文件

+a:append only,系统只允许在这个文件追加数据,而不允许修改、覆盖、删除这个文件。

比如使用 echo "aaa">>test.txt 命令来追加字符串

lsattr [文件]

查看指定文件的特殊权限

密码安全

路径

说明

/etc/login.defs

在该文件内修改之后创建用户时的默认参数,修改后不会影响原有的用户账号

密码策略对管理员无效

PASS_MAX_DAYS 99999 密码的最大有效天数。超过这个天数后,用户需要更改密码。

PASS_MIN_DAYS 0 密码更改后,必须等待的最小天数才能再次更改密码。

PASS_MIN_LEN 5 最小密码长度,这一页项在这个文件内是无效的

PASS_WARN_AGE 7 密码到期前的警告天数

PAM认证

Pluggable authentication module - 可插拔认证模块

路径

说明

/etc/pam.d

该目录存放的都是pam认证文件

文件的作用是用户在使用命令的时候是否有权限使用该指令

命令的历史

命令

说明

history

列出系统使用过的命令

history -c

清除历史命令

clear

清屏

export TMOUT=5

当系统超过5秒不执行命令时,退出终端,单位为秒

路径

说明

/etc/profile

profile:全局环境变量文件,用户登录时会被加载

在该文件能够修改history命令能够显示行数

在第46行HISTSIZE=修改的行数

修改后已经登录的用户不会收到影响,修改后登录的用户会被影响

.bash_logout

该文件用于存储 用户退出时所执行的命令

用户切换

命令

说明

su - 用户名

不采用当前用户环境信息,使用目标用户的环境信息切换用户

在root用户登录终端下可以使用su - 用户名 命令来切换用户,如果是普通用户切换到root登录则需要密码

exit

退出登录

命令的执行权限

文件和命令

说明

/etc/sudoers

该文件为只读,为用户指定权限的文件,能够让用户执行哪些命令都是由该文件决定的

visudo

打开/etc/sudoers文件

Defaults logfire="/var/log/sudo"

用visudo命令在sudoers文件添加左侧命令,表示启用提权日志

grub引导密码

  • 密文
    • 对字符进行加密处理
  • 明文
    • 不加密

命令和路径

说明

grub2-mkpasswd-pbkdf2

生成一个密码的密文

会根据你输入的口令根据算法变成密文

/etc/grub.d/

该路径下存储的文件是系统在启动时依次要读取的

01_users

该文件用于配置用户自定义在选中相应内核时按下e键后

grub2-mkconfig -o /boot/grub2/grub.cfg

生成GRUB引导加载器配置文件

修改完01_users文件后,需要重新生成grub配置文件

#!/bin/sh -e
cat << EOFset superusers="root" # 设置用户,哪个用户能够进入到grub的设置export superusers # 为超级用户设置参数password_pbkdf2 root grub.pbkdf2.sha512.10000.39CDB34D784C4B846111317645175228B9BBCBADC536D16CD52E6AF088056E04482C9D77320A00AFE0457A0B5B2ECFA56F94260ED1AC8939267B7B2E85388BC6.1D92BACD35D4DEB2C87D7BB1867A23B1A081C86742B9A3CF2E7B3B8053BB1B5F01CF3794433C2265FDFA2250EDF6414BA52E8D2F57FC8338878EB28B3240B462   # 给root设置加密以后的密码,示例为密文,明文则是加密前的密码
EOF
  1. 先通过 grub2-mkpasswd-pbkdf2 命令生成一个密文
  2. 在 /etc/grub.d/ 目录下修改 01_users 文件为上方示例
  3. 使用 grub2-mkconfig -o /boot/grub2/grub.cfg 重新生成grub配置文件
  4. 再重启系统来到grub引导界面

  1. 按下e键,就会提示输入登录的用户名和密码
  2. 登录成功后就进入内核的配置页面

增加终端

  • tty终端默认为6个,Linux桌面版的桌面默认安装在tty1上,而进入系统默认选择tty1的终端,所以桌面版的linux一进系统就是桌面

命令和文件

说明

/etc/securetty

用于控制哪些终端允许用户登录

如果不想让用户在某一个终端登录,就把终端名注释掉

/etc/systemd/login.conf

该文件

[Login] [Login]

#NAutoVTs=6 改为 NAutoVTs=12

表示虚拟终端分配的数量改为12,默认为6

systemctl restart systemd-logind

重启用户登录会话相关服务

当你修改了比如终端数量的配置,需要重启该服务才会同步你修改的配置

/etc/nologin

在/etc目录下创建名为nologin的空文件,可以阻止普通用户登录终端

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

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

相关文章

【Centos】深度解析:CentOS下安装pip的完整指南

【Centos】深度解析&#xff1a;CentOS下安装pip的完整指南 大家好 我是寸铁&#x1f44a; 总结了一篇【Centos】深度解析&#xff1a;CentOS下安装pip的完整指南✨ 喜欢的小伙伴可以点点关注 &#x1f49d; 方式1(推荐) 下载get-pip.py到本地 sudo wget https://bootstrap.p…

代理记账公司哪家好,深度剖析与选择指南

代理记账&#xff0c;作为企业会计管理和运营的重要环节&#xff0c;已经逐渐被越来越多的企业所重视&#xff0c;在众多的代理记账公司中&#xff0c;如何选择一家专业、高效且值得信赖的代理记账机构呢&#xff1f;以下是一些深度解析和推荐。 公司的规模 规模较大的代理记账…

LeetCode-数学基础开篇

概念 1.实数 2.指数函数 f(x) &#xff08;a&#xff1e;0且a≠1&#xff09;【a: 底数&#xff08;常量&#xff09;&#xff0c;x: 指数&#xff08;变量&#xff09;】 特征&#xff1a;指数函数在x轴没有交点&#xff0c;是光滑的曲线 3.幂函数 f(x) 【x&#xff…

Java基础之回调函数总结(八)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

你会用Nginx的第三方模块吗?

你好&#xff0c;我是赵兴晨&#xff0c;97年文科程序员。 你使用过Nginx的第三方模块吗&#xff1f;今天咱们来聊聊Nginx的第三方模块。 在深入了解Nginx的高性能与灵活性的过程中&#xff0c;我们不可避免地会接触到第三方模块。 这些模块是对Nginx原生功能的有力扩展&…

SpringBoot+Redis发送短信

SpringBootRedis发送短信 pom.xml <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId&g…

Python | Leetcode Python题解之第134题加油站

题目&#xff1a; 题解&#xff1a; class Solution:def canCompleteCircuit(self, gas: List[int], cost: List[int]) -> int:start, cur_res, total_res 0, 0, 0for i in range(len(gas)):cur_res gas[i] - cost[i]total_res gas[i] - cost[i]if cur_res < 0:cur_r…

Java EE-Spring Security配置

Spring Security 基本概念 spring security 的核心功能主要包括&#xff1a; 认证 &#xff08;你是谁&#xff09; 授权 &#xff08;你能干什么&#xff09; 攻击防护 &#xff08;防止伪造身份&#xff09; 其核心就是一组过滤器链&#xff0c;项目启动后将会自动配置。…

可视化数据科学平台在信贷领域应用系列四:决策树策略挖掘

信贷行业的风控策略挖掘是一个综合过程&#xff0c;需要综合考虑风控规则分析结果、效果评估、线上实时监测和业务管理需求等多个方面&#xff0c;以发现和制定有效的信贷风险管理策略。这些策略可能涉及贷款审批标准的调整、贷款利率的制定、贷款额度的设定等&#xff0c;在贷…

c++简略实现共享智能指针Shared_Ptr<T>

重点&#xff1a; 1.引用计数在堆上&#xff08;原本应为原子变量&#xff09; 2.引用计数增加减少需要加锁保证线程安全。 3.内部实现Release函数用于释放资源 4.未实现&#xff0c;增加自定义删除器可以将Release修改为模板函数&#xff0c;传入可调用参数。对于shared_p…

java分布式的ACP是什么

ACP 1、ACP是什么 一致性&#xff08;Consistency&#xff09;&#xff1a;在分布式系统中&#xff0c;当更新操作完成之后&#xff0c;所有节点在同一时间看到的数据是一致的。换句话说&#xff0c;对于任何数据的读取&#xff0c;都会得到最后写入的数据。可用性&#xff0…

工商注册代理记账——打造专业服务的专业机构

在当今竞争激烈的商业环境中&#xff0c;注册和运营一家公司成为了每一个企业家的重要步骤&#xff0c;这并不是一件容易的事&#xff0c;涉及到的不仅是法律法规的学习&#xff0c;还有各种手续的办理、税务筹划等问题&#xff0c;这个时候&#xff0c;就需要专业的工商注册代…

Flask 学习笔记 总结

python基础 服务端开发编程 第一个是赋值运算&#xff0c;第二是乘法&#xff0c;最后是一个是幂&#xff08;即a2&#xff09; a 2 a * 2 a ** 2 Python支持多重赋值&#xff1a; a, b, c 2, 3, 4 这句命令相当于&#xff1a; a 2 b 3 c 4 Python支持对字符串的灵活…

redis常用设计模式

Redis常用的设计模式分为读&#xff0c;写&#xff0c;读写三种 一、概要说明 读操作 Read Through Pattern 读穿透 写操作 以Redis统一视图为准&#xff1a;先更新缓存&#xff0c;后更新数据库。 Write Through Pattern 直写模式&#xff08;首先将数据写入缓存&#xf…

51建模网3D编辑器:一键为3D模型设置特殊材质

3D设计师要对3D模型设置玻璃或者钻石材质时&#xff0c;操作比较复杂&#xff0c;但是利用51建模网的3D编辑器&#xff0c;不用下载安装软件&#xff0c;在线通过浏览器即可编辑&#xff0c;具有一键设置特殊材质的功能。目前&#xff0c;它支持钻石材质、玻璃材质和水波纹材质…

Java——基础快速过

1.注释&#xff0c;标识符&#xff0c;关键字 1.1注释 单行注释&#xff1a;// 注释内容&#xff08;用的最多&#xff09; 多行注释&#xff1a;/* 注释内容*/&#xff08;不推荐&#xff09; 文档注释&#xff1a; /** 文档注释 */&#xff08;常见于方法和类之上描述方法和…

分布式任务队列系统 celery 进阶

通过前面的入门&#xff0c;我们大概了解了celery的工作原理及简单的入门代码示例&#xff08;传送门&#xff09;&#xff0c;下面进行一些稍微复杂的任务调度学习 多目录结构异步执行 在实际项目中&#xff0c;使用Celery进行异步任务处理时&#xff0c;经常需要将代码组织…

【面试题】创建两个线程交替打印100以内数字(一个打印偶数一个打印奇数)

阅读导航 一、问题概述二、解决思路三、代码实现四、代码优化 一、问题概述 面试官&#xff1a;C多线程了解吗&#xff1f;你给我写一下&#xff0c;起两个线程交替打印0~100的奇偶数。就是有两个线程&#xff0c;一个线程打印奇数另一个打印偶数&#xff0c;它们交替输出&…

Aws EC2,kubeadm方式安装kubernetes(k8s)

版本 docker版本&#xff1a;20.10.25 k8s版本&#xff08;kubeadm&#xff0c;kubelet和kubectl&#xff09;&#xff1a;1.20.10-0 初始化 # 禁用 SELinux sudo setenforce 0 sudo sed -i s/^SELINUXenforcing$/SELINUXpermissive/ /etc/selinux/config# 关闭防火墙 sudo …

MySQL的联合索引及案例分析

1. 联合索引 关于联合索引的详解参考博客【Mysql-----联合索引和最左匹配】&#xff0c;包含讲解 最左匹配 联合索引失效的情况 不遵循最左匹配原则范围查询右边失效原理like索引失效原理 比较关注的点在于&#xff1a; 对A、B、C三个字段创建一个联合索引&#xff08;A, …