系统安全及应用

一、系统安全的加固

  • 将用户设置为无法登录(usermod -s /sbin/nologin)

[root@localhost ~]# tail /etc/passwd       
#查看lisi的属性

[root@localhost ~]# chsh -s /sbin/nologin lisi     
#修改lisi的shell属性
Changing shell for lisi.
Shell changed.
[root@localhost ~]# tail -1 /etc/passwd                
#查看lisi的属性
lisi:x:1001:1001::/home/lisi:/sbin/nologin


usermod

  • 锁定账户 (usermod -L)

[root@localhost ~]# passwd -l zhaosi
锁定用户 zhaosi 的密码 。
passwd: 操作成功
[root@localhost ~]# su zhangsan
[zhangsan@localhost root]$ su zhaosi
密码:
su: 鉴定故障
[root@localhost ~]# passwd -u zhaosi
解锁用户 zhaosi 的密码。
passwd: 操作成功
[root@localhost ~]# passwd -u zhaosi
解锁用户 zhaosi 的密码。
passwd: 操作成功
[root@localhost ~]# su zhangsan
[zhangsan@localhost root]$ su zhaosi
密码:
[zhaosi@localhost root]$ 

  • 删除账户 (userdel -r)

userdel -r  用户名
家目录 

家目录   无主文件  前主人的uid

  • 锁定账户密码 本质锁定

  • 设置随机密码,7天改一次,对密码复杂性有要求

shell——/sbin/nologin却比较特殊,所谓“无法登陆”指的仅是这个用户无法使用bash或其他shell来登陆系统而已,并不是说这个账号就无法使用系统资源。举例来说,各个系统账号中,打印作业有lp这个账号管理,www服务器有apache这个账号管理,他们都可以进行系统程序的工作,但就是无法登陆主机而已。

1.1chatter----锁定配置文件

+i :锁定文件

-i :解锁文件

[root@localhost ~]# chattr +i /etc/passwd /etc/shadow
#+i ---锁定文件
[root@localhost ~]# useradd liqi
useradd:无法打开 /etc/passwd
[root@localhost ~]# lsattr /etc/passwd /etc/shadow
----i----------- /etc/passwd
----i----------- /etc/shadow

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

 1.2su---切换用户

su 不加-:不完全切换

su 加-:完全切换

系统安全及应用_第1张图片

wheel:超级管理员组

切换用户的方式:

su UserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录,即不完全切换

su - UserName:登录式切换,会读取目标用户的配置文件,切换至自已的家目录,即完全切换

说明:root su至其他用户无须密码;非root用户切换时需要密码

注意:su 切换新用户后,使用 exit 退回至旧的用户身份,而不要再用 su 切换至旧用户,否则会生成很多的bash子进程,环境可能会混乱。

su 与 su-

即有 - 选项,切换用户身份更彻底;反之,只切换了一部分,这会导致某些命令运行出现问题或错误(例如无法使用 service 命令)。

[zhangsan@localhost ~]$ pwd
/home/zhangsan
[zhangsan@localhost ~]$ su 
密码:
[root@localhost zhangsan]# pwd
/home/zhangsan
[zhangsan@localhost ~]$ su -
密码:
上一次登录:二 7月 13 10:24:14 CST 2021pts/1 上
[root@localhost ~]# pwd
/root

限制使用su命令的用户

[root@localhost ~]# gpasswd -a lisi wheel
#将用户加入 wheel组 root

[root@localhost ~]#vim /etc/pam.d/su
#开启服务
#auth           required        pam_wheel.so use_uid

vim /etc/pam.d/su
2 # auth sufficient pam_ rootok.so
6 #auth required pam_ wheel.so use_ _uid

a)以上两行是默认状态(即开启第一行,注释第二行),这种状态下是允许所有用户间使用su命令进行切换的。
b)两行都注释也是允许所有用户都能使用su命令,但root'下使用su切换到其他普通用户需要输入密码;如果第一行不注释,则root使用su切换普通用户就不需要输入密码(pam rootok. so模块的主要作用是使uid为0的用户,即root用户能够直接通过认证而不用输入密码。)
c)如果开启第二行,表示只有root用户和wheel组内的用户才可以使用su命令
d)如果注释第一行,开启第二行,表示只有whee1组内的用户才能使用su命令,root用户也被禁用su命令。


su
 

二、pam

2.1介绍

PAM提供了对所有服务进行认证的中央机制,适用于本地登录,远程登录,如:telnet,rlogin,fsh,ftp,点对点协议PPP,su等应用程序中,系统管理员通过PAM配置文件来制定不同应用程序的不同认证策略;应用程序开发者通过在服务程序中使用PAM API(pam_xxxx( ))来实现对认证方法的调用;而PAM服务模块的开发者则利用PAM SPI来编写模块(主要调用函数pam_sm_xxxx( )供PAM接口库调用,将不同的认证机制加入到系统中;PAM接口库(libpam)则读取配置文件,将应用程序和相应的PAM服务模块联系起来。重复利用别人的开发的功能,不必自己开发,会话,密码验证等功能,已经做好了调用下就可以了未来通用性,所以有了pam框架,类似淘宝 一边普通买家,一边卖家,淘宝上既是买家也是卖家

/usr/lib64/security:存放功能模块

/etc/pam.d:配置文件

当用户来访问某一程序,如果这个程序启动用了pam模块,会先去读取配置文件,按照配置文件调用模块,进行操作

2.2type:模块类型,即功能

Auth:验证用户身份,按照身份给你相应权限

Account:验证账户是否有效

password:账户密码是否有效

session:管理会话,可以使用多少资源

— :这个模块可能没有

2.3Control:控制位

required:一票否决,最后一定失败,但是会继续进行验证

requisite:一票否决,如果失败,会立即结束验证,反馈失败

sufficient:验证成功则立即返回结果(前两个有一个失败,则为失败)

2.4limits

作用:控制进程占用资源

/etc/security   中的   limits.conf文件

作用:控制进程打开的数量

系统安全及应用_第2张图片

例如:

lisi               -              nproc                   5

代表 lisi 这个用户在系统上只能打开五个进程

系统安全及应用_第3张图片


系统安全及应用_第4张图片


系统安全及应用_第5张图片

ab -c1025 -n 5000 http://192.168.91.100 ab:压测工具

系统安全及应用_第6张图片


三、sudo---提权操作

su root---以管理员身份使用

sudo的配置文件是 /etc/sudoers.tmp, 属性为0440

作用:管理用户的使用权限和使用的主机

系统安全及应用_第7张图片

打开配置文件两种方法:

1.vim /tetc/sudoers.tmp

2.visdu

系统安全及应用_第8张图片


系统安全及应用_第9张图片

别名类型: 

  • User_Alias(用户)

  • Runas_Alias(代表用户)

  • Host_Alias(登录主机)

  • Cmnd_Alias(命令)

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

###别名
Host_Alias MYHOSTS = kgc,localhost
User_Alias MYUSERS = zhangsan,wangwu,lisi
Cmnd_Alias MYCMNDS = /sbin/*,!/sbin/reboot,!/sbin/poweroff,!/sbin/init,!/usr/bin/rm

root ALL=(ALL) ALL 任意机器上的root用户可以在本机执行任何命令

root:哪个用户要使用命令 lisi zhangsan

ALL:哪台主机

(ALL):以谁的身份运行,一般写超级管理员root

ALL:所有命令


pam_rootok.so root不需要密码

pam_wheel.so 只有wheel组才可以切换

安全加固:
用户
删除长期不登陆的用户
锁定一些重要文件

密码策略
将一些常用端口改掉
sudo

你可能感兴趣的:(系统安全,安全,运维,linux)