Linux服务器配置是确保系统稳定、安全、高效运行的核心工作,涉及系统初始化、网络设置、安全加固、服务部署及性能优化等多个环节,以下从实际操作角度详细展开各步骤的关键配置要点。

系统初始化与基础配置
新服务器部署后,首先需完成系统初始化,登录系统后,更新软件包列表并升级已安装软件:sudo apt update && sudo apt upgrade -y(Ubuntu/Debian)或sudo yum update -y(CentOS/RHEL),接着设置时区,避免日志时间混乱:sudo timedatectl set-timezone Asia/Shanghai,配置主机名可通过sudo hostnamectl set-hostname server-name实现,便于网络识别。
创建独立管理用户(避免直接使用root),执行sudo adduser admin并设置密码,随后赋予sudo权限:编辑/etc/sudoers文件(使用visudo命令安全编辑),添加admin ALL=(ALL) NOPASSWD:ALL,实现无密码sudo提升权限,生成SSH密钥对实现免密登录(本地执行ssh-keygen -t rsa -b 4096,将公钥追加到服务器~/.ssh/authorized_keys),并禁用root远程登录(编辑/etc/ssh/sshd_config,设置PermitRootLogin no,重启SSH服务sudo systemctl restart sshd)。
网络配置
网络是服务器通信的基础,需根据环境配置静态IP或动态获取,以静态IP为例,不同发行版配置文件路径不同:
- Ubuntu/Debian:编辑
/etc/netplan/01-netcfg.yaml,添加以下内容:network: version: 2 ethernets: eth0: dhcp4: no addresses: [192.168.1.100/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 114.114.114.114]执行
sudo netplan apply生效。
- CentOS/RHEL:编辑
/etc/sysconfig/network-scripts/ifcfg-eth0,设置BOOTPROTO=static,添加IPADDR=192.168.1.100、NETMASK=255.255.255.0、GATEWAY=192.168.1.1、DNS1=8.8.8.8,重启网络服务sudo systemctl restart network。
| 发行版 | 网络配置文件路径 | DNS配置文件路径 |
|---|---|---|
| Ubuntu/Debian | /etc/netplan/*.yaml | /etc/resolv.conf |
| CentOS/RHEL | /etc/sysconfig/network-scripts/ifcfg-* | /etc/resolv.conf |
安全加固
安全是服务器配置的重中之重,配置防火墙限制端口访问:Ubuntu/Debian使用ufw,执行sudo ufw default deny incoming、sudo ufw allow 22/tcp(SSH)、sudo ufw allow 80/tcp(HTTP),启用sudo ufw enable;CentOS/RHEL使用firewalld,执行sudo firewall-cmd --permanent --add-service=ssh、sudo firewall-cmd --permanent --add-service=http,sudo firewall-cmd --reload。
启用Fail2ban防止暴力破解,安装后编辑/etc/fail2ban/jail.local,配置[sshd]部分的maxretry=3、bantime=3600,启动服务sudo systemctl enable fail2ban --now,定期更新系统安全补丁,设置自动更新:Ubuntu安装unattended-upgrades(sudo apt install unattended-upgrades),编辑/etc/apt/apt.conf.d/50unattended-upgrades启用安全更新;CentOS使用yum-cron(sudo yum install yum-cron,设置update_cmd=security)。
服务部署与优化
根据业务需求部署服务,常见场景包括Web服务(Nginx/Apache)、数据库(MySQL/PostgreSQL),以Nginx为例,安装sudo apt install nginx(Ubuntu)或sudo yum install nginx(CentOS),启动服务sudo systemctl enable nginx --now,配置虚拟主机时,编辑/etc/nginx/sites-available/default,添加server块指定域名、根目录和端口,测试配置sudo nginx -t后重载sudo systemctl reload nginx。
性能优化需关注内核参数与资源监控,调整文件描述符限制:编辑/etc/security/limits.conf,添加* soft nofile 65535、* hard nofile 65535,重启系统生效,优化TCP参数:编辑/etc/sysctl.conf,添加net.core.somaxconn=4096(监听队列长度)、net.ipv4.tcp_tw_reuse=1(复用TIME_WAIT端口),执行sudo sysctl -p生效,监控工具使用top(实时进程)、htop(交互式,需安装)、nmon(资源占用,需下载),或部署Prometheus+Grafana实现长期监控。

相关问答FAQs
Q1:如何查看Linux服务器的系统负载?
A:可通过以下命令查看:
uptime:显示1/5/15分钟平均负载,如load average: 0.10, 0.20, 0.15表示系统负载较低;top:实时查看进程CPU、内存占用,按P按CPU排序,按M按内存排序;htop(需安装):比top更直观,支持进程树、颜色标识,安装命令sudo apt install htop(Ubuntu)或sudo yum install htop(CentOS)。
Q2:Linux服务器忘记root密码如何重置?
A:以GRUB引导的Linux系统为例:
- 重启服务器,在GRUB菜单界面按
e进入编辑模式; - 找到以
linux16或linux开头的行,末尾添加rd.break,按Ctrl+X启动进入紧急模式; - 执行
mount -o remount,rw /sysroot重新挂载根目录,chroot /sysroot切换到根环境; - 使用
passwd root设置新密码,若启用了SELinux,需执行touch /.autorelabel修复标签; - 执行
exit退出chroot,exit重启系统,新密码即可生效。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/37336.html