200字
数字孪生服务器交付
2026-02-26
2026-03-04

深圳某局,数字孪生项目。数据存储服务器做基本配置(yum源、端口放行),将渲染主机与数据存储服务器同时接入内网中。供SaaS业务部署。

网络口配置

nmcli device status 
#ens33、eth0的网卡名

单网口先DHCP获取ip,之后绑定固定ip:

# 1. 删除原有同名连接(避免冲突)
nmcli connection delete enp125s0f0 2>/dev/null
​
# 2. 创建以太网连接,设置为 DHCP 自动获取
nmcli connection add \
  type ethernet \
  con-name enp125s0f0 \
  ifname enp125s0f0 \
  ipv4.method auto \
  autoconnect yes
​
# 3. 激活连接(立即生效)
nmcli connection up enp125s0f0
​
# 4. 验证配置
nmcli connection show enp125s0f0 | grep ipv4
# 1. 删除原有同名连接
nmcli connection delete enp125s0f0 2>/dev/null
​
# 2. 创建静态 IP 连接(核心配置)
nmcli connection add \
  type ethernet \
  con-name enp125s0f0 \
  ifname enp125s0f0 \
  ipv4.addresses 172.x.x.48/24 \
  ipv4.gateway 172.x.x.1 \
  ipv4.dns "223.5.5.5,223.6.6.6" \
  ipv4.method manual \
  autoconnect yes
​
# 3. 激活连接
nmcli connection up enp125s0f0
​
# 4. 验证 IP 是否生效
ip addr show enp125s0f0

bond配置(可选)

#bond4配置
nmcli connection add type bond con-name bond4 ifname bond4 bond.options "mode=802.3ad"
#设置 bonding 的核心参数:仅指定绑定模式为802.3ad(动态链路聚合)
​
nmcli connection add type ethernet con-name bond4-slave1 ifname enp189sf0 master bond4
nmcli connection add type ethernet con-name bond4-slave2 ifname enp189sf1 master bond4
​
sudo nmcli connection modify bond4 ipv4.addresses 192.168.6.100 ipv4.gateway 192.168.6.1 ipv4.method manual
​
sudo nmcli connection up bond4
​
# 设置DNS
nmcli connection modify bond4 ipv4.dns "223.5.5.5,223.6.6.6"
​
#输出bond的mac地址
ip link bond4
​
cat /proc/net/bonding/bond4
#查看:两个 Slave Interface: 

ip addr show <网卡名>  # 确认IP已生效
ping -c 3 192.168.1.1  # 测试网关连通性

配置 yum 源

阿里yum源

  1. 备份原配置

    cd /etc/yum.repos.d/ && mkdir -p backup && mv *.repo backup/

  2. 创建新的 repo 文件

    vi /etc/yum.repos.d/openEuler.repo
    [OS]
    name=openEuler-22.03-LTS-SP2 - OS
    baseurl=https://mirrors.aliyun.com/openeuler/openEuler-22.03-LTS-SP2/OS/aarch64/
    enabled=1
    gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/openeuler/openEuler-22.03-LTS-SP2/OS/aarch64/RPM-GPG-KEY-openEuler
    ​
    [everything]
    name=openEuler-22.03-LTS-SP2 - everything
    baseurl=https://mirrors.aliyun.com/openeuler/openEuler-22.03-LTS-SP2/everything/aarch64/
    enabled=1
    gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/openeuler/openEuler-22.03-LTS-SP2/everything/aarch64/RPM-GPG-KEY-openEuler

  1. 清理并生成缓存

    yum clean all && yum makecache

  2. 验证配置

    yum repolist

配置本地yum

# 创建挂载点
mkdir -p /mnt/openeuler_iso
# 写入fstab实现开机自动挂载
echo "/opt/openEuler-22.03-LTS-aarch64-SP2-everything.iso /mnt/openeuler_iso iso9660 defaults,loop 0 0" >> /etc/fstab
# 立即挂载,无需重启
mount -a
# 验证挂载
df -h | grep openeuler_iso

# 备份原有repo
cd /etc/yum.repos.d/
mkdir -p backup && mv *.repo backup/
# 创建本地源配置
cat > /etc/yum.repos.d/local_iso.repo << 'EOF'
[local-iso-OS]
name=openEuler-22.03-LTS-SP2 aarch64 OS - Local ISO
baseurl=file:///mnt/openeuler_iso/OS
enabled=1
gpgcheck=1
gpgkey=file:///mnt/openeuler_iso/OS/RPM-GPG-KEY-openEuler
​
[local-iso-everything]
name=openEuler-22.03-LTS-SP2 aarch64 everything - Local ISO
baseurl=file:///mnt/openeuler_iso/everything
enabled=1
gpgcheck=1
gpgkey=file:///mnt/openeuler_iso/everything/RPM-GPG-KEY-openEuler
EOF
# 清理缓存并生成新缓存
yum clean all && yum makecache
# 验证源有效性
yum repolist  # 显示OS和everything仓库即成功

端口放行

开启ssh

#禁用SElinux
vim /etc/selinux/config
# SELINUX=enforcing   开启
SELINUX=disabled
​
setenforce 1
# 验证状态(显示Enforcing即成功)
getenforce
​
#关闭防火墙
systemctl disable firewalld.service --now
​
#ssh端口号
vim /etc/ssh/sshd_config     
port 22
PermitRootLogin yes  
PasswordAuthentication yes
​
​
#重启服务
# CentOS/RHEL 7+/Rocky Linux/AlmaLinux
sudo systemctl restart sshd
# Debian/Ubuntu
sudo systemctl restart ssh
​
# 测试 root 登录
ssh root@服务器IP -p 77

开启防火墙,端口

#检查 firewalld 状态
systemctl status firewalld
​
# 立即开启firewalld
systemctl start firewalld
# 设置开机自动启动(避免重启失效)
systemctl enable firewalld
# 再次验证状态(确保active running)
systemctl status firewalld

放行端口

直接执行批量放行命令,包含你需要的所有端口,永久生效

# 批量放行指定TCP端口
firewall-cmd --add-port=11/tcp --permanent
firewall-cmd --add-port=12/tcp --permanent
firewall-cmd --add-port=13/tcp --permanent
firewall-cmd --add-port=14/tcp --permanent
firewall-cmd --add-port=15/tcp --permanent
# 放行53478(TCP+UDP,重点)
firewall-cmd --add-port=16/tcp --permanent
firewall-cmd --add-port=17/udp --permanent
​
firewall-cmd --add-port=22/tcp --permanent
# 重新加载防火墙规则,使配置生效
firewall-cmd --reload
# 验证放行结果(必做,确认所有端口都在列表中)
firewall-cmd --list-ports
​
#回显
11/tcp 12/tcp 13/tcp 14/tcp 15/tcp 16/tcp 17/udp

检查 SELinux 当前状态,端口放行

#检查 SELinux 当前状态
getenforce

# 编辑配置文件
vi /etc/selinux/config

SELINUX=enforcing #强制模式(默认) 1. 严格执行所有 SELinux 规则
        disabled  #禁用模式

policycoreutils-python-utils

policycoreutils-python-utilsSELinux(安全增强型 Linux) 策略管理的Python 工具扩展包,依赖于核心包 policycoreutils,专门提供一系列实用的命令行工具,用于配置、调试和管理 SELinux 规则。

简单来说:SELinux 是 Linux 的安全防火墙(比 iptables/firewalld 更底层),而这个工具包就是「操作 SELinux 规则的瑞士军刀」。

yum install -y policycoreutils-python-utils
​
# 放行 8080 端口(firewalld 层面)
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload
​
# 放行 8080 端口(SELinux 层面,依赖该工具包)
semanage port -a -t http_port_t -p tcp 8080

如果不装这个包,执行 semanage 会提示「命令未找到」,导致 SELinux 层面的端口放行失败。

验证

# 1. 验证firewalld运行状态
echo "=== firewalld 状态 ==="
systemctl status firewalld | grep Active
# 2. 验证firewalld端口放行
echo -e "\n=== firewalld 放行端口 ==="
firewall-cmd --list-ports
# 3. 验证SELinux状态
echo -e "\n=== SELinux 状态 ==="
getenforce
# 4. 验证SELinux端口放行
echo -e "\n=== SELinux 放行端口 ==="
semanage port -l | grep -E "11|12|13|14|15|16|17"

firewalld 显示 Active: active (running)

firewalld 放行端口包含所有配置的 TCP/UDP 端口;

SELinux 显示 Enforcing

SELinux 端口列表包含所有配置的端口。

重启

# 验证firewalld自启
systemctl status firewalld
# 验证SELinux强制模式
getenforce
# 验证所有端口放行
firewall-cmd --list-ports
semanage port -l | grep -E "11|12|13|14|15|16|17"

Docker内部网络,与服务器ip冲突

安装 Docker 前,先检查宿主机网络网段,避免使用 172.16.0.0/12 段内的地址。

若企业内网使用 172.16.x.x,务必在安装 Docker 时就自定义网桥网段,不要用默认值。

1. 临时验证(先恢复网络)

先停止 Docker 服务,看网络是否恢复:

sudo systemctl stop docker

然后重新尝试 SSH 连接。如果恢复正常,说明确实是 Docker 网络冲突。

2. 永久修改 Docker 网桥网段

  1. 停止 Docker 服务:

    sudo systemctl stop docker
  2. 编辑 Docker 守护进程配置文件:

    sudo nano /etc/docker/daemon.json
  3. 添加或修改

    bip 配置,选择一个与 172.16.x.x 不冲突的网段,例如 192.168.100.1/24

    {
      "bip": "192.168.100.1/24"
    }

  4. 重启 Docker 服务:

    sudo systemctl start docker

3. 检查并删除冲突路由

如果修改网段后仍有问题,手动删除错误路由:

ip route show  # 查看路由表
sudo ip route del 172.16.0.0/12  # 删除冲突的路由条目


数字孪生服务器交付
作者
roche
发表于
2026-02-26
License
CC BY-NC-SA 4.0