Linux服务器的搭建是企业IT基础设施建设的核心环节,涵盖硬件选型、系统安装、基础配置及服务部署等多个步骤,需结合实际需求规划细节,以下从准备阶段到服务上线分步说明,确保搭建过程清晰可操作。

前期准备
硬件选择需根据服务类型确定:若用于Web托管,建议至少2核CPU、4GB内存、100GB SSD硬盘;若为数据库服务器,则需8GB以上内存及更高I/O性能的存储,系统镜像推荐主流发行版,如Ubuntu Server 22.04 LTS(长期支持版,适合新手)或CentOS Stream 9(企业级稳定),下载镜像后通过Rufus或Ventoy制作启动U盘,并确保服务器BIOS/UEFI开启从U盘启动选项,网络环境需规划静态IP地址(避免动态IP导致连接中断),子网掩码、网关、DNS等参数需与局域网配置一致,可通过ip a命令查看当前网络配置。
系统安装
将启动U盘插入服务器,开机进入安装界面后选择“Install Ubuntu Server”或“Install CentOS Stream”,语言选择“English”(避免中文编码问题),时区选“Asia/Shanghai”,磁盘分区建议采用LVM(逻辑卷管理),便于后续扩容:根分区(/)分配30GB,swap设为内存的1-2倍(如4GB内存配8GB swap),剩余空间作为/home或/data分区,用户创建时需设置强密码,并勾选“Require my password to login”(增强安全性),安装过程约需10-20分钟,完成后重启系统。
基础配置
- 更新系统:登录后执行
sudo apt update && sudo apt upgrade -y(Ubuntu)或sudo dnf update -y(CentOS),安装最新安全补丁。 - 网络配置:Ubuntu使用
netplan,编辑/etc/netplan/01-netcfg.yaml,添加如下内容:network: ethernets: ens33: # 网卡名称,通过ip a确认 dhcp4: no addresses: [192.168.1.100/24] # 静态IP gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 114.114.114.114] version: 2执行
sudo netplan apply使配置生效,CentOS则需修改/etc/sysconfig/network-scripts/ifcfg-ens33,将BOOTPROTO=static,并添加IPADDR=192.168.1.100、NETMASK=255.255.255.0、GATEWAY=192.168.1.1,重启网络服务sudo systemctl restart network。
- SSH配置:编辑
/etc/ssh/sshd_config,修改Port 22为自定义端口(如2222),禁用root登录PermitRootLogin no,启用密钥认证PasswordAuthentication no,重启SSH服务sudo systemctl restart sshd。 - 防火墙设置:Ubuntu启用
ufw,执行sudo ufw allow 2222/tcp(开放SSH端口)、sudo ufw enable;CentOS使用firewalld,sudo firewall-cmd --permanent --add-port=2222/tcp、sudo firewall-cmd --reload。
常用服务部署
根据需求安装服务,以下以Web服务(Nginx)和数据库(MySQL)为例:
- Nginx:执行
sudo apt install nginx -y(Ubuntu)或sudo dnf install nginx -y(CentOS),启动服务sudo systemctl start nginx,设置开机自启sudo systemctl enable nginx,访问服务器IP可查看Nginx欢迎页面。 - MySQL:Ubuntu执行
sudo apt install mysql-server -y,CentOS执行sudo dnf install mysql-server -y,安全初始化sudo mysql_secure_installation,设置root密码、移除匿名用户、禁止远程root登录,创建数据库及用户:mysql -u root -p CREATE DATABASE mydb CHARACTER SET utf8mb4; CREATE USER 'user1'@'localhost' IDENTIFIED BY 'Password123!'; GRANT ALL PRIVILEGES ON mydb.* TO 'user1'@'localhost'; FLUSH PRIVILEGES;
安全加固
- 安装fail2ban:防暴力破解,
sudo apt install fail2ban -y,配置/etc/fail2ban/jail.local,设置SSH端口和重试次数。 - 定期备份:使用
rsync或tar备份数据库和配置文件,例如sudo tar -czf /backup/nginx_$(date +%F).tar.gz /etc/nginx。 - 日志监控:通过
/var/log/auth.log(Ubuntu)或/var/log/secure(CentOS)监控异常登录,结合grep "Failed password" /var/log/auth.log | awk '{print $(NF-3)}' | sort | uniq -c统计失败IP。
相关问答FAQs
Q1:忘记服务器root密码如何重置?
A:可通过Grub引导菜单重置:开机时按Shift或Esc进入Grub,选择高级选项,启动模式选“Recovery mode”,进入root shell(选择“root Drop to root shell prompt”),执行mount -o rw,remount /重新挂载根分区,使用passwd root修改密码,重启即可。
Q2:如何远程连接Linux服务器?**
A:使用SSH命令,本地终端执行ssh username@服务器IP -p 自定义端口(如ssh user1@192.168.1.100 -p 2222),首次连接需确认主机密钥(输入yes),若需图形界面,可安装VNC服务器(sudo apt install tightvncserver),配置后使用VNC Viewer连接。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/38368.html