news 2026/3/24 0:32:09

linux主机安全加固指南!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
linux主机安全加固指南!

一、修改密码策略

1、cp /etc/login.defs /etc/login.defs.bak

2、vi /etc/login.defs

PASS_MAX_DAYS 90 (用户的密码不过期最多的天数)

PASS_MIN_DAYS 0 (密码修改之间最小的天数)

PASS_MIN_LEN 8 (密码最小长度)

PASS_WARN_AGE 7 (口令失效前多少天开始通知用户更改密码)

按要求修改这几个密码选项,修改完之后保存(:wq!)退出即可。

二、查看系统是否已设定了正确UMASK值(022)

1、用命令umask查看umask值是否是 022,

如果不是用下面命令进行修改:

cp /etc/profile/etc/profile.bak

/etc/profile

找到 umask 022,修改这个数值即可。

三、锁定系统中不必要的系统用户和组

1、cp /etc/passwd /etc/passwd.bak

cp /etc/shadow /etc/shadow.bak

锁定下列用户

2、for i in adm lp sync news uucp games ftp rpc rpcuser nfsnobody mailnull gdm do

usermod -L $i done

3、检查是否锁定成功

more /etc/shadow 如:lp:!*:13943:0:99999:7:::lp帐户后面有号为已锁定。

4、禁用无关的组:

备份:

cp /etc/group /etc/group.bak

5、编辑: vi /etc/group

在组前面 加#进行注释 参考下面

#lp:x:7:daemon,lp

#uucp:x:14:uucp

#games:x:20:

#ftp:x:50:

#rpc:x:32:

#rpcuser:x:29:

#nfsnobody:x:65534:

#mailnull:x:47:

#gdm:x:42:

6、禁止root用户远程登录

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

vi /etc/ssh/sshd_config文件,将其中的PermitRootLogin改成no,然后重新启动ssh服务 /etc/init.d/sshd restart

四、linux中预防SYN flood

1、备份 cp /etc/sysctl.conf /etc/sysctl.conf.bak

2、编辑vi /etc/sysctl.conf

3、添加net.ipv4.tcp_syncookies = 1

4、保存退出

5、/sbin/sysctl -p 命令使变更生效

五、ARP捆绑IP

1、确认网关IP 和 mac 地址是正确的

2.查看 arp -a

3. echo '210.75.211.254 00:17:0E:5A:AE:C6' > /etc/ethers

4.捆绑 arp -f

5、对比例子:(请参考系统运行的实际情况捆绑前root@beijing238 etc]# arp -a

? (210.75.211.254) at 00:17:0E:5A:AE:C6 [ether] on eth0

捆绑后

? (210.75.211.254) at 00:17:0E:5A:AE:C6 [ether]PERMon eth0

6、设置开机捆绑MAC

备份 开机自启动服务文件cp /etc/rc.d/rc.local /etc/rc.d/rc.local.bak

编辑vi /etc/rc.d/rc.local 添加 arp–f

六、停止无用服务

注意需要根据系统的实际情况和询问管理员那些服务跟业务无关方可停用。

for i in autofs chargen chargen-udp gpm ip6tables isdn kudzu xinetd nfs nfslock pcmcia rhnsd

do

chkconfig --level 2345 $i off service $i stop

done

启动审计服务

for i in audit do

chkconfig --level 2345 $i on service $i start

done

七、系统禁用X-Window系统

1、编辑:

将数值5改为3即可。

八、残留信息保护使.bash_history值保存30个命令,用户退出是自动删 除.bash_history文件

1、 备份:cp /etc/profile /etc/profile.bak

2、编辑vi /etc/profile

HISTFILESIZE=30 (如果没有请自行添加) 修改保存值为30

HISTSIZE=30 修改保存值为30

3、 退出后自动删除个用户的“.bash_history”文件

备份:cp /etc/skel/ .bash_logout /etc/skel/ .bash_logout.bak 编辑:vi /etc/skel/ .bash_logout

在后面添加rm -f $HOME/.bash_history

more /etc/sysctl.conf

九、查看/tmp/var/tmp目录具有粘滞位

1、查看,例如: ls -al / | grep tmp drwxrwxrwt 7 root

2、修改:chmod +t /tmpchmod +t /var/tmp

十、加固TCP/IP协议栈

1、系统当前状态 more /etc/sysctl.conf

检查/etc/sysctl.conf 是否存在以下内容:net.ipv4.tcp_max_syn_backlog = 4096 net.ipv4.conf.all.rp_filter = 1 net.ipv4.conf.all.accept_source_route = 0 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.all.secure_redirects = 0 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.default.accept_source_route = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.conf.default.secure_redirects = 0

2、Vi /etc/sysctl.conf 文件添加或修改下列值。 net.ipv4.tcp_max_syn_backlog = 4096 net.ipv4.conf.all.rp_filter = 1 net.ipv4.conf.all.accept_source_route = 0 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.all.secure_redirects = 0 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.default.accept_source_route = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.conf.default.secure_redirects = 0

注意修改前请备份/etc/sysctl.conf文件,如果对上面参数不清楚的请找相关资料了解。这些 参数应依据实际业务的需要来微调,具体请咨询厂商与业务开发商

十一、 系统重要文件访问权限是否为644600

一般检查/etc/passwd 、/etc/shadow 文件 默认配置如下(可参照此):

# ls -al /etc/passwd /etc/shadow

修改方法:

chmod 644 /etc/shadow

Chmod 600 /etc/passwd

用命令查看chkconfig --list | grep auditd

例如:

[root@linux ~]# chkconfig --list | grep auditd

auditd

0:off

1:off

2:on

3:off

4:on

5:off

6:off

root@linux ~]# service auditd status

auditd is stopped

[root@linux ~]# service auditd restart

Starting auditd: [

OK

]

[root@linux ~]# service auditd status

auditd (pid 32217) is running...

chkconfig --list | grep auditd

auditd

0:off

1:off

2:on

3:on

4:on

5:on

6:off

十三、安全审计

启用计策略,一般对系统的登陆、退出、创建/删除目录、修改密码、添加组、计划任务,添加 完策略后需重启这个服务:service auditd restart

范例:

more /etc/audit/audit.rules

# Enable auditing -e 1

## login configuration and information

-w /etc/login.defs -p wa -k CFG_login.defs -w /etc/securetty -p wa -k CFG_securetty -w /var/log/faillog -p wa -k LOG_faillog -w /var/log/lastlog -p wa -k LOG_lastlog -w /var/log/tallylog -p wa -k LOG_tallylog

## directory operations

#-a entry,always -S mkdir -S mkdirat -S rmdir

## cron configuration & scheduled jobs

-w /etc/cron.allow -p wa -k CFG_cron.allow -w /etc/cron.deny -p wa -k CFG_cron.deny -w /etc/cron.d/ -p wa -k CFG_cron.d

-w /etc/cron.daily/ -p wa -k CFG_cron.daily -w /etc/cron.hourly/ -p wa -k CFG_cron.hourly

-w /etc/cron.monthly/ -p wa -k CFG_cron.monthly -w /etc/cron.weekly/ -p wa -k CFG_cron.weekly -w /etc/crontab -p wa -k CFG_crontab

-w /var/spool/cron/root -k CFG_crontab_root

## user, group, password databases -w /etc/group -p wa -k CFG_group -w /etc/passwd -p wa -k CFG_passwd -w /etc/gshadow -k CFG_gshadow

-w /etc/shadow -k CFG_shadow

-w /etc/security/opasswd -k CFG_opasswd

  • ----- File System audit rules -----
  • Add a watch on "passwd" with the arbitrary filterkey "fk_passwd" that
  • generates records for "reads, writes, executes, and appends" on "passwd" -w /etc/passwd -k fk_passwd -p rwxa
  • Add a watch "shadow" with a NULL filterkey that has permissions
  • filtering turned off

-w /etc/shadow

警告如果在运行守护进程时添加规则/etc/audit/audit.rules,则一定要以根用户身份用

service auditd restart命令启用修改。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/19 10:48:49

通信原理篇---常见的几种部分响应

让我们用「声音接力游戏」来彻底搞懂这几类部分响应。这个比喻会让你瞬间理解它们的区别和妙处。核心比喻:声音接力游戏想象一个游戏:一排人站好,第一个人要悄悄传递一串数字(比如 1 0 1 1)给最后一个人。规则限制&…

作者头像 李华
网站建设 2026/3/21 9:16:35

通信原理篇---第二类部分响应的预编码和相关编码

我们用「带负号的声音接力」这个游戏来彻底搞懂第四类部分响应的预编码和相关编码。这个类比会让你发现它和第一类的精妙差异。核心比喻:带负号的猜数游戏这次的游戏规则变了,更奇特:新规则:我报出的数字 我当前的数字 - 你猜的上…

作者头像 李华
网站建设 2026/3/15 9:12:56

MySQL事务隔离级别:从并发混乱到数据一致性守护者

引言:一个银行系统的并发困境想象一下,你正在开发一个银行转账系统。当用户A向用户B转账时,系统需要执行两个操作:从A账户扣款,向B账户加款。在并发环境下,如果没有适当的控制,可能会发生这样的…

作者头像 李华
网站建设 2026/3/20 7:27:05

【卫星】全球导航卫星系统GNSS中的欺骗与欺骗检测算法,模拟载体在正常GNSS导航和GNSS欺骗攻击下的运动状态,通过IMU+GNSS融合定位,最终实现欺骗检测与结果分析附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和数学建模资料 &#x1f34…

作者头像 李华
网站建设 2026/3/19 18:18:44

在Markdown文档中添加目录的方法

在Markdown文档中添加目录有多种方法,下面介绍几种常用的方式: 一、自动生成目录(部分编辑器/平台支持) 1. 使用 [TOC] 标记(Typora、部分GitHub项目等) [toc] # 标题1 ## 标题2 ### 标题32. 使用插件/扩…

作者头像 李华