工业互联网服务器安全配置新手实操,从零锁紧生产环境

工业互联网环境下的服务器一旦被攻破,可能导致整个生产线瘫痪。
下面这套配置方案,我做了不下百次,零基础跟着走也能搞定。

零基础需要准备的几样东西

  • 一台已安装 Linux(推荐 Ubuntu 20.04 或 CentOS 7+)的服务器,能通过 SSH 连上。
  • 本地电脑上的 SSH 客户端(Windows 用 Xshell 或 PuTTY,Mac/Linux 直接用终端)。
  • 一个域名或者 IP 地址,以及 root 密码。

如果你用的是云服务器,先登录云平台控制台放行 22 端口 暂时用于操作,后面我们会改成其他端口。

一步一步锁紧 SSH 登录

第一步:创建普通用户并赋予 sudo 权限

登录 root 后执行:

adduser opsadmin
passwd opsadmin
usermod -aG sudo opsadmin

这里 opsadmin 就是你以后日常使用的用户,密码要设置得复杂一些。

第二步:配置 SSH 密钥登录(禁用密码)

在本地生成密钥对(回车默认即可):

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

然后把公钥传到服务器:

ssh-copy-id opsadmin@你的服务器IP

接着修改 SSH 配置文件:

sudo vim /etc/ssh/sshd_config

找到并修改以下三项:

  • PermitRootLogin no(禁止 root 直接 SSH)
  • PasswordAuthentication no(关闭密码登录,只允许密钥)
  • Port 2222(改掉默认的22端口,降低被扫风险)

修改后保存,重启 SSH 服务:

sudo systemctl restart sshd
注意:改端口后,你的 SSH 连接命令要加上 -p 2222,比如 ssh opsadmin@服务器IP -p 2222。建议不要退出当前会话,先另开一个终端测试新配置是否正常。

第三步:配置防火墙只放行业务端口

使用 ufw(Ubuntu)或 firewall-cmd(CentOS)都行,这里以 ufw 为例:

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp  comment 'SSH'
sudo ufw allow 80/tcp     comment 'HTTP'
sudo ufw allow 443/tcp    comment 'HTTPS'
sudo ufw --force enable
sudo ufw status verbose

记得把 2222 换成你实际设置的 SSH 端口。
如果你的工业应用还需要其他端口(比如 MQTT 1883),同样用 allow 放行。

第四步:安装 Fail2ban 防暴力破解

sudo apt update
sudo apt install fail2ban -y
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo vim /etc/fail2ban/jail.local

[sshd] 部分设置:

enabled = true
port = 2222
filter = sshd
maxretry = 3
bantime = 3600

保存后启动:

sudo systemctl enable fail2ban
sudo systemctl start fail2ban

这样,任何 IP 在 1 小时内尝试失败 3 次就会被自动拉黑。

容易被忽略的配置陷阱

  • 改 SSH 端口后忘记放行防火墙:导致自己被锁在外面。解决方案是:先在防火墙放行新端口,再修改 SSH 配置。
  • 密钥文件权限不对:服务器上 ~/.ssh 目录权限必须是 700,authorized_keys 文件必须是 600。可以用 chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys 修复。
  • Fail2ban 没有生效:检查日志 sudo journalctl -u fail2ban,看是否加载了 sshd jail。
  • 工业协议端口暴露过多:只放行业务需要的端口,不要一次性 ufw allow 1:65535/tcp

最后一步:验证你的安全配置是否生效

  1. 检查 SSH 配置:尝试用 root 密码登录,应该被拒绝;尝试用错误密钥登录,应被拒绝。
  2. 检查端口扫描结果:在本地用 nmap -p 2222 你的服务器IP,应该能看到 2222 端口 open,其他未放行端口为 filtered。
  3. 测试 Fail2ban:连续用错误密码 SSH 3 次,然后立刻再用正确密钥登录,如果被 ban 会提示连接超时,可以用 sudo fail2ban-client status sshd 查看被封 IP。
  4. 查看系统日志sudo tail -f /var/log/auth.log 可以实时看到登录尝试记录,确认只有正确的操作被允许。

遇到异常时,优先回看上面的避坑部分,大部分问题都是配置顺序或权限引起的。
工业互联网服务器的安全没有终点,建议每季度复查一次安全配置,及时更新系统补丁。

分享到:
上一篇
物联网安全设备接入防护:零基础配置教程
下一篇
零基础入门:自动化测试脚本编写实战教程
1
系统公告

高考专属福利来袭|凭准考证免费领香港 CN2 云服务器

值高考落幕之际,泽御云开启考生专属回馈 + 产品限时特惠双重活动,助力学子暑期学习建站 高考 考生专属福利 全体应届高考生,凭高考准考证即可免费申领【香港 CN2 轻量云服务器,4 核 4G AMD 处理器】,免费使用周期 30 天,可用于搭建个人站点、编程实操、技术实训,祝各位考生金榜题名,前程似锦! 泽御云资质齐全合规自营机房,线路覆盖香港 CN2、国内 BGP、内蒙电信、美国精品线路,售后全天候技术支持。 官方网站:www.zeyuyun.com,活动限时有效,优惠逾期不再保留。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意