Linux 安全与运维排查

笔记/Linux/Linux 基础/Linux 安全与运维排查

对应 Linux 面试题 50 道 第 26–33 题。

初始化安全加固#

新机器上线建议 checklist:

步骤说明
1创建普通用户,禁止 root 远程 SSH 登录,修改 SSH 端口
2使用密钥登录,禁用密码登录
3开启防火墙(firewalld/iptables),按业务设规则;SELinux 按需求配置
4安装 fail2ban 防 SSH 暴力破解
5限制仅公司出口 IP 或 VPN 可访问
6限制 history 条数(如 10 条)
7仅必要服务器开放外网访问
8Web 层:nginx_waf 防注入;应用以 www 用户运行,目录属主改为 www
Terminal window
# 示例:禁止 root SSH 登录
sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
systemctl restart sshd

CC 攻击与 DDOS 攻击#

  • CC 攻击(Challenge Collapsar):模拟大量用户频繁访问页面,消耗 CPU/内存/连接数
  • DDOS 攻击(Distributed Denial of Service):多台机器联合发起大量请求,占满带宽或服务资源

防御手段

  • 硬件/云防火墙流量清洗,攻击流量引入黑洞
  • 向 ISP/云厂商购买 DDoS 防护服务
  • 应用层:限流、验证码、CDN 分散流量

CC/DDOS 通常无法仅靠单机软件完全防御,需要基础设施层配合。

SQL 注入#

原理:程序员拼接 SQL 时未校验用户输入,攻击者提交恶意 SQL 获取未授权数据。

特点:从正常 Web 端口访问,表面与普通请求无异;若管理员不查日志,可能长期未被发现。

防护

  1. 预编译 + 参数绑定(MyBatis #{}、JDBC PreparedStatement)
  2. 输入校验与过滤
  3. 最小权限数据库账户
  4. WAF(如 nginx_waf)做额外过滤
  5. 定期审计日志

→ Java 侧详见 MySQL 面试题 中 SQL 注入相关题目。

版本选择与主机规划#

版本选择(2020 年代常见实践):

  • 互联网公司服务器:CentOS 7/8 或迁移至 Rocky Linux / AlmaLinux
  • 桌面开发:Ubuntu
  • 高安全场景:Debian

主机规划步骤

  1. 明确用途(Web、DB、缓存、消息队列),决定 CPU/内存/磁盘/带宽
  2. 确定分区方案(/boot//varswap 等)
  3. 优化内核参数、创建业务用户、配置监控与备份

网站访问慢:排查与解决#

可能原因#

原因排查方式
出口带宽不足云监控看带宽使用率;跨运营商测试
服务器负载高uptimetop 看 CPU/内存;sar -n DEV 看网卡
数据库瓶颈慢查询日志;SHOW PROCESSLIST
代码未优化浏览器 Network 面板;APM 工具

排查流程#

用户反馈慢
自己访问测试 → 快:用户端问题(网络/浏览器)
→ 慢:继续排查
浏览器 DevTools → 定位慢资源(图片/API/JS)
服务器监控 → CPU/内存/磁盘/带宽
应用日志 + MySQL 慢查询
针对性优化

常见解决方案#

  1. 加大出口带宽
  2. SQL 优化 + 索引
  3. 加 Redis 缓存
  4. MySQL 主从读写分离
  5. 上 CDN
  6. 架构拆分:Web / API / DB / 缓存 专机部署
Terminal window
# 快速排查命令组合
uptime # 系统负载
top -bn1 | head -20 # CPU/内存 TOP 进程
free -h # 内存
df -h # 磁盘
ss -s # 连接统计
tail -100 /var/log/nginx/access.log # Web 访问日志

性能调优方向#

  1. 关闭不必要的 daemonssystemctl disable xxx
  2. 服务器关闭 GUIsystemctl set-default multi-user.target
  3. 内核参数/etc/sysctl.conf(如 net.core.somaxconnvm.swappiness
  4. 处理器:CPU 亲和性、进程优先级
  5. 内存:调整 Swap 策略,避免过度换页
  6. 文件系统:选择合适的 FS(ext4/xfs),调整挂载参数
  7. 网络:TCP 参数调优(连接数、缓冲区大小)

调优原则:先定位瓶颈再优化,避免盲目改参数。用监控数据(Prometheus、云监控)验证效果。

文章目录

文章目录