Linux系统安全

不以物喜不以己悲,生活不会突变,你要做的只是耐心和积累。


账号管理

登陆账号管理

[root@localhost ~]# usermod -L test  //锁定账号
[root@localhost ~]# passwd -S test	//查看账号状态
test LK 2018-12-11 0 99999 7 -1 (密码已被锁定。)
[root@localhost ~]# usermod -U test     //解锁账号
[root@localhost ~]# passwd -S test
test PS 2018-12-11 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
[root@localhost ~]# chattr +i /etc/passwd /etc/shadow	   //锁定文件
[root@localhost ~]# lsattr /etc/passwd /etc/shadow	//查看被锁定的状态
----i----------- /etc/passwd
----i----------- /etc/shadow
[root@localhost ~]# chattr -i /etc/passwd /etc/shadow	  //解锁文件
[root@localhost ~]# lsattr /etc/passwd /etc/shadow	//查看被解锁的状态
---------------- /etc/passwd
---------------- /etc/shadow

说明: 在账号文件被锁定的情况下,其内容将不允许变更,因此无法添加、删除账号,也不能更改用户的密码、登录shell、宿主目录等属性信息。

[root@localhost ~]# useradd test1
useradd:无法打开 /etc/passwd

登陆密码管理

  • 通过vim /etc/login.defs可修改密码有效期,时间单位为天,适用于新建的用户
  • 通过chage -M 天数 用户命令可修改已有用户密码有效期时间
  • 通过chage -d 0 用户命令强制用户下次登陆时更改账户密码

命令历史、自动注销

  • 通过vim /etc/profile可修改HISTSIZE的值来调整命令历史记录条数,适用于新登陆用户;export HISTSIZE=200,适用于当前用户

  • 通过vim /etc/profile可修改TMOUT的值来设置用户超时时间,默认单位为秒,适用于新登陆用户;export TMOUT=600,适用于当前用户

  • 通过vim ~/.bash_logout打开并添加history -c在退出登陆时清空历史命令

用户切换与提权

su命令切换用户

  • 切换时需要验证目标用户的密码,root切换成任何账号都不需要密码

  • 调整/etc/pam.d/su文件中的pam_wheel后,可以使用gpasswd -a 用户名 wheel命令授权哪些用户可以执行su命令,默认拒绝所有用户,只有添加到wheel组中的用户才可以使用su命令

sudo命令提权

  • /etc/sudoers文件中授权哪些用户可以使用sudo提权
  • 授权格式为 user MACHINE=COMMANDS,user为授权的用户,MACHINE为用户在哪些主机上可以执行,COMMANDS用户可以执行哪些命令
  • 授权的用户多时可用集中定义的方式,定义用户的名字为User_Alias,主机为Host_ALias,命令为Cmnd_ALias,命令部分可以使用"*","!"通配符
  • sudo命令会验证当前用户的密码
  • sudo -l可以查看哪些用户授权了

PAM认证模块

PAM认证顺序

先确定服务,然后调用配置文件匹配规则,使用pam_.so动态库去执行验证

PAM认证组成

  • 认证类型:

    • auth用户名,密码验证
    • account账号相关设置验证,
    • passwod密码相关设置验证,session会话管理验证
  • 控制类型:

    • required验证失败仍继续,但返回fail
    • requisite验证失败则结束验证,返回fail
    • sufficient验证成功则返回,否则忽略验证结果继续验证
    • optional不验证,只显示信息
  • PAM模块以及参数

系统安全设定

加密grub2菜单

grub2-setpassword

限制root登陆

vi /etc/securetty # 注释禁止登陆的终端

禁止普通用户登陆

touch /etc/nologin

JOHN工具破解密码

软口令破解

wget https://www.openwall.com/john/j/john-1.8.0.tar.xz # 下载工具 
tar xvf john-1.8.0.tar.xz # 解压源码 
cd john-1.8.0.tar.xz/src/ # 进入源码目录 
make clean linux-x86-64 # 编译源码 
cd ../run # 进入运行目录 cp /etc/shadow ./shadow.txt # 复制shadow文件
./john shadow.txt # 破解shadow文件密码

加密码字典暴力破解

:>john.pot # 清空已经破解的缓存
./john --wordlist=passwod.lst shadow.txt # 暴力破解

NMAP端口扫描

安装nmap

yum -y install nmap

端口扫描

nmap 127.0.0.1

参数类型:

  • -n禁用反向解析
  • -p指定扫描端口,多个用
  • -sS发送半开扫描
  • -sT发送整TCP链接
  • -sF发送链接结束请求包
  • -sU扫描UDP服务
  • -sP扫描ICMP,检测主机是否存活
  • -P0跳过ping检测

你可能感兴趣的:(安全,Linux操作系统)