linux主机安全加固-个人经验
说明:我并没有一个系统的网络安全知识体系,随笔里面提到的内容是个人在从事运维行业这几年中总结出来的一点经验,仅供大家参考。
说到linux主机安全加固,我可以想到的就是三个方向吧,基线整改、访问控制和主机漏洞修复。运维小伙伴在做基线整改、设置访问策略或者修复主机漏洞前需要考虑的一个问题是这样操作后是否会对业务造成影响,所以在做安全加固前,一定要做好验证,相应的回退方案也要准备好。
(1)基线整改
基线扫描报告一般是由各安全厂商给出,比如绿盟、安恒、启明星辰等等,使用安全产品或离线脚本等对目标主机进行扫描,扫描完成后生成基线报告,关于基线报告的内容大家可以自行百度,一般报告中会包含“口令策略”、“系统服务”、“文件权限”、“日志审计”等等几个大类,每个大类下面还会有一些具体基线项,针对每一项会有该项的检查结果、判定依据、检查点和加固方案等内容。下图是启明星辰的基线检查报告中的部分内容。

基线检查报告中我们需要关注的就是检查结果为“不合规”的检查项。然后根据检查点和加固方案进行整改。
(2)访问控制
linux主机的访问控制包括:账号管理、配置iptables、文件权限管理。下面我主要说一下关于iptables如何进行规划和配置。
配置iptables:很多运维场景其实是内网服务器iptables全部关闭,selinux全部disabled,并没有做好每台主机的防火墙策略。假如给你一个工作,让你独立规划某个业务平台(10台主机)的防火墙策略,你该如何下手?
我的经验:
①确认每台主机上部署了什么中间件,比如tomcat、mysql、kafka、redis、自研程序,开启了哪些端口。我常用的命令是 netstat 和 lsof 这两个命令结合起来进行分析。举个栗子:
以message-1服务器上kafka服务为例:通过netstat命令查看到该服务器上开启9092端口
root@message-1:~# netstat -tlunp | grep 9092
tcp6 0 0 192.168.66.95:9092 :::* LISTEN 16437/java
root@message-1:~#
然后,我们想看下现在9092端口都有哪些连接 ,我们可以用lsof命令查看,可以看到 public-1和public-2同message-1建立连接的,
root@message-1:~# lsof -i:9092
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 16437 root 97u IPv6 58655 0t0 TCP message-1:9092 (LISTEN)
java 16437 root 114u IPv6 158945 0t0 TCP message-1:9092->public-2:44528 (ESTABLISHED)
java 16437 root 157u IPv6 79706 0t0 TCP message-1:9092->public-1:55198 (ESTABLISHED)
java 16437 root 158u IPv6 79990 0t0 TCP message-1:9092->public-1:19143 (ESTABLISHED)
java 16437 root 186u IPv6 73525 0t0 TCP message-1:9092->public-2:3933 (ESTABLISHED)
java 16437 root 187u IPv6 73449 0t0 TCP message-1:9092->public-1:37570 (ESTABLISHED)
java 16437 root 188u IPv6 73526 0t0 TCP message-1:9092->public-2:44505 (ESTABLISHED)
java 16437 root 189u IPv6 73451 0t0 TCP message-1:9092->public-1:42576 (ESTABLISHED)
java 16437 root 194u IPv6 158973 0t0 TCP message-1:9092->public-1:46261 (ESTABLISHED)
java 16437 root 212u IPv6 79713 0t0 TCP message-1:9092->public-1:3805 (ESTABLISHED)
java 16437 root 213u IPv6 79712 0t0 TCP message-1:9092->public-1:39880 (ESTABLISHED)
java 16437 root 214u IPv6 79714 0t0 TCP message-1:9092->public-1:37571 (ESTABLISHED)
java 16437 root 215u IPv6 79715 0t0 TCP message-1:9092->public-1:62056 (ESTABLISHED)
java 16437 root 217u IPv6 79716 0t0 TCP message-1:9092->public-1:34639 (ESTABLISHED)
java 16437 root 218u IPv6 79717 0t0 TCP message-1:9092->public-1:1315 (ESTABLISHED)
java 16437 root 219u IPv6 79718 0t0 TCP message-1:9092->public-1:12077 (ESTABLISHED)
java 16437 root 220u IPv6 79719 0t0 TCP message-1:9092->public-1:54739 (ESTABLISHED)
java 16437 root 221u IPv6 79720 0t0 TCP message-1:9092->public-1:62374 (ESTABLISHED)
java 16437 root 222u IPv6 73527 0t0 TCP message-1:9092->public-2:14295 (ESTABLISHED)
java 16437 root 223u IPv6 77294 0t0 TCP message-1:9092->public-1:22867 (ESTABLISHED)
java 16437 root 224u IPv6 72642 0t0 TCP message-1:9092->public-1:38827 (ESTABLISHED)
java 16437 root 225u IPv6 72643 0t0 TCP message-1:9092->public-1:34489 (ESTABLISHED)
java 16437 root 226u IPv6 79930 0t0 TCP message-1:9092->public-1:25297 (ESTABLISHED)
java 16437 root 230u IPv6 73341 0t0 TCP message-1:9092->public-1:44317 (ESTABLISHED)
java 16437 root 231u IPv6 81406 0t0 TCP message-1:9092->public-2:64640 (ESTABLISHED)
java 16437 root 233u IPv6 80129 0t0 TCP message-1:9092->public-1:42729 (ESTABLISHED)
java 16437 root 234u IPv6 80130 0t0 TCP message-1:9092->public-1:38797 (ESTABLISHED)
java 16437 root 235u IPv6 73452 0t0 TCP message-1:9092->public-1:30003 (ESTABLISHED)
java 16437 root 236u IPv6 77295 0t0 TCP message-1:9092->public-1:27578 (ESTABLISHED)
java 16437 root 237u IPv6 77296 0t0 TCP message-1:9092->public-1:11596 (ESTABLISHED)
java 16437 root 238u IPv6 77297 0t0 TCP message-1:9092->public-1:57318 (ESTABLISHED)
java 16437 root 240u IPv6 77298 0t0 TCP message-1:9092->public-1:13398 (ESTABLISHED)
java 16437 root 241u IPv6 80132 0t0 TCP message-1:9092->public-1:51598 (ESTABLISHED)
java 16437 root 242u IPv6 80133 0t0 TCP message-1:9092->public-1:8571 (ESTABLISHED)
java 16437 root 243u IPv6 80134 0t0 TCP message-1:9092->public-1:38849 (ESTABLISHED)
java 16437 root 244u IPv6 80135 0t0 TCP message-1:9092->public-1:58260 (ESTABLISHED)
java 16437 root 246u IPv6 80162 0t0 TCP message-1:9092->public-1:27890 (ESTABLISHED)
java 16437 root 247u IPv6 80163 0t0 TCP message-1:9092->public-1:24008 (ESTABLISHED)
java 16437 root 253u IPv6 83011 0t0 TCP message-1:9092->public-2:50076 (ESTABLISHED)
java 16437 root 254u IPv6 83012 0t0 TCP message-1:9092->public-2:8293 (ESTABLISHED)
java 16437 root 255u IPv6 83013 0t0 TCP message-1:9092->public-2:55405 (ESTABLISHED)
java 16437 root 256u IPv6 83014 0t0 TCP message-1:9092->public-2:25186 (ESTABLISHED)
java 16437 root 257u IPv6 83015 0t0 TCP message-1:9092->public-2:55834 (ESTABLISHED)
java 16437 root 258u IPv6 83016 0t0 TCP message-1:9092->public-2:14103 (ESTABLISHED)
java 16437 root 259u IPv6 83017 0t0 TCP message-1:9092->public-2:51100 (ESTABLISHED)
java 16437 root 260u IPv6 73528 0t0 TCP message-1:9092->public-2:11548 (ESTABLISHED)
java 16437 root 261u IPv6 73529 0t0 TCP message-1:9092->public-2:6708 (ESTABLISHED)
java 16437 root 262u IPv6 83018 0t0 TCP message-1:9092->public-2:55665 (ESTABLISHED)
java 16437 root 266u IPv6 73538 0t0 TCP message-1:9092->public-2:27084 (ESTABLISHED)
root@message-1:~#
这时我们就知道public节点上有某个程序和message节点上的9092端口有建立连接。知道这些就够了,这时message节点上的iptable的策略就是
| 配置主机 | src ip | src port | dst ip | dst port | protocol |
| message-1 | public主机ip | any | message主机ip | any | tcp |
②这样每台主机的防火墙策略就梳理出来了,然后按照梳理出来的策略编写iptable规则,配置然后进行验证,就可以了。注意首先应该放开的策略就是 ssh端口。当然你可能说我不放开会有问题吗?没有问题,就是服务器ssh连不上,然后被别人笑一下,被领导说一顿而已,问题不大。
③每台主机配置iptables规则时,出方向一般是不做限制的。只是针对入方向进行限制。
④有的同学可能会说了,iptable太复杂了,什么三表五链,很难。其实只需要在INPUT链上配置好相应的规则,你就可以完美处理好上面的工作。
(3)主机漏洞修复
关于主机漏洞修复,其实我也没有那么多经验,主要是根据主机漏洞报告进行整改,报告提出问题,谷歌给出答案,就这样。
其实修复主机漏洞我遇到的解决途径主要以下几个:
(1)升级中间件版本:最常见的就是 openssh漏洞、tomcat漏洞、mysql漏洞等等
(2)修改中间件配置
(3)修改主机配置
做为运维人员还是要根据具体问题,寻找相应的解决办法。
linux主机安全加固-个人经验的更多相关文章
- Linux主机操作系统加固规范
对于企业来说,安全加固是一门必做的安全措施.主要分为:账号安全.认证授权.协议安全.审计安全.总的来说,就是4A(统一安全管理平台解决方案),账号管理.认证管理.授权管理.审计管理.用漏洞扫描工具 ...
- 线上Linux服务器运维安全策略经验分享
线上Linux服务器运维安全策略经验分享 https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&a ...
- Linux服务器运维安全策略经验分享
http://jxtm.jzu.cn/?p=3692 大家好,我是南非蚂蚁,今天跟大家分享的主题是:线上Linux服务器运维安全策略经验.安全是IT行业一个老生常谈的话题了,从之前的“棱镜门”事件中折 ...
- 【微学堂】线上Linux服务器运维安全策略经验分享
技术转载:https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&sn=6d403ab4 ...
- Linux主机上使用交叉编译移植u-boot到树莓派
0环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS: Debian Jes ...
- Linux主机上实现树莓派的交叉编译及文件传输,远程登陆
0.环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS:官网下的的raspb ...
- Linux系统安全加固(一)
Linux系统安全加固(一) 去年8月,某所网站遭黑客攻击瘫痪虽然港交所随后及时启用备用系统,但还是致使7支股票1支债卷被迫停牌,次日再次遭受攻击而瘫痪:在去年年底继CSDN信息安全出现之后, ...
- Linux主机共享目录给Windows主机的方法
Linux主机共享目录可以通过samba来实现 首先,来看下百科上关于samba的介绍: Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Ser ...
- 远程联机linux主机
远程联机linux主机 推荐使用 ssh 如 ssh user@www.abc.com(ssh使用公钥+私钥非对称加密,数据传输安全,不要使用telnet) 传输文件:sftp 或者 scp 若想使 ...
随机推荐
- 小白自学vue的第一天,加油!
一.插值的操作 1.Mustache语法 也就是双大括号(翻译过来就是胡须的意思) 2.v-once指令 加了v-once数据不会随着数据的改变而改变,只会渲染一次 3.v-html指令 可以解析HT ...
- Java流程控制06——break continue
- 使用 Service Worker 缓解网站 DDOS 攻击
前言 传统的 DDOS 防御开销很大,而且有时效果并不好. 例如使用 DNS 切换故障 IP 的方案,由于域名会受到缓存等因素的影响通常有分钟级延时,前端难以快速生效.例如使用 CDN 服务,虽可抵挡 ...
- 【Vulhub】Rsync未授权访问漏洞复现
Rsync未授权访问 Rsync简介 rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限.时间.软硬链接等附加信息 ...
- L298N的接线和详细使用方法
文章说明: 名词概念(为了方便易懂,我就通俗的表达): 逻辑电压:控制板子执行程序的电压. 驱动电压:输出口AB的电压. 逻辑电流:驱动板执行程序的电流. 驱动电流:输出口AB的电流. 本人调试此款L ...
- 题解 Omeed
传送门 差了一点没想到正解-- 首先单次询问的 \(O(n)\) 写法很好想,考虑如何优化 首先基础分区间求和即可 然后那个连击分的话,是一个关于 \(f_i\) 和 \(f_{i-1}\) 的柿子 ...
- 项目报错:Invalid bound statement (not found):
出现这种错误有好多种情况,常见的错误有以下这些: 1.检查xml文件所在package名称是否和Mapper interface所在的包名 <mapper namespace="com ...
- ATM取款机优化需求的用例设计
案例设计需求 有一个ATM取款系统,现对于取款功能进行了如何需求变更:碑只能取面额是100元(如取500,输出5张100元),现在功能修改为,可以取面额是10元.50元和100元的,其余功能不变,用户 ...
- 如何快速排查发现redis的bigkey?4种方案一次性给到你!
本篇文章将以redis的bigkey为主题进行技术展开,通过从认识redis的高性能,bigkey的危害.存在原因.4种解决方案,到模拟实战演练的介绍方式,来跟大家一起认识.探讨和学习redis. 先 ...
- 从350ms到80ms,揭秘阿里工程师 iOS 短视频优化方案
内容作为 App 产品新的促活点,受到了越来越多的重视与投入,短视频则是增加用户粘性.增加用户停留时长的一把利器.短视频的内容与体验直接关系到用户是否愿意长时停留,盒马也提出全链路内容视频化的规划,以 ...