文章目录
- 一.账号安全控制
-
- 1.1 系统账号清理
- 1.2 密码安全控制
- 1.3 命令历史自动注销
- 1.4 闲时超时设置
- 1.5 用户切换与提权
- 1.5 PAM安全认证
- 二. 系统引导和登录控制
-
- 2.1 开机安全控制
- 2.2 终端登录安全控制
- 三. 网络端口扫描
-
- 3.1 nmap 语法:
- 3.2 需要先安装nmap软件包
- 3.3 扫描端口的用法
- 四. 弱口令检测
-
- 4.1 通过使用John the RIpper,可以检测Linux系统用户的密码强度
一.账号安全控制
1.1 系统账号清理
将非登录用户的shell 设为/sbin/nologin
方法:
#vi /etc/passwd
#在配置文件里找到用户将shell环境/bin/bash 改成/sbin/nologin
锁定长期不使用的账号
passwd
#passwd -l liang10 锁定liang10账号
#paddwd -S liang10 查看liang10账号是否被锁定
#passwd -u liang10 解除锁定liang10账号
#paddwd -S liang10 查看liang10账号是否被锁定
usermod
##usermod -L liang10 锁定liang10账户
##paddwd -S liang10 查看liang10账号是否被锁定
##usermod -U liang10
##paddwd -S liang10
删除无用的账号
userdel
userdel -r liang10
锁定账号文件passwd,shadow
##chattr +i /etc/passwd /etc/shadow
##lsattr /etc/passwd /etc/shadow
##chattr -i /etc/passwd /etc/shadow
##lsattr /etc/passwd /etc/shadow
1.2 密码安全控制
设置密码有效期
修改配置文件使后面的新建用户的密码有效期为30天
##vi /etc/login.def
…PASS_MAX_DAYS 30
已有用户修改密码有效期
chage -M 30 liang10 用户liang10的有效器改为30天
要求用户下次登录时修改密码
chage -d 0 liang10
密码比较难设定,需要最少8位数
1.3 命令历史自动注销
历史命令主要是由变量HISTSIZE控制,默认是1000
通过修改/etc/profile 文件中的HISTSIZE值可以影响系统中所有的用户
##vi /etc/profile
… HISTSIZE=100
##source /etc/profile 刷新配置文件,使生效
适用于当前用户
##export HISTSIZE=20
1.4 闲时超时设置
闲时超时由变量TMOUT控制
通过添加/etc/profile 文件中的TMOUT值可以影响系统中所有的用户
#vi /etc/profile
…
export TMOUT=600 (秒)
适用于当前用户
#export TMOUT=600
1.5 用户切换与提权
su命令
默认情况下任何用户都允许使用su命令,从而有机会反复尝试其他用户(如root)的登录密码,带来安全危险
pam_wheel认证模块
通过修改/etc/pam.d/su认证配置以启用pam_wheel认证,启动后未加入wheel组内的其他用户将无法使用su命令
##grpasswd -a liang10 wheel
##vi .etc/pam.d/su
auth sufficient parm_rootok.so
auth required pam_wheel.so use_uid
去掉此两行的#号,启用pam_wheel认证
##在liang10 下输入su - root 可以切换root
##在liang7 下输入su - root 不可以切换root
sudo命令
使用sudo命令提升执行权限,减少特权密码的安全风险
visudo
##进入可以直接修改配置文件
1.5 PAM安全认证
PAM是Linux系统可拔插认证模块,为了加强su命令的使用控制,可以借助PAM认证模块,只允许个别用户使用su命令进行切换用户。
PAM认证原理
认证遵循的顺序:service(服务)–PAM(配置文件)–pam_*.so
PAM认证构成
例如:查看su的PAM配置文件 cat /etc/pam.d/su
配置文件包括的板块
PAM认证类型
PAM控制类型
PAM模块及其参数
二. 系统引导和登录控制
2.1 开机安全控制
调整BIOS引导设置
将第一引导设备设置为当前系统所在硬盘
禁止从其他设备(光盘,u盘,网络)引导系统
将安全级别设为setup,并设置管理员密码
禁止ctrl+alt+del快捷键重启
限制更改GURB引导参数
##grub2-setpassword 设置密码:123
重启开机,进入grub菜单,按e键,需要输入账号密码
##这边是用root设置的 使用root 密码123##
2.2 终端登录安全控制
限制root只在安全终端登录
安全终端配置文件
##vi /etc/securetty
禁止普通用户登录
#vi /etc/nologin 把用户加进nologin里,禁止普通用户登录
#rm -rf /etc/nologin 取消上述登录限制
三. 网络端口扫描
3.1 nmap 语法:
nmap [扫描类型] [选项] <扫描目标>
3.2 需要先安装nmap软件包
#mount /dev/cdrom /mnt
#rpm -ivh /mnt/Packages/nmap-5.51.3.e16.x86_64.rpm
3.3 扫描端口的用法
1.扫描常用的TCP端口
#nmap 127.0.0.1
2.扫描常用的UDP端口
#nmap -sU 127.0.0.1
3.扫描21端口查看192.168.1.0/24网段中有哪些主机提供FTP服务
#nmap -p 21 192.168.1.0/24
4.快速检测192.168.1.0/24网段的有多少存活的主机(能ping通)
#nmap -n -sP 192.168.1.0/24
5.检测IP地址位于192.168.1.100-200的主机是否开启文件共享服务
#nmap -p 139,445 192.168.1.100-200
四. 弱口令检测
4.1 通过使用John the RIpper,可以检测Linux系统用户的密码强度
下载并安装John the Ripper,官网http://www.openwall.com/john/
##tar zxvf john-1.9.0.tar.gz
doc 手册文档
scr 源码文件
#make clean linux-x86-64 执行编译过程
run 运行程序
编译完成后,会在run目录下生成一个名为john的可执行程序
自定义密码字典破解 shadow文件密码
#vi /opt/liangpeihua.txt ##在文件里编译一些密码##
#./john --wordlist=/opt/liangpeihua.txt /root/shadow.txt
或者:./john --w:/opt/liangpeihua.txt /root/shadow.txt
#vi /john.pot ##在/john.pot里查看破解后的密码##
暴力破解,使用默认提供的字典文件passwd.1st
#[root@locallhost run]./john --wordlist=./passwd.1st /root/shadow.txt
#vi /john.pot