资讯动态

告别踩坑!手把手教你用VMware在CentOS 8.5上配置静态IP和关闭SELinux(保姆级图文)

发布时间:2026/8/30 22:32:03 来源:尧图企业网站定制
从零到实战CentOS 8.5基础运维配置全指南刚完成CentOS 8.5系统安装的兴奋感还没消退你可能就遇到了第一个拦路虎——为什么我的服务器无法远程连接为什么网络时断时续这些问题往往让新手措手不及。本文将带你一步步解决这些安装后遗症让你的系统真正达到可用状态。1. 网络配置静态IP设置详解CentOS 8.5与早期版本在网络配置上有显著差异特别是引入了NetworkManager的nmcli工具作为主要网络管理方式。我们先来理解几个关键概念NetworkManager新一代网络管理服务取代了传统的network服务nmcliNetworkManager的命令行接口连接(connection)网络配置的逻辑表示可以绑定到特定接口要查看当前网络接口信息可以使用以下命令nmcli connection show典型的输出可能如下NAME UUID TYPE DEVICE ens33 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ethernet ens331.1 配置静态IP地址假设我们要为ens33接口配置静态IP以下是详细步骤首先查看当前连接属性nmcli connection show ens33修改IP配置假设我们要设置为192.168.1.100/24网关192.168.1.1nmcli connection modify ens33 ipv4.addresses 192.168.1.100/24 nmcli connection modify ens33 ipv4.gateway 192.168.1.1 nmcli connection modify ens33 ipv4.dns 8.8.8.8 8.8.4.4 nmcli connection modify ens33 ipv4.method manual应用配置并重启连接nmcli connection down ens33 nmcli connection up ens33注意在生产环境中建议先备份原始配置可以使用nmcli connection export ens33 ens33_backup.nmconnection命令。1.2 验证网络配置配置完成后使用以下命令验证ip addr show ens33 ping -c 4 192.168.1.1如果一切正常你应该能看到配置的IP地址并且能够ping通网关。2. 防火墙与SELinux管理2.1 防火墙配置CentOS 8使用firewalld作为默认防火墙。对于开发环境我们可能需要临时或永久关闭防火墙临时关闭systemctl stop firewalld永久关闭systemctl disable firewalld如果只需要开放特定端口如SSH的22端口更安全的方式是firewall-cmd --permanent --add-servicessh firewall-cmd --reload2.2 SELinux管理SELinux是Linux的安全子系统但在开发环境中可能会带来不便。查看当前状态getenforce可能的返回值Enforcing强制执行安全策略Permissive仅记录违规不阻止Disabled完全禁用临时设置为Permissive模式setenforce 0永久禁用需要重启编辑配置文件vi /etc/selinux/config修改为SELINUXdisabled重要提示在生产环境中建议保持SELinux为Enforcing模式并学习正确配置策略而不是直接禁用它。3. 远程访问配置3.1 SSH服务优化默认安装后SSH服务可能不允许root登录或密码认证。编辑SSH配置vi /etc/ssh/sshd_config常见修改项PermitRootLogin yes PasswordAuthentication yes然后重启服务systemctl restart sshd3.2 密钥认证设置更安全的方式是使用密钥认证在客户端生成密钥对ssh-keygen -t rsa将公钥复制到服务器ssh-copy-id root服务器IP在服务器上禁用密码认证PasswordAuthentication no4. 系统优化与常用工具4.1 基础工具安装dnf install -y epel-release dnf install -y vim wget curl net-tools lsof telnet4.2 系统更新dnf update -y4.3 时间同步dnf install -y chrony systemctl enable --now chronyd chronyc sources4.4 性能监控工具dnf install -y htop iotop iftop nmon5. 常见问题排查5.1 网络连接问题检查步骤物理连接是否正常IP配置是否正确防火墙是否阻止路由是否可达常用命令ip addr ip route ping traceroute netstat -tulnp5.2 SSH连接失败可能原因服务未启动防火墙阻止SELinux阻止配置文件错误检查命令systemctl status sshd journalctl -u sshd -f5.3 服务启动失败查看日志journalctl -xe检查依赖systemctl list-dependencies 服务名6. 进阶配置6.1 网络绑定Bonding创建绑定接口nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup添加从属接口nmcli connection add type bond-slave ifname ens33 master bond0 nmcli connection add type bond-slave ifname ens34 master bond06.2 网络桥接创建桥接nmcli connection add type bridge con-name br0 ifname br0添加接口nmcli connection add type bridge-slave ifname ens33 master br06.3 磁盘管理查看磁盘lsblk fdisk -l格式化磁盘mkfs.xfs /dev/sdb1挂载磁盘mkdir /data mount /dev/sdb1 /data永久挂载echo /dev/sdb1 /data xfs defaults 0 0 /etc/fstab7. 安全加固建议虽然我们为了方便关闭了一些安全功能但在生产环境中应该保持防火墙开启只开放必要端口使用SELinux的targeted策略禁用root的SSH登录使用密钥认证代替密码定期更新系统配置日志监控设置强密码策略实现这些安全措施的命令# 密码策略 vi /etc/security/pwquality.conf # 设置 minlen 12 dcredit -1 ucredit -1 ocredit -1 lcredit -1 # 日志配置 vi /etc/rsyslog.conf systemctl restart rsyslog8. 备份与恢复8.1 重要配置文件备份mkdir /backup cp -a /etc /backup/etc-$(date %F)8.2 系统快照如果使用LVM可以创建快照lvcreate -s -n snap_root -L 1G /dev/centos/root8.3 定时备份设置cron任务crontab -e # 添加 0 2 * * * /usr/bin/rsync -a /etc /backup/etc-$(date \%F)9. 性能调优9.1 内核参数调整编辑sysctl配置vi /etc/sysctl.conf常见优化参数net.ipv4.tcp_fin_timeout 30 net.ipv4.tcp_tw_reuse 1 net.ipv4.ip_local_port_range 1024 65000 net.core.somaxconn 32768应用更改sysctl -p9.2 文件系统优化对于XFS文件系统mkfs.xfs -f -i size512 -l size128m,lazy-count1 -d agcount16 /dev/sdb19.3 服务优化禁用不需要的服务systemctl list-unit-files | grep enabled systemctl disable 不需要的服务10. 容器化支持10.1 Podman安装CentOS 8默认包含Podmandnf install -y podman10.2 Docker兼容性设置如果需要docker-clidnf install -y docker-ce docker-ce-cli systemctl disable docker使用podman-docker兼容层ln -s /usr/bin/podman /usr/bin/docker10.3 基本容器操作运行容器podman run -d --name nginx -p 8080:80 nginx查看容器podman ps进入容器podman exec -it nginx /bin/bash11. 开发环境配置11.1 Python环境CentOS 8默认安装Python 3.6dnf install -y python3 python3-devel安装pipcurl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python3 get-pip.py11.2 Java环境安装OpenJDKdnf install -y java-11-openjdk-devel设置环境变量echo export JAVA_HOME/usr/lib/jvm/java-11-openjdk /etc/profile source /etc/profile11.3 Node.js环境安装Node.js 14dnf module install -y nodejs:1412. 监控与告警12.1 基础监控安装sysstatdnf install -y sysstat systemctl enable --now sysstat查看报告sar -u 1 512.2 日志监控安装logwatchdnf install -y logwatch配置日报/usr/sbin/logwatch --output mail --format html --detail high12.3 进程监控使用htophtop关键指标CPU使用率内存使用磁盘I/O网络流量13. 自动化运维13.1 Ansible安装dnf install -y ansible13.2 基础Playbook示例创建playbook.yml--- - hosts: all become: yes tasks: - name: Ensure nginx is installed dnf: name: nginx state: present - name: Ensure nginx is running service: name: nginx state: started enabled: yes运行playbookansible-playbook -i inventory.ini playbook.yml13.3 定时任务管理使用Ansible管理cron- name: Add daily backup job cron: name: Daily backup minute: 0 hour: 2 job: /usr/bin/rsync -a /etc /backup/etc-$(date \%F)14. 虚拟化支持14.1 KVM安装dnf install -y qemu-kvm libvirt virt-install virt-viewer systemctl enable --now libvirtd14.2 创建虚拟机virt-install \ --name centos8 \ --ram 2048 \ --vcpus 2 \ --disk size20 \ --os-variant centos8 \ --network bridgebr0 \ --graphics none \ --console pty,target_typeserial \ --location /path/to/centos8.iso14.3 虚拟机管理查看虚拟机列表virsh list --all启动虚拟机virsh start centos815. 故障恢复15.1 单用户模式如果系统无法正常启动在启动时按e编辑启动参数在linux行末尾添加rd.break按Ctrlx启动挂载并修改mount -o remount,rw /sysroot chroot /sysroot passwd root touch /.autorelabel exit reboot15.2 救援模式使用安装ISO进入救援模式从ISO启动选择Troubleshooting Rescue a CentOS system按照提示操作15.3 重要文件恢复从备份恢复/etcrsync -a /backup/etc-2023-01-01/ /etc/16. 系统清理16.1 清理缓存dnf clean all16.2 清理日志journalctl --vacuum-time7d16.3 清理临时文件rm -rf /tmp/*17. 文档与帮助17.1 手册页查看命令帮助man nmcli17.2 系统文档CentOS文档dnf install -y centos-release-docs17.3 在线资源CentOS官方WikiRed Hat文档大部分适用于CentOSStack Overflow官方邮件列表18. 社区支持18.1 论坛与邮件列表CentOS官方论坛Red Hat开发者社区Server Fault18.2 本地用户组查找本地Linux用户组# 可以尝试在Meetup或其他社区平台搜索18.3 专业支持对于生产环境考虑购买Red Hat订阅雇佣专业Linux管理员使用托管服务19. 持续学习建议19.1 推荐书籍《Linux命令行与shell脚本编程大全》《鸟哥的Linux私房菜》《UNIX环境高级编程》19.2 在线课程Red Hat官方培训Linux Foundation课程Udemy/Coursera上的Linux课程19.3 认证路径RHCSARed Hat认证系统管理员LFCSLinux基金会认证系统管理员CompTIA Linux20. 实际应用案例20.1 Web服务器配置安装LAMP栈dnf install -y httpd mariadb-server php php-mysqlnd systemctl enable --now httpd mariadb20.2 数据库服务器MySQL安全配置mysql_secure_installation20.3 文件服务器安装Sambadnf install -y samba配置共享vi /etc/samba/smb.conf添加[share] path /srv/share writable yes browsable yes guest ok yes创建目录并设置权限mkdir -p /srv/share chmod 777 /srv/share systemctl enable --now smb

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价