当前位置: 首页 > article >正文

基于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以及一些二开的工具

图片

图片


http://www.kler.cn/a/472326.html

相关文章:

  • Vscode辅助编码AI神器continue插件
  • esp32开发笔记之一:esp32开发环境搭建vscode+ubuntu
  • WebRTC 在视频联网平台中的应用:开启实时通信新篇章
  • spring boot 多数据源集成mysql、postgresql、phoenix、doris等
  • 23.行号没有了怎么办 滚动条没有了怎么办 C#例子
  • Spring Boot教程之五十一:Spring Boot – CrudRepository 示例
  • 理解PDF文档的力量:使用LLM与RAG的本地应用
  • 大语言模型提示技巧(五)-推断
  • 引领实时数据分析新时代:阿里云实时数仓 Hologres
  • Netron可视化深度学习的模型框架,大大降低了大模型的学习门槛
  • 使用ElasticSearch查询
  • Redis的内存预分配策略
  • Ungoogled Chromium127 编译指南 MacOS篇(六)- 获取源代码
  • 用Rust构建高性能WebAssembly模块:性能调优与实际案例
  • 【网络安全技术与应用】(选修)实验4 网络扫描
  • android 启动页倒计时页面编写
  • 【Qt】QtConcurrent
  • 【UE5 C++课程系列笔记】21——弱指针的简单使用
  • 回归预测 | MATLAB实ELM-Adaboost多输入单输出回归预测
  • Mono里运行C#脚本23—mono_jit_exec
  • Python 批量生成Word 合同
  • xss-labs(level11-20)【通关技巧】
  • el-table 使用el-form 表单验证
  • STM32学习(十)
  • 嵌入式入门Day38
  • Android Process 问题:NoSuchMethodError,No static method myProcessName()