基于Centos 7系统的安全加固方案

创作不易,麻烦点个免费的赞和关注吧!

声明!

免责声明:本教程作者及相关参与人员对于任何直接或间接使用本教程内容而导致的任何形式的损失或损害,包括但不限于数据丢失、系统损坏、个人隐私泄露或经济损失等,不承担任何责任。所有使用本教程内容的个人或组织应自行承担全部风险。

基于centos7版本测试 注意:修改任何配置文件,为保障安全请先备份,命令: cp -a +配置文件路径 +存放位置路径

1.密码长度与有效期

复制代码
 位置:vi /etc/login.defs

修改:

复制代码
 PASS_MAX_DAYS   90     注:密码有效期
 PASS_MIN_DAYS   2        注:修改密码最短期限
 PASS_MIN_LEN    8        注:密码最短长度
 PASS_WARN_AGE   30    注:密码过期提醒

2.密码复杂度

位置:

复制代码
 vi /etc/pam.d/system-auth

修改:

复制代码
 将这行注释   password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= 
  并在其下面新增1行 password requisite pam_pwquality.so try_first_pass minlen=8 difok=5 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 retry=1 authtok_type=
  如何要设定root也要履行该规则,需要添加enforce_for_root
  例如:password requisite pam_pwquality.so try_first_pass minlen=8 difok=5 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 retry=1 enforce_for_root authtok_type=

解释:

复制代码
  minlen=8 最小长度8位
  difok=5 新旧密码最少5个字符不同
  dcredit=-1 最少1个数字
  lcredit=-1 最少1个小写字符
  ucredit=-1 最少1个大写字符
  ocredit=-1 最少1个特殊字符
  retry=1  1次错误后返回错误信息
  type=XXX 此选项用来修改缺省的密码提示文本

3.新口令不能与近期相同

位置:

复制代码
 vi /etc/pam.d/system-auth

修改:

复制代码
 在password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok 
 所在行的后面添加remember=5

解释:

复制代码
 remeber=5 记住近期5个密码,改密码不能与近期5个有相同的。

4.会话超时

位置:

复制代码
vi /etc/profile

修改:

复制代码
在文件的末尾添加 export TMOUT=600

解释:

复制代码
export TMOUT=600 10分钟超时

5.登录失败锁定

位置:

复制代码
vi /etc/pam.d/system-auth

修改:

复制代码
在# User changes will be destroyed the next time authconfig is run.
下面添加auth       required     pam_tally2.so deny=5 unlock_time=600 even_deny_root root_unlock_time=1800

解释:

复制代码
deny=5 5次登录失败
unlock_time=1800 锁定30分钟

6.SSH配置加固

位置:

复制代码
vi /etc/ssh/sshd_config

修改:

复制代码
(1)禁止空密码登录
将#PermitEmptyPasswords no参数的注释符号去掉,改成
PermitEmptyPasswords no

(2)关闭ssh的tcp转发
将#AllowTcpForwarding yes参数改成
AllowTcpForwarding no

(3)关闭S/KEY(质疑-应答)认证方式
将#ChallengeResponseAuthentication yes参数,改成
ChallengeResponseAuthentication no


(4)关闭基于GSSAPI 的用户认证
将GSSAPIAuthentication yes参数,改成
GSSAPIAuthentication no

重启ssh服务:

复制代码
systemctl restart sshd.service

7.重用名root

复制代码
位置:vi /etc/passwd 把里面的root用户修改为想要设定的用户名。保存:wq\
位置:vi /etc/shadow 把里面的root用户修改为想要设定的用户名。强制保存:wq!

重启:

复制代码
重启服务器,使用修改过的用户名登录。
通过查询Id 当前用户 如果UID是0,就修改成功,否则就是未成功。

注意:

复制代码
如果重启长时间处于运行的服务器可能会导致系统崩溃。
修改root用户名后,会导致登录系统出现10秒左右的延迟。

8.查询是否存在特权账户与空口令

复制代码
awk -F: '$3==0 {print $1}' /etc/passwd 查询是否存在特权账户
awk -F: 'length($2)==0 {print $1}' /etc/shadow 查询是否存在空口令

修改:

复制代码
如果存在特权账户,删除除root以外的任何账户。
如果存在空口令,为该用户设定密码。

9.删除多余用户

复制代码
userdel 用户名

10.设定禁止root远程登录

位置:

复制代码
vi /etc/ssh/sshd_config

修改:

复制代码
PermitRootLogin no

11.日志上传服务器

位置:

复制代码
vi /etc/rsyslog.conf

修改:

复制代码
*.info;mail.none;news.none;authpriv.none;cron.none /var/log/messages  找到这行添加下面的内容
*.* @@172.16.x.xx:514
*.* @172.16.x.xx:514

注:

复制代码
@@表示TCP流量,@表示UDP流量。

12.防火墙

复制代码
systemctl start firewalld  开启防火墙
systemctl enable firewalld  自启动
firewall-cmd --per --add-port=80/tcp 开启80端口
firwall-cmd --reload 重载防火墙
firewall-cmd --list-all  查看防火墙端口

kali魔改版,新增60款工具,需要的兄弟们自取

我用夸克网盘分享了「zss_kali_kde完整版.7z」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。

链接:https://pan.quark.cn/s/1b0e2c5f865d

有想报考oscp的读者可以咨询作者,我们泷羽sec目前正在做oscp培训,泷老师带着打100+台靶机,同时还有直播讲解知识点。

现邀请读者参加我们的帮会,99元即可享受到超多红队工具以及各种资料,包括但不限于"照妖镜"、免杀教程、免杀工具、以及安卓免杀工具(不定期上线)

通过以下二维码进帮会可以私聊笔者

还有很多poc以及一些二开的工具

相关推荐
vvw&15 分钟前
如何在 Ubuntu 22.04 上安装 Caddy Web 服务器教程
linux·运维·服务器·前端·ubuntu·web·caddy
A charmer1 小时前
Linux 进程入门:带你走进操作系统的核心地带(1)
linux·运维·服务器
金增辉1 小时前
Linux 虚拟机与windows主机之间的文件传输--设置共享文件夹方式
linux·运维·服务器
xweiran2 小时前
CAS操作的底层原理(总线锁定机制和缓存锁定机制 )
java·cas·处理器·总线锁定·缓存锁定
Miraitowa_cheems2 小时前
[JavaEE] Spring IoC&DI
java·spring·java-ee
V+zmm101342 小时前
基于微信小程序的水果销售系统的设计与实现springboot+论文源码调试讲解
java·微信小程序·小程序·毕业设计·springboot
头发那是一根不剩了2 小时前
java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
java
小白起 v2 小时前
三天学完微服务其二
java·微服务·架构
落日弥漫的橘_2 小时前
npm run 运行项目报错:Cannot resolve the ‘pnmp‘ package manager
前端·vue.js·npm·node.js
梦里小白龙2 小时前
npm发布流程说明
前端·npm·node.js