目录
CSDN 原创主页:不羁https://blog.csdn.net/2303_76492156?type=blog
编写日期:2025 年 03 月 17 日
一、基础网络信息获取
1. 网络接口配置
# 查看所有网络接口状态(替代ifconfig)
ip addr show
# 激活/禁用网络接口
sudo ip link set dev eth0 up
sudo ip link set dev eth0 down
# 设置静态IP地址(CentOS 8+)
sudo nmcli connection modify eth0 ipv4.addresses "192.168.1.100/24"
sudo nmcli connection modify eth0 ipv4.gateway "192.168.1.1"
sudo nmcli connection modify eth0 ipv4.dns "8.8.8.8"
sudo nmcli connection up eth0
在 Ubuntu 中检查你的 IP 地址(终端方式)
检查 IP 地址的最快和最简单的方法是使用 命令。你可以按以下方式使用此命令:
ip addr show
它将同时显示 IPv4 和 IPv6 地址:
实际上,你可以进一步缩短这个命令 :
ip a #它会给你完全相同的结果。
如果你希望获得最少的细节,也可以使用 :
hostname -I
还有一在 Linux 中检查 IP 地址的方法,但是这两个命令足以满足这个目的。
使用ifconfig查询IP地址如何呢?
老用户可能会想要使用 (ifconfig网络工具软件包的一部分),但该程序已被弃用。一些较新的 Linux 发行版不再包含此软件包,如果你尝试运行它,你将看到 ifconfig 命令未找到的错误。详情了解: 放弃 ifconfig,拥抱 ip 命令 | Linux 中国
但实际上ifconfig这个软件包相较而言,对于大多数用户的使用更为熟悉与便捷,时至今日仍被大家广泛使用。
2. 路由表管理
# 查看路由表
ip route show
# 添加静态路由
sudo ip route add 10.0.0.0/24 via 192.168.1.1
# 删除路由
sudo ip route del 10.0.0.0/24
3. 服务端口监控
使用前,需“ sudo apt install net-tools ” 。
# 查看所有TCP连接
netstat -tunap
# 查看指定端口占用
lsof -i :80
# 更高效的替代方案(推荐)
ss -tunelp | grep 80
二、网络监控与分析
1. 实时流量监控
使用前,需“ sudo apt install iftop ” 。
# 实时显示网络带宽使用情况
iftop -P
# 监控指定接口流量
nload eth0
# 流量统计(MB单位)
vnstat -i eth0 -h
2. 数据包捕获
# 基本抓包(抓取eth0接口80端口的HTTP流量)
tcpdump -i eth0 port 80 -n -tttt
# 保存数据包到文件
tcpdump -i eth0 -w capture.pcap port 443
# 过滤并显示特定协议
tcpdump -i eth0 'tcp port 80 and (tcp[13] & 0x18) != 0'
3. 网络协议分析
# 分析HTTP请求头部
tshark -r capture.pcap -Y "http.request" -T fields -e http.request.method -e http.request.uri
# 解析DNS查询
driftnet -i eth0 -a # 实时捕获网络图片
三、渗透测试工具集
1. 端口扫描
# 全端口扫描(SYN半开扫描)
nmap -sS -p- -T4 -v 192.168.1.100
# 服务版本探测
nmap -sV -A 192.168.1.100
# 隐蔽扫描(FIN扫描)
nmap -sF -p 22,80,443 192.168.1.100
2. 漏洞利用
# Metasploit框架基础使用
msfconsole
msf > use exploit/multi/handler
msf > set payload linux/x86/meterpreter/reverse_tcp
msf > set LHOST 192.168.1.101
msf > exploit
3. 密码破解
# 离线破解shadow文件
john --wordlist=/usr/share/wordlists/rockyou.txt /etc/shadow
# 暴力破解SSH
hydra -l root -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.100
四、日志审计与分析
1. 系统日志处理
# 实时监控安全日志
tail -f /var/log/secure
# 查找登录失败记录
grep "Failed password" /var/log/secure | awk '{print $11}' | sort | uniq -c
# 统计访问量前10的IP
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head -n 10
2. 入侵检测
# 查找异常SUID文件
find / -type f -perm -4000 2>/dev/null
# 检查隐藏进程
ps -eo pid,ppid,user,%mem,%cpu,command | grep -v 'grep' | awk '!/bash|sshd|systemd/'
3. 日志分析工具
# 分析Apache日志
logwatch --service httpd --detail high
# 生成安全审计报告
aide --check
五、权限管理与加固
1. 文件权限控制
# 设置文件权限(rwxr-x---)
chmod 750 /var/www/html/secret.txt
# 递归修改目录权限
chmod -R 755 /var/www/
# 查看文件ACL权限
getfacl /etc/shadow
2. 用户管理
# 创建受限用户
useradd -m -s /sbin/nologin -c "Restricted User" restricted_user
# 查看sudo权限
sudo -l
# 禁止root远程登录
sed -i 's/^PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
3. 防火墙配置
# UFW基础操作(Ubuntu)
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
# iptables高级规则
sudo iptables -A INPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
六、自动化脚本实践
1. 网络巡检脚本
#!/bin/bash
# 检查开放端口
echo "开放端口检查:"
ss -tunelp | grep -v 'Foreign Address'
# 检查SUID文件
echo -e "\n异常SUID文件:"
find / -type f -perm -4000 2>/dev/null
# 检查root用户进程
echo -e "\nRoot进程列表:"
ps -eo pid,ppid,user,%mem,%cpu,command | grep root
2. 日志监控报警
#!/bin/bash
LOG_FILE="/var/log/secure"
SEARCH_TERM="Failed password"
while true; do
COUNT=$(grep -c "$SEARCH_TERM" "$LOG_FILE")
if [ "$COUNT" -gt 10 ]; then
echo "警告:发现异常登录尝试!" | mail -s "Security Alert" admin@example.com
fi
sleep 60
done
七、高级安全实践
1. 蜜罐部署
# 安装Honeyd
sudo apt-get install honeyd
# 配置蜜罐
sudo nano /etc/honeyd/honeyd.conf
# 添加虚拟主机配置
create dummy
set dummy default tcp action reset
set dummy default udp action reset
add dummy tcp port 22
2. 网络流量镜像
# 配置端口镜像(需要交换机支持)
sudo tc qdisc add dev eth0 ingress
sudo tc filter add dev eth0 parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev eth1
八、学习资源推荐
- 官方文档:Linux man pages
- 命令速查:tldr-pages
- 实战社区:Hacker News
注意事项
- 执行敏感命令前需确认权限
- 定期更新系统和工具
- 保留操作日志以备审计
- 测试环境与生产环境严格隔离
本手册涵盖了 Linux 网络安全领域的核心命令,建议结合实际场景进行练习。掌握这些工具将显著提升网络安全运维和渗透测试能力。