当前位置:首页>Linux>Linux安全学习路线:从0基础到服务器加固,网络安全工程师必修课

Linux安全学习路线:从0基础到服务器加固,网络安全工程师必修课

  • 2026-10-11 07:02:27
Linux安全学习路线:从0基础到服务器加固,网络安全工程师必修课

点击蓝字 关注CH1N安全

WINTER

免责声明

请勿利用文章内的相关技术从事非法测试,此文章只用于学习记录,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。

Part.1

为什么网络安全工程师必须学习Linux

上一篇文章,我们详细拆解了:一次渗透测试是怎么做的?五大阶段全流程。

其实,对于网络安全工程师来说:Linux不是简单的操作系统,而是安全人员必须掌握的一项基础能力。

无论是渗透测试中的信息收集和漏洞验证、获取权限后的服务器分析、企业安全运维、网络安全事件应急响应,Linux始终贯穿整个安全工作流程。

很多新人学习网络安全时,会优先关注BurpSuite、Nmap、Xray、Metasploit、Cobalt Strike;但是工具只是手段。真正进入企业安全岗位后,你面对更多的是,Linux Web服务器、数据库服务器、云主机环境、企业业务系统。

如果不了解Linux,你可能知道漏洞名称,不知道漏洞利用后服务器发生了什么;你可能能够扫描漏洞,但不会分析攻击痕迹;你可能拿到了权限,但不知道如何进行后续排查。所以:Linux安全,是网络安全工程师从“工具使用者”成长为“安全人员”的必经阶段。

Part.2

Linux安全完整学习路线

Linux安全学习可以分为六个阶段:

下面我们逐个拆解,看看每个阶段具体做什么、怎么做。

1

Linux基础操作

这是Linux安全学习的第一步。

目标:能够熟练使用Linux命令环境,并理解系统基本结构。

1.Linux环境搭建

推荐学习环境:

Ubuntu

特点:社区资源丰富、学习资料多、上手简单。

Kali Linux

特点:网络安全人员常用环境,内置大量安全工具:Nmap、BurpSuite、Metasploit、Wireshark

💡 建议使用VMware搭建虚拟机环境,通过快照功能方便实验。

2.Linux环境搭建

类别

常用命令

作用

文件操作

ls、cd、cp、mv、rm

文件管理

文件查询

find、locate

定位文件

文本处理

grep、awk、sed

日志分析

进程管理

ps、top

查看进程

网络管理

ss、ping、curl

网络排查

权限管理

chmod、chown

权限控制

学习Linux不要只记命令,要结合安全场景理解。

例如:

ps -ef命令普通用户使用:查看运行程序;安全人员使用:排查木马进挖矿程序、异常服务。

3.vim编辑器基础

至少掌握以下操作:

  • 三种模式切换(普通模式、插入模式、命令模式)

  • 文件打开、保存、退出(:wq、:q)

  • 基本编辑操作(i插入、dd删除行、/搜索)

💡 Vim是Linux下最常用的文本编辑器,在远程服务器上修改配置文件时几乎都会用到。至少学会基本操作,能让你在关键时刻不卡壳。

2

用户与权限管理:

这是Linux安全最核心的部分。 权限管理是Linux系统安全和资源管控的基石。错误的权限设置,轻则导致“Permission Denied”,重则引发数据泄露或系统崩溃。

1.用户和组管理

掌握以下操作:

命令

用途

user add/userdel

创建/删除用户

usermod

修改用户账户信息

groupadd/groupdel

创建/删除用户组

passwd

管理用户密码

id

查看用户UID/GID信息

who/w

查看当前登录用户

安全要点:

  • 检查并清理非登录账号(grep"/sbin/nologin$" /etc/passwd )

  • 锁定长期未使用的账号(usermod -L 用户名)

  • 保护关键账号文件(chattr +i /etc/passwd /etc/shadow)

2.文件权限管理

Linux的权限体系围绕读(r)、写(w)、执行(x) 三种权限展开,分别对应所有者(u)、所属组(g)、其他人(o)

核心命令

  • chmod:修改文件权限(如chmod 755 filename)

  • chown:修改文件和所有者和所属组(如chown user:group filename)

  • setfacl / getfacl:更细粒度的权限控制

关键文件权限配置:

chmod 644 /etc/passwdchmod 644 /etc/groupchmod 400 /etc/shadow      # 只允许root读取chmod 400 /etc/gshadow

3.sudo权限管理

  • visduo:编辑sudoers文件,控制谁可以用sudo执行什么命令

  • 核心规则:日常操作使用普通用户,需要时通过sudo提取

4.密码安全策略

配置密码复杂度、有效期和失败锁定(等保中要求)

# 密码有效期(/etc/login.defs) 、PASS_MAX_DAYS 90    #最大90天过期PASS_MIN_DAYS 7       #最少7天才能更改PASS_WARN_AGE 7     # 提前7天警告# 密码复杂度(/etc/pam.d/system-auth) password requisite pam_cracklib.so minlen=8 dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1# 要求:至少8位,包含数字、大写、小写、特殊字符各至少1个

3

日志分析与安全监控:

没有日志的安全事件就是猜谜。日志分析是发现入侵、追溯攻击的核心能力。

1. 系统日志位置

日志文件

用途

/var/log/auth.log

(Ubuntu/Debin)

认证和授权信息

/var/log/secure

(Centos/RHEL)

认证和授权信息

/var/log/syslog

系统通用日志

/var/log/cron

定时任务日志

/var/log/btmp

登录失败记录

(lastb查看)

/var/log/wtmp

登录失败记录

(last查看)

2.日志分析核心命令

查找暴力破解攻击:

# 统计SSH登录失败次数journalctl -u ssh | grep "Failed password" | wc -l# 提取攻击者IP并排序journalctl -u ssh | grep "Failed password" | awk '{print $(NF-3)}' | sort | uniq -c | sort -nr

查看异常登录:

# 查看近期登录记录last# 查看登录失败记录lastb# 实时监控认证日志tail -f /var/log/auth.log

排查异常进程:

# 查看CPU占用最高的进程top# 查看所有进程ps -ef# 查看网络连接状态netstat -anoss -tuln

3.日志管理工具:

  • journalctl:管理系统日志(如journalctl -u sshd查看SSH服务日志)

  • rsyslog:日志服务,确保已启用(systemctl enable rsyslog)

4

系统安全加固与防御:

从“能用”走向“安全”。这一阶段学习如何主动防御攻击。

1.SSH加固

SSH是服务器最常见的入口,必须重点保护

ssh_config关键配置:

# /etc/ssh/sshd_configPermitRootLogin no           # 禁止root远程登录PasswordAuthentication no    # 禁止密码登录,强制使用密钥PubkeyAuthentication yes     # 启用公钥认证AllowUsers admin             # 只允许特定用户登录

2.防火墙配置

使用 iptables 或 firewalld 控制网络流量

iptables基础规则:

# 查看当前规则iptables -L -n -v# 允许SSH(22端口)iptables -A INPUT -p tcp --dport 22 -j ACCEPT# 允许HTTP(80端口)和HTTPS(443端口)iptables -A INPUT -p tcp --dport 80 -j ACCEPTiptables -A INPUT -p tcp --dport 443 -j ACCEPT# 默认拒绝所有其他入站连接iptables -P INPUT DROP

3. 强制访问控制(MAC)

SELinux(Red Hat/CentOS系列)和AppArmor(Ubuntu/Debian系列)是Linux的强制访问控制系统,能有效限制进程行为

  • SELinux:安全性更强、细粒度更高,但学习曲线陡峭

  • AppArmor:易用性更好,配置相对简单

💡 初学者可以先从AppArmor入手,理解MAC的概念后再深入学习SELinux。

4. 内核安全参数

通过sysctl配置内核参数,阻断常见网络攻击

# /etc/sysctl.d/99-hardening.confnet.ipv4.ip_forward = 0net.ipv4.conf.all.rp_filter = 1net.ipv4.icmp_echo_ignore_broadcasts = 1net.ipv4.conf.all.accept_source_route = 0net.ipv4.tcp_syncookies = 1

Part.3

给Linux安全新手的实战建议

1

搭建自己的实验环境

不要只在虚拟机里敲几个命令就结束。建议:

  • 安装双系统或主力使用Linux,强迫自己日常操作都在Linux下完成

  • 在虚拟机中搭建Web服务器(如LAMP/LNMP),模拟真实业务环境

  • 用Kali Linux练习渗透测试工具

2

 从“会用”到“理解”

不要满足于记住命令。每个命令背后都有安全意义:

  • ls -l 看到的权限位,代表什么安全风险?

  • top 里CPU飙高的进程,是不是挖矿木马?

  • /var/log/auth.1og 里大量的“Failed password”,是不是暴力破解?

把每个命令和“安全场景”关联起来,才能真正掌握Linux安全。

3

 练习入侵排查

模拟以下场景,练习排查能力

  • 查看历史命令(.bash_history),发现异常操作

  • 检查异常端口和进程

  • 排查计划任务(crontab -l),发现恶意任务

  • 检查开机启动项,发现自启动木马

4

 牢记安全基线

在企业环境中,Linux服务器需要满足安全基线要求。

常见的基线配置包括:

  • root远程登录限制

  • 口令生存周期(≤90天)

  • 密码复杂度策略

  • 账户认证失败锁定

  • 重要文件权限配置

  • 日志审计启用

⚠️ 重要提醒: 做安全基线配置时,一定要先备份文件。如果条件允许,先在测试环境操作,避免配置错误导致无法登录系统。

Part.4

一张图总结Linux安全学习路线

关注公众号后台回复关键字“思维导图”获取Linux全流程思维导图

最后,祝大家渗透测试之路越走越顺!如果文章对你有帮助,欢迎点赞、在看、转发,让更多朋友看到。😄

END

长

按

关

注

解锁更多精彩内幕

      CH1N安全公众号

最新文章

随机文章