1. 评估与准备:确定资产与访问边界
步骤:1) 列表化所有日本节点IP/子网、开放端口、运行服务(netstat -tulnp 或 ss -tuln)。2) 确定管理IP白名单(公司公网/VPN出口)。3) 为每台服务器建立一份配置基线文件(包含OS版本、已安装软件、账号清单)。4) 准备SSH密钥对并禁止密码登录:编辑 /etc/ssh/sshd_config,设置 PasswordAuthentication no,重启 sshd:systemctl restart sshd。
2. 网络边界防护:云平台安全组与操作系统防火墙
步骤:1) 在亿速云控制台配置安全组,仅允许必要端口(SSH 22、HTTPS 443、应用端口)来源IP范围。2) 在服务器使用 ufw 或 iptables 强化:示例 ufw 命令:ufw default deny incoming; ufw allow from 你公司IP to any port 22; ufw allow 443/tcp; ufw enable。3) 如果使用 iptables,写明确规则并保存:iptables -A INPUT -p tcp --dport 22 -s 你的网段 -j ACCEPT; iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT; iptables -P INPUT DROP; iptables-save > /etc/iptables/rules.v4。
3. SSH与账户硬化:最小化暴露面
步骤:1) 禁用root直接登录:在 /etc/ssh/sshd_config 中设置 PermitRootLogin no。2) 使用非标准端口(例如 2222)并配合安全组限制来源IP。3) 配置基于密钥登录并为每个用户分配最低权限,使用 sudo 而不是直接提升。4) 定期审计 /home/*/.ssh/authorized_keys 并撤销不再使用的密钥。
4. 入侵检测与阻断:部署fail2ban + Suricata/OSSEC
步骤:A. 安装并配置 fail2ban(针对SSH与常见爆破):
1) apt install fail2ban(或 yum install fail2ban)。2) 在 /etc/fail2ban/jail.local 添加 sshd 区块:[sshd] enabled = true; port = 22; filter = sshd; logpath = /var/log/auth.log; maxretry = 5; bantime = 3600。3) 重启:systemctl restart fail2ban。
B. 部署网络入侵检测 Suricata(基于网络流量):
1) apt install suricata;2) 配置网络接口 /etc/suricata/suricata.yaml,启用 Eve JSON 输出:outputs: - eve-log: enabled: yes filetype: regular filename: /var/log/suricata/eve.json。3) 下载规则:suricata-update;4) 使用 runsuricata 测试并设置 systemd 自启:systemctl enable --now suricata。
C. 主机型IDS(OSSEC/Wazuh)用于文件完整性与rootkit检测:
1) 安装 Wazuh agent 或 OSSEC 并连接到集中管理服务器。2) 启用文件完整性监控(AIDE 或 OSSEC FIM)。3) 配置告警阈值并测试策略。
5. 日志、集中存储与告警:保证可追溯性
步骤:1) 配置 rsyslog 将关键日志(/var/log/auth.log, /var/log/nginx/*.log, /var/log/suricata/eve.json)转发到集中日志服务器:在 /etc/rsyslog.d/50-default.conf 添加:*.* @@logserver.company:514。2) 在日志服务器使用 Elasticsearch+Kibana 或 Graylog 进行索引与可视化。3) 配置监控与告警(Prometheus + Alertmanager 或 Zabbix):监控主机负载、磁盘、Suricata 告警频率、快速增长的失败登录数并设置短信/邮件告警。
6. 备份策略与异地容灾:数据与快照的组合方案
步骤:1) 定义备份策略:关键数据每日增量、每周全量,并保留最近7天增量、4周全量、12个月快照。2) 使用 restic 或 borgbackup 做加密备份到异地对象存储(例如亿速云对象存储或其他S3兼容服务)。restic 示例:restic init -r s3:s3.amazonaws.com/your-bucket;restic backup /var/www --host server-jp --repo s3:...。3) 对于数据库(MySQL/Postgres)使用逻辑备份 + WAL 归档:mysqldump 或 pg_basebackup,或利用 Percona XtraBackup 做物理热备份。4) 定期创建云磁盘快照(控制台 API 或 CLI 调度),并测试从快照恢复流程。
7. 备份验证与恢复演练:确保可用性
步骤:1) 每周在隔离环境执行一次恢复演练:从最近备份恢复文件与数据库,启动服务并验证应用功能。2) 编写恢复步骤文档(恢复时间目标 RTO、恢复点目标 RPO)。3) 使用自动化脚本(Ansible playbook)完成常见恢复流程以减少人为错误。示例:ansible-playbook restore_db.yml --extra-vars "backup_file=/path/to/backup.sql"。
8. 持续维护:补丁、审计与安全基线
步骤:1) 配置自动安全更新或每周检查补丁(apt update && apt upgrade -y);2) 使用配置管理(Ansible/Chef)强制执行安全基线(文件权限、服务禁用、sysctl 内核参数如 net.ipv4.ip_forward=0);3) 定期进行漏洞扫描(Nessus/OpenVAS)与渗透测试,及时修补发现的问题并记录在变更管理中。
9. 常见问答 1 — 问:如何快速检测是否被入侵?
问:如何快速检测是否被入侵? 答:检查异常登录(/var/log/auth.log)、查看系统账户新增、运行 ps aux 检查异常进程、使用 rkhunter/aide 检测文件改动、查看 Suricata/OSSEC 告警、并检查出站网络流量(iftop/netstat)以发现异常连接。
10. 常见问答 2 — 问:在日本节点如何保证备份合规与加密?
问:在日本节点如何保证备份合规与加密? 答:使用端到端加密备份工具(restic/borg)并在传输中使用 TLS;为对象存储启用服务端加密或客户侧加密密钥管理(KMS);记录数据位置与保留策略以满足合规要求,并限制存取权限(IAM)。
11. 常见问答 3 — 问:如何平衡入侵检测告警噪音与漏报?
问:如何平衡入侵检测告警噪音与漏报? 答:初期开启宽松规则并记录一段时间以获取基线,使用白名单与自定义规则过滤正常流量;逐步调优 Suricata/IDS 规则和 OSSEC 策略;将重要告警引到单独渠道并设置不同级别阈值,结合日志关联(SIEM)降低误报。
来源:安全策略亿速云日本服务器地址防护配置包括入侵检测与备份方案