在当今数字化时代,Linux作为一种强大的开源操作系统,凭借其高度的灵活性、安全性和稳定性,已成为服务器环境和技术专业人士的首选平台。本文将为读者提供Linux系统管理的一些实用命令,从网络配置到系统监控,从文件操作到安全管理,帮助您更高效地掌握Linux运维。
目录
公众号来源:猕猴桃实验室 => 转载请注明“转载于公众号:猕猴桃实验室”

微信公众号:猕猴桃实验室
网络管理基础
网络配置是Linux系统管理的核心部分。通过使用一系列命令工具,管理员可以全面了解和控制系统的网络状态:
-
• 使用
watch ss -tp
和netstat -tulpn
实时监控网络连接状态 -
• 通过
ifconfig
或ip addr
查看及修改网络接口配置 -
• 利用
dig
和host
命令进行DNS查询和域名解析 -
• 设置网关路由使用
route add default gw [IP]
对于网络调试,Linux提供了强大的数据包捕获工具,如tcpdump
,允许管理员深入分析网络流量:
tcpdump -i eth0 -XX -w out.pcap # 捕获eth0接口流量并保存到文件
tcpdump -i eth0 port 80 dst 2.2.2.2 # 捕获特定目标和端口的流量
系统信息与监控
了解系统状态对于维护服务器健康至关重要。Linux提供多种工具来查看系统信息:
-
•
uname -a
显示内核信息 -
•
cat /etc/*release*
查看发行版信息 -
•
df -h
和du -sh
分别检查磁盘空间和目录大小 -
•
ps -ef
和top
监控进程活动 -
•
free -m
查看内存使用情况 -
•
lpstat -a
查看是否存在打印机
系统日志是故障排除的重要资源,通常存储在/var/log
目录下:
cat /var/log/syslog # 查看系统日志
cat /var/log/auth.log # 查看认证日志
grep "ERROR" /var/log/apache2/error.log # 搜索Apache错误日志
文件系统操作
Linux继承了UNIX的核心设计理念——"一切皆文件"。这种设计方法提供了一个统一的接口,使系统能够以相同的方式处理各种不同类型的资源:无论是存储在磁盘上的文档、连接的外部设备、网络连接,甚至是进程间通信,都被抽象为字节流并通过文件系统访问。这一哲学让Linux系统保持了简洁而强大的用户体验。目录结构:系统的骨架Linux采用树状层级结构组织文件系统,以根目录(/
)为起点,向下分支扩展。这种结构不仅便于管理,还提供了清晰的导航路径。每个目录都有其特定用途:
-
•
/bin
和/sbin
:存放系统运行所需的基本命令和管理工具 -
•
/etc
:包含系统配置文件,是系统管理员经常访问的区域 -
•
/home
:用户个人文件的存储位置,每个用户拥有自己的子目录 -
•
/proc
和/sys
:提供系统和进程信息的虚拟文件系统,实时反映系统状态 -
•
/dev
:设备文件目录,Linux在此创建设备节点以访问硬件 -
•
/tmp
:供所有用户存放临时文件,系统定期清理
这种结构使系统组件和用户数据得到有效分离,增强了系统的稳定性和安全性
基本文件操作
-
• 创建、查看、编辑文件:
touch
、cat
、nano
/vim
-
• 目录管理:
mkdir
创建,rmdir
或rm -rf
删除 - • 文件压缩与解压:
tar czf archive.tar.gz files/ # 创建gzip压缩归档 tar xf archive.tar # 解压tar文件
高级文件功能
- • 使用
find
搜索文件:find / -name "*.log" -type f # 查找所有log文件 find / -perm -4000 -type f # 查找SUID文件(安全审计)
- • 文件链接管理:
ln -s target_file link_name # 创建软链接 ln target_file link_name # 创建硬链接
-
• 文件权限设置:
chmod
、chown
和chattr
用户与权限管理
安全管理始于严格的用户权限控制:
-
• 用户管理:
useradd
、passwd
、usermod
-
• 查看当前用户信息:
id
、who
、w
、last
-
• 权限提升:
sudo
和su
- • 检查敏感文件权限:
ls -l /etc/shadow # 查看密码文件权限 find /etc -perm -o+w # 查找可被其他用户写入的配置文件
-
• 查看具有root权限的进程
-
ps aux | grep root
ps -ef | grep root
服务管理与自启动配置
不同发行版有不同的服务管理工具:
- • 在基于Debian的系统(如Ubuntu)上:
service apache2 status # 检查服务状态 update-rc.d apache2 defaults # 设置开机自启
- • 在基于Red Hat的系统(如CentOS)上:
chkconfig --list # 列出所有服务启动状态 chkconfig httpd on # 设置服务开机自启
- • 现代systemd系统:
systemctl status sshd # 检查服务状态 systemctl enable nginx # 设置开机自启
-
• 查看本机任务计划
-
crontab -l
ls -alh /var/spool/cron
ls -al /etc/ | grep cron
ls -al /etc/cron*
cat /etc/cron*
cat /etc/at.allow
cat /etc/at.deny
cat /etc/cron.allow
cat /etc/cron.deny
cat /etc/crontab
cat /etc/anacrontab
cat /var/spool/cron/crontabs/root
网络安全与防火墙
iptables是Linux的核心防火墙工具,用于网络流量过滤和NAT:
# 列出当前防火墙规则
iptables -L -v --line-numbers
# 允许SSH连接
iptables -A INPUT -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
# 阻止某IP地址
iptables -A INPUT -s malicious_ip -j DROP
# 禁止IP段访问
iptables -A INPUT -s 1.1.1.0/24 -j DROP
# 阻断指定IP和端口流量
tcpkill host 192.168.1.100 port 80
#端口转发
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.0.0.2:80
系统安全与审计
安全审计是系统管理的重要组成部分:
- • 查找特权文件:
find / -perm -u=s -type f # 查找SUID文件 find / -perm -g=s -type f # 查找SGID文件
- • 检查可写目录:
find / -writable -type d 2>/dev/null # 查找全局可写目录
- • 检查无主文件:
find / -xdev \( -nouser -o -nogroup \) -print # 查找无主文件
-
• 操作痕迹被攻击者清除
-
命令 | 说明 |
history -c | 清除当前会话命令历史 |
echo "" > ~/.bash_history | 清空用户历史记录文件 |
ln /dev/null ~/.bash_history | 永久禁用历史记录 |
-
• 查找可能存在用户名和密码的文本
grep -i user [filename]
grep -i pass [filename]
grep -C 5 “password” [filename]
find . -name “*.php” -print0 | xargs -0 grep -i -n “var $password” # Joomla
-
• 查看相关目录的隐藏文件
ls -ahlR /root/
ls -ahlR /home
高效工作的Shell技巧
掌握这些Shell技巧可大幅提高工作效率:
- • 使用
screen
或tmux
管理多会话#Screen多会话 screen -S session_name # 创建新会话 Ctrl+a d # 分离会话
-
• 设置别名简化常用命令:
alias ll='ls -la'
- • 使用管道组合命令:
cat large_file.log | grep "ERROR" | wc -l # 计算错误出现次数
-
• 重定向输出:
command > file.txt 2>&1
-
• 使用
watch
命令定期执行:watch -n 5 'ps aux | grep httpd'
自动化脚本示例1:
#域名解析扫描
#!/bin/bash
for ip in {1..254}; do
host 192.168.1.$ip | grep "name pointer"
done
自动化脚本示例2:
#DNS反向解析
for ip in {1 .. 254 .. 1}; do dig -x l.l.l.$ip | grep $ip dns.txt; done;
数据处理工具
Linux提供强大的文本处理工具:
- •
grep
用于文本搜索:grep -r "password" /var/www/ # 递归搜索含password的文件 grep -v "^#" /etc/ssh/sshd_config # 显示非注释行
- •
sort
用于数据排序:sort -t':' -k3 -n /etc/passwd # 按UID数值排序 du -sh * | sort -hr # 按文件大小降序显示
-
•
awk
和sed
用于高级文本处理
注意事项
-
1. 权限管理:慎用
rm -rf
,避免误删系统文件。 -
2. 安全命令:操作如
kill -9
或:(){ :|:& };:
或痕迹清理需谨慎,可能影响系统稳定性。 -
3. 脚本安全:执行未知脚本前建议审核代码,防止恶意操作。
结语
Linux系统的强大之处在于其灵活性和可定制性。通过深入了解和熟练掌握本文介绍的命令和技术,管理员可以构建高效、安全且稳定的系统环境。随着经验的积累,您将能够应对各种系统管理挑战和安全风险,并充分发挥Linux的潜力。
> 拓展阅读:《Linux Shell脚本攻略(第2版)》
参考:
-
https://www.digitalocean.com/community/tutorials/linux-commands
-
https://bjpcjp.github.io/pdfs/devops/linux-commands-handbook.pdf
-
https://docs.fab.lse.ac.uk/docs/linux-commands/
免责声明:
文章中涉及的内容可能带有攻击性、损害性,请注意识别。文章内容仅能用于安全检测、安全防御、安全研究等合法合规的用途,请勿用作其它方面。若有违反,违反者将自行承担相应法律责任及连带责任,违反者的行为与本文章内容的创作者无关。请遵守相关法律法规,共同维护网络环境的清朗!如有问题可私信联系,望知悉。
往期回顾:
社区交流订阅: