系统安全和应用

系统账号清理

将非登陆用户的shell设为/sbin/nologin

usermod -s /sbin/nologin 用户名(恢复 usermod -s /bin/bash 用户名)

锁定长期不使用的账号

usermod -L  用户名  (usermod -U 用户名  解锁)

passwd -l 用户名   (passwd -u 用户名   解锁)

(passwd -S 用户名   查看是否锁定)

删除无用账户

userdel -r 用户名

锁定账号文件 密码

chattr +i /etc/[passwd  shadow] 锁定账号文件 账号密码

chattr  -i  /etc/[passwd  shadow] 解锁账号文件 账号密码

sattr   /etc/[passwd  shadow]     查看是否锁定

 

 密码安全控制

设置密码有效期

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

[root@cx cron]# vim /etc/login.defs    修改密码配置文件,适用于新用户

[root@cx cron]# chage -M   [时间]   [用户]  适用已经存在用户 

[root@cx cron]# chage -d 0 [用户]        强制用户下次登陆修改密码    

 命令历史限制

减少记录的命令条数

[root@cx cron]# vim /etc/profile   

#####HISTSIZE=10    修改命令历史条数

[root@cx cron]# source /etc/profile  

 登录时自动清空命令历史

临时清空

[root@cx cron]# history -c   清除命令历史  

永久清空

[root@cx ~]# vim /etc/bashrc

 history -c                                           

[root@cx /]# source /etc/bashrc


 

 终端自动注销

[root@cx /]# vim /etc/profile

[root@cx /]# source /etc/profile

登录控制

使用su命令切换用户

用途:Substitute User,切换用户

su 目标用户 ###仅切换用户

su - 目标用户 ###切换用户的同时切换shell环境

密码验证

①root→任意用户,不验证密码

②普通用户→其他用户,验证目标用户的密码

 限制使用su命令的用户
su命令的安全隐患:

默认情况下,任何用户都允许使用su命令,有机会反复尝试其他用户(如root)的登陆密码,带来安全风险
为了加强su命令的使用控制,可借助PAM认证模块,只允许极个别用户使用su命令进行切换

PAM(Pluggable Authentication Modules)可插拔式认证模块:

是一种高效而且灵活便利的用户级别的认证方式

也是当前Linux服务器普遍使用的认证方式

PAM的配置文件中的每一行都是一个独立的认证过程,它们按从上而下的顺序一次由PAM模块调用

将允许使用su命令的用户加入wheel组,并启用pam_wheel认证模块

vim /etc/pam.d/su
{#%PAM-1.0
auth sufficient pam_rootok.so
auth required pam_wheel.so use_uid
确保这两行不被注释,正常生效}

 

 查看pam认证模块

ls /etc/pam.d

 查看某个程序是否支持PAM认证

ls /etc/pam.d | grep 命令名/程序名

 

.使用sudo机制提升权限

1)sudo命令的用途及用法

用途:以其他用户身份(如root)执行授权的命令

sudo <授权命令>

配置sudo授权

visudo
vim /etc/sudoers
{###配置用户别名
 User_Alias 大写别名=用户1,用户2...
 ###配置主机别名
 Host_Alias 大写别名=主机名1,主机名2...
 ###配置程序别名
 Cmnd_Alias 大写别名=程序1,程序2...
 ###设置用户授权
 用户名/用户别名 主机名/主机别名/all=程序列表/程序别名/all
 ###设置组授权
 %组名 主机名/主机别名/all=[(用户)NOPASSWD:]程序列表/程序别名/all
 ###启动sudo操作日志
 Defaults logfile = "/var/log/sudo"(写在尾行)}
 查询授权的sudo###在设置程序列表中,可以使用通配符“*”取所有,“!”取反

 

 

 

 

查询授权的sudo

sudo -l

终端登录安全控制

限制root只在安全终端登录

[root@cx ~]# vim /etc/securetty   安全终端配置

进去后注释掉不让登录的端口

 禁止普通用户登录

[root@cx ~]# touch /etc/nologin   创建这个文件 就禁止普通用户登录了
[root@cx ~]# rm -rf /etc/nologin    删除这个文件  普通用户就能登录了

GRUB限制

grub2-mkpasswd-pbkdf2            #根据提示设置GRUB菜单的密码
PBKDF2 hash of your password is grub . pbkd.. . ..#省略部分内容为经过加密生成的密码字符串
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
cp /etc/grub.d/00_header /etc/grub.d/00_header.bak 
vim /etc/grub.d/00_header #进入添加密钥
 
cat << EOF #添加密钥,密钥是刚才复制的
set superusers="root”             #设置用户名为root
password_pbkdf2 root grub. pbkd2. . . .       
#设置密码,省略部分内容为经过加密生成的密码字符串
EOF
grub2-mkconfig -o /boot/grub2/grub.cfg          #生成新的grub.cfg文件
#######重启系统进入GRtB菜单时,按e键将需要输入账号密码才能修改引导参数########

法二:grub2-setpassword        # 一步到位,直接设置

弱口令检测

John the Ripper 是一种开源的密码破解工具,可使用密码字典(包含各种密码组合的列表文件)来进行暴力破解

 

 

 执行暴力破解

cd /opt/john-1.8.0 /run

./john /opt/shadow.txt

#查看已破解的账户列表

./john --show /opt/shadow.txt

#使用密码字典文件

> john.pot          #清空已破解的账户列表,以便重新分析

./john --wordlist=./passwd.lst /opt/shadow.txt         #使用指定的字典文件进行破解

端口扫描

 NMAP扫描端口

-p:指定扫描端口

-n:禁用反向DNS解析(以加快扫描速度)

-sS:TCP的SYN扫描(半开扫描),只向目标发出SYN数据包,如果收到SYN/ACK响应包就认为目标端口正在监听,并立即断开连接;否则认为目标端口未开放

-sT:TCP连接扫描,完整的TCP扫描方式(默认扫描类型),用来建立一个TCP连接,如果成功认为目标端口正在监听服务,否则认为未开放

-sF:TCP的FIN扫描,开放的端口会忽略这种数据包,关闭的端口会回应RST数据包。许多防火墙只对SYN数据包进行简单过滤,而忽略其他形式的TCP攻击包。这种扫描可间接检测防火墙健壮性

-sU:UDP扫描,探测目标主机提供哪些UDP服务,速度比较慢

-sP:ICMP扫描,类似ping检测,快速判断目标主机是否存活,不做其他扫描

-P0:跳过ping检测,这种认为所有目标主机是存活的,当对方不响应ICMP请求时,使用这种方式可以避免因无法ping通而放弃扫描

-v:显示扫描过程

-F:快速扫描

-A:全面的系统扫描:包括打开操作系统探测、版本探测、脚本扫描、路径跟踪

-R:反向域名解析,即IP指向域名

-Pn:服务器禁止ping命令,跳过主机发现的过程进行端口扫描,-p0也要类似的效果

-sV:扫描系统版本和程序版本检测

端口扫描的状态
Opend:端口开启
Closed: 端口关闭
Filtered:端口被过滤,数据没有到达主机,返回的结果为空,数据被防火墙拦截了
Unfiltered:未被过滤,数据有到达主机,但是不能识别端口的当前状
Open|filtered:开放或者被过滤,端口没有返回值,主要发生在UDP、IP、FIN、NULL和Xmas扫描中
Closed|filtered:关闭或者被过滤,只发生在IP ID idle扫描

natstat命令常用选项

 netstat -natp    查看正在运行的使用TCP协议的网络状态信息
netstat -naup    查看正在运行的使用UDP协议的网络状态信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值