上一篇
服务器环境搭建笔记,新手如何快速配置基础环境?
- 主机动态
- 2025-12-16
- 2808
服务器环境搭建笔记
准备工作
在开始搭建服务器环境前,需明确服务器用途(如Web服务、数据库、应用部署等)及操作系统选择(Linux推荐CentOS/Ubuntu,Windows Server适合.NET环境),准备一台符合配置要求的服务器(建议至少2核CPU、4GB内存、50GB存储),并通过SSH(Linux)或RDP(Windows)远程连接,确保网络环境正常,获取服务器公网IP(若需外网访问)及域名(可选)。
基础系统配置
-
更新系统
- Linux(CentOS):执行sudo yum update -y更新所有包。
- Linux(Ubuntu):运行sudo apt update && sudo apt upgrade -y。
- Windows Server:通过Server Manager执行“Windows Update”。
-
配置网络
- 静态IP配置:编辑/etc/sysconfig/network-scripts/ifcfg-eth0(CentOS)或/etc/netplan/01-netcfg.yaml(Ubuntu),设置BOOTPROTO=static并配置IP、网关、DNS。
- 防火墙设置:CentOS使用firewall-cmd --permanent --add-port=80/tcp开放端口;Ubuntu使用ufw allow 80。
-
用户与权限
- 创建新用户(避免直接使用root):sudo adduser username,赋予sudo权限:visudo,添加username ALL=(ALL) NOPASSWD:ALL。
- 禁用root远程登录(Linux):编辑/etc/ssh/sshd_config,设置PermitRootLogin no后重启SSH服务:systemctl restart sshd。
安装必要软件
-
Web服务器


- Nginx:CentOS执行sudo yum install nginx -y;Ubuntu运行sudo apt install nginx -y,启动服务:systemctl start nginx,设为开机自启:systemctl enable nginx。
- Apache:若需Apache,CentOS使用sudo yum install httpd -y,Ubuntu使用sudo apt install apache2 -y。
-
数据库
- MySQL:CentOS执行sudo yum install mysql-server -y;Ubuntu运行sudo apt install mysql-server -y,安全配置:mysql_secure_installation,设置root密码并移除匿名用户。
- PostgreSQL:Ubuntu安装:sudo apt install postgresql postgresql-contrib -y,创建用户与数据库:sudo -u postgres psql,执行CREATE USER user WITH PASSWORD 'password'; CREATE DATABASE db_name;。
-
运行时环境

- Node.js:使用NVM版本管理器:curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash,重启终端后安装LTS版本:nvm install --lts。
- Python:Ubuntu安装Python3:sudo apt install python3 python3-pip -y;CentOS需编译安装或使用EPEL源。
- Java(JDK):Ubuntu安装OpenJDK:sudo apt install openjdk-11-jdk -y;CentOS执行sudo yum install java-11-openjdk-devel -y。
- 上传代码至服务器(可通过SCP、Git或FTP):scp -r /local/path user@server_ip:/remote/path。
- 安装依赖:进入项目目录,执行npm install。
- 配置PM2(进程管理器):全局安装npm install pm2 -g,启动应用:pm2 start app.js --name "my-app",设置开机自启:pm2 startup。
- 配置Nginx反向代理:编辑/etc/nginx/sites-available/default,添加: server { listen 80; server_name your_domain.com; location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; }
}
重启Nginx:systemctl restart nginx。
- SSH安全:修改默认端口(22)为非标准端口(如2222),编辑/etc/ssh/sshd_config,设置Port 2222并重启SSH。
- Fail2Ban:防暴力免费工具,安装:sudo apt install fail2ban -y(Ubuntu)或sudo yum install fail2ban -y(CentOS),配置/etc/fail2ban/jail.local,禁用IP失败尝试过多。
- 定期备份:使用rsync或cron定时备份数据库与文件,例如每日凌晨2点备份MySQL:0 2 * * * mysqldump -u root -p password db_name > /backup/db_$(date +%Y%m%d).sql。
- 系统监控:安装htop(Linux)或使用Task Manager(Windows),实时查看资源占用。
- 日志分析:通过/var/log/nginx/access.log(Nginx)或/var/log/mysql/error.log(MySQL)排查问题。
- 自动更新:Ubuntu设置sudo apt unattended-upgrades -y;CentOS使用sudo yum update -y --security。
- 端口占用:执行netstat -tulpn | grep :80查看占用进程,终止或修改配置。
- 权限错误:确保文件所有者为部署用户(如chown -R username:username /var/www/html)。
- 服务无法启动:检查日志(journalctl -u nginx)及配置文件语法(nginx -t)。
部署应用示例
以Node.js应用为例:
安全加固
监控与维护
常见问题处理
通过以上步骤,可完成基础服务器环境搭建,后续根据业务需求扩展功能(如负载均衡、SSL证书配置等),定期维护与安全更新是保障服务器稳定运行的关键。