1.
资产盘点与初始风险评估
- 列出所有服务器(物理/虚拟)、IP、操作系统、服务(Web、数据库、邮件等)和存取人员。
- 使用命令获取基本信息:uname -a、lsb_release -a、ss -tuln、docker ps -a。
- 扫描漏洞:在内网环境先用Nmap进行端口发现(nmap -sS -p- x.x.x.x),再用OpenVAS或Nessus做漏洞扫描并生成基线报告。优先修复高危CVE。
2.
网络分段与边界防护配置
- 在交换机/路由器上配置VLAN把管理网络与业务网络隔离,管理网只允许管理员IP。
- 边界防火墙规则示例:仅允许必要端口(80/443、22限管理IP、3306仅DB访问IP)进出。用iptables/nftables示例:iptables -A INPUT -p tcp --dport 22 -s 管理网/32 -j ACCEPT;默认DROP。
- 配置内网微分段,必要时在关键服务间使用私有子网与ACL。
3.
SSH 安全加固步骤
- 禁止密码登录:编辑 /etc/ssh/sshd_config,设置 PasswordAuthentication no、PermitRootLogin no。
- 启用公钥认证:在管理员机器生成密钥 ssh-keygen -t ed25519,然后把公钥追加到服务器 ~/.ssh/authorized_keys,并设置权限 chmod 700 ~/.ssh; chmod 600 ~/.ssh/authorized_keys。
- 限制登录用户:在sshd_config中使用 AllowUsers adminuser@管理网,重启sshd systemctl restart sshd。
4.
账户与权限管理
- 最小权限原则:只创建必要用户,不用root做日常运维。创建sudo用户 useradd -m -s /bin/bash ops && passwd ops,再加入sudoers:visudo,添加 ops ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart httpd(示例)。
- 定期审计与锁定:使用 lastlog、faillog 检查异常登录,设置账户锁定策略(pam_tally2 或 faillock)。
- SSH密钥生命周期管理:密钥年审并撤销不再使用的密钥。
5.
系统与软件补丁管理
- 制定补丁窗口:在低峰时段进行测试和部署,先在测试环境升级。
- 自动化更新:对非关键服务器可以启用 unattended-upgrades(Debian系)或yum-cron(RHEL系),关键系统采用半自动流程,通过Ansible拉取补丁并回滚策略。
- 升级前快照/备份,升级后回归测试并记录版本。
6.
防入侵与暴力破解防护
- 部署fail2ban或CrowdSec,针对SSH、HTTP登录尝试配置策略(fail2ban local jail.d sshd.conf: maxretry 5, bantime 3600)。
- 部署入侵检测:在关键主机安装OSSEC/Wazuh做主机入侵检测并将告警发到集中服务器。
- 外网服务建议放WAF(如ModSecurity、云WAF)以防常见Web攻击。
7.
日志管理与集中化监控
- 收集与集中化:使用Filebeat/Fluentd收集syslog、应用日志,发送到Elastic/Graylog。
- 设置日志轮转 /etc/logrotate.d/*,保证日志不占满磁盘。
- 监控阈值告警:Prometheus + Alertmanager 配置CPU、内存、磁盘、I/O、网络流量及应用健康指标并配置短信/邮件告警。
8.
文件系统与数据加密
- 硬盘加密:对含敏感数据的服务器启用LUKS全盘加密;云主机使用云提供商的磁盘加密。
- 传输加密:所有管理通道使用SSH/SFTP或VPN;Web使用TLS 1.2/1.3,证书用Let’s Encrypt或购买CA证书并自动续期(certbot renew --dry-run)。
- 数据最低暴露:数据库只监听内网,备份加密后存放在异地。
9.
备份与恢复流程
- 备份策略:遵循3-2-1原则(3份数据,2种介质,1份异地)。备份类型区分全量/增量。
- 自动化备份:用rsync+cron或BorgBackup/Restic,示例:restic backup /var/www --repo s3:s3.amazonaws.com/bucket。
- 恢复演练:至少每季度做一次从备份恢复演练并记录RTO/RPO,保证可用性。
10.
容器与应用层安全
- 镜像来源可信:使用官方或经审计的私有镜像仓库,并做镜像签名(Notary)。
- 容器运行限制:使用Docker runtime options设置资源限制(--memory, --cpus),使用user namespaces避免容器以root运行。
- 定期扫描镜像漏洞(Clair/Trivy),并将扫描作为CI/CD的一部分。
11.
监控与日常运维脚本化
- 自动化运维:使用Ansible/Salt管理配置与变更,示例任务:批量修改sshd_config、部署证书、安装监控agent。
- 常用运维脚本:写好检查磁盘、备份状态、服务健康的脚本并放到运维工具库。
- 变更管理:所有变更通过Git记录与审批,生产变更要有回滚步骤与负责人。
12.
合规与物理安全(面向澳门本地场景)
- 合规性考虑:若涉及博彩或金融相关数据,遵守当地法律和行业规范,记录访问日志与审计链。
- 机房物理安全:限制访问、安装摄像头、门禁卡并记录访客;关键服务器使用UPS与冗余网络。
- 数据出境与隐私:明确数据备份/同步位置,若需将数据传出澳门,要评估法律与合规风险。
13.
应急响应与演练
- 制定IR流程:包含检测、隔离、根因分析、恢复、事后复盘五步。每项定义负责人和联系方式。
- 演练频率:每半年做一次桌面演练,每年做一次实操演练(例如备份恢复、故障切换)。
- 保留证据:发生安全事件时,保留日志、网络流量抓包(tcpdump)、系统快照以便溯源。
14.
日常操作清单与建议
- 每日:检查监控告警、备份状态、磁盘空间、关键服务状态(systemctl status)。
- 每周:审计登录记录、更新包列表并测试补丁在非生产环境能否通过。
- 每月:复核用户权限、清理不必要的服务与开端口、扫描漏洞并计划补丁窗口。
15.
问:澳门私人服务器在网络边界应优先做哪些设置?
答:优先做VLAN划分、边界防火墙策略只开放必需端口、管理网限制到固定管理员IP并用VPN访问,必要时部署WAF和入侵检测。
16.
答:如何在不影响业务的情况下实施补丁?
- 在测试环境先升级并回归测试;使用分批升级与滚动重启;升级前备份并准备回滚方案;在流量低峰窗口执行并通知相关方。
17.
问:如果发生数据泄露应如何快速处置?
- 立即隔离受影响主机、保留证据(日志、快照、网络包),启动应急响应流程通知法务与管理层,评估受影响范围并按合规要求通知用户与监管机构,同时开始修复并展开事后复盘。
来源:澳门私人服务器安全加固与日常运维最佳实践