系统安全及应用

本文详细介绍了Linux系统中的安全措施,包括清理非登录用户、锁定用户和配置文件、密码策略、PAM认证模块、sudo权限管理和命令历史限制。着重讲解了如何使用PAM确保用户权限控制和sudo的权限分配方法。
摘要由CSDN通过智能技术生成

目录

 

1.系统安全基本措施

系统账号的清理

锁定用户:

锁定配置文件:

密码安全控制:

命令历史:

1、适用于新登录的用户:

3.注销时自动清空命令:

闲置60秒后自动注销:

切换用户:su

查看su操作记录

确定当前用户是谁

限制使用su命令的用户

1.添加wheel组:

2.将用户添加到wheel用户组

3.修改插拔认证模块(PAM)

4.这样就进不去test1了

PAM:安全认证

PAM认证原理

专用配置文件/etc/pam.d/格式

认证模块类型(module-type)

control(控制位)

sudo

sudo特性:

编辑sudo配置文件的方式:改配置文件前先备份

配置文件规则有两类:语法和别名


1.系统安全基本措施

系统账号的清理

将非登录的用户的shell设为/sbin/nologin(非登录的用户账号)

查看登录用户,过滤出非登录的用户账号

cat /etc/passwd |grep”/sbin/nologin”

将账号设置为非登录用户:usermod -s /sbin/nologin 用户名

锁定用户:

passwd: passwd -l锁定 passwd -u解锁

usermod: usermod -l锁定 usermod -u解锁

/etc/shadow中密码第一位为!,表示密码锁定

锁定配置文件:

chattr [选项] 文件或目录

选项:

chattr +i /etc/passwd /etc/shadow 锁定文件,包括root也无法修改

chattr -i /etc/passwd /etc/shadow解锁文件

锁定后查看文件状态属性就会显示没有了

查看文件状态属性:lsattr /etc/passwd /etc/shadow

密码安全控制:

设置密码有效期

要求用户下次登录时更改密码

vi /etc/login.defs ,进入这个文件修改

适用于新建用户,99999意味着无期限,更改此选项代表着往后再新建用户,密码有效期的时间将会更改。

查看用户密码还剩多少天:cat /etc/shadow |grep “用户名”

chage -M 30 用户名

适用于已有用户 ,设置密码有效期30天

chage -d 0 用户名

强制下次登陆时改密码

命令历史:

命令历史的限制(分两种,一种是新登录的用户,第二种是修改当前用户)

1、适用于新登录的用户:

vim /etc/profile 进入配置文件修改限制命令条数。适合新用户 HISTSIZE=1000 系统默认是1000条profile, 修改限制命令 source /etc/ 刷新配置文件,使文件立即生效

2.修改当前用户的命令历史限制

export HISTSIZE=200 限制命令历史为200条

source /etc/profile 让配置文件刷新,使文件立即生效

3.注销时自动清空命令:

[root@localhost ~]# vim ~/.bashrc

echo " " > ~/.bash_history 进入在末尾加上

闲置60秒后自动注销:

[root@localhost ~]#vim .bash_profile 进入配置文件

export TMOUT=60 全局声明超过60秒闲置后自动注销终端

[root@localhost ~]# source .bash_profile 刷新文件

[root@localhost ~]# echo $TMOUT 查看自动注销时间 如果不在配置文件输入这条命令,那么是对当前用户生效

[root@localhost ~]# export TMOUT=600 对当前用户生效

[root@localhost ~]#vim .bash_profile

切换用户:su

任何一个用户,登录都需要加载bash这个程序

su 命令:可以切换用户身份。

切换用户方式:

su 用户名:实际并没有切换到新的用户,无法实现后期操作

su -用户名:正确的格式切换用户

su:相当于su -root

超级用户(root)切换到普通用户不需要密码

查看su操作记录

安全日志文件:/var/log/secure

确定当前用户是谁

woami,w,who

限制使用su命令的用户
1.添加wheel组:

系统会自己创建一个wheel组,如果没有groupadd创建一个几个

grep wheel /etc/group

2.将用户添加到wheel用户组

usermod -G wheel test1

3.修改插拔认证模块(PAM)

vim /etc/pam.d/su

4.这样就进不去test1了

查看su的PAM配置文件

vim /etc/pam.d/su

限制su命令作用
auth sufficient pam_ rootok.so超级管理员是否需要输入密码
auth required pam_ wheel.so use_ _uid属于whell组,可以切换(属于文件的第六行)
PAM:安全认证

当前linux普遍的认证方式

PAM模块:插件式的模块

常见的功能:

1.验证 用户名 密码功能

2.开发出一款软件如果要用到用户名和密码的功能时,就会调用pam架构中的密码模块,不需要二次开发

PAM认证原理

PAM认证一般遵循这样的顺序:Service(服务)→PAM(配置文件)→pam_*.so

想查看某个程序是否支持PAM认证,可以用ls命令进行查看/etc/pam.d/

例如:ls /etc/pam.d | grep su 查看su是否支持PAM模块认证

专用配置文件/etc/pam.d/格式

type:功能

control:判断成功失败

module-path:指明本模块对应的程序文件的路径名

arguments:传递该模块的参数

认证模块类型(module-type)

auth:对用户身份进行识别,如提示输入密码,判断是否为root。

acconut:对账号各项属性进行检查,如是否允许登录系统,帐号是否已经过期,是否达到最大用户数等。

password:使用用户信息来更新数据,如修改用户密码

session:用户会话期间的控制,如登录连接信息,用户数据的打开和关闭,挂载文件系统

-type:表示因为缺失而不能加载的模块将不记录到系统日志,对于那些不总是安装在系统上的模块有用

control(控制位)

作用是验证是否成功

required:一票否决(失败了也会往下走)

requisite:一票否决(失败了退出,成功继续)

sufficient:一票通过(成功了退出,失败了会继续往下走)

sudo
sudo特性:

sudo 能够授权指定用户在指定主机上运行某些命令。 如果未授权用户尝试使用 sudo,会提示联系管理员。

sudo 可以提供日志,记录每个用户使用sudo操作,以便于日后审计。

sudo 为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机。

sudo 默认存活期为5分钟。

编辑sudo配置文件的方式:改配置文件前先备份

1.sudoedit /etc/sudoers

2.vim /etc/sudoers

3.visudo

visudo -c:该命令具有语法检查功能,输入配置完后可以用这个命令检查

配置文件规则有两类:语法和别名

sudo语法

user which_hosts= (runas) command

允许哪个用户 在哪台主机上 执行某一条命令

user:运行命令者的身份

host:哪台主机,可以指定某个ip地址表示

(runas):以哪个用户的身份

command:运行哪些命令

免密运行命令:nopasswd:命令

别名(定义)

别名格式:必须大写字母,数字可以使用但是不能放在开头

sudo别名有四种类型:

  • Host_Alias 定义主机别名

  • User_Alias 用户别名,别名成员可以是用户,用户组(前面要加%号)

  • Runas_Alias 用来定义runas别名,这个别名指定的是“目的用户”,即sudo 允许切换至的用户

  • Command_Alias 定义命令别名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值