服务器环境搭建笔记
准备工作
在开始搭建服务器环境前,需明确服务器用途(如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”。
- Linux(CentOS):执行
配置网络
- 静态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。
- 静态IP配置:编辑
用户与权限
- 创建新用户(避免直接使用root):
sudo adduser username,赋予sudo权限:visudo,添加username ALL=(ALL) NOPASSWD:ALL。 - 禁用root远程登录(Linux):编辑
/etc/ssh/sshd_config,设置PermitRootLogin no后重启SSH服务:systemctl restart sshd。
- 创建新用户(避免直接使用root):
安装必要软件
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。
- Nginx:CentOS执行
数据库
- 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;。
- MySQL:CentOS执行
运行时环境
- 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。
- Node.js:使用NVM版本管理器:
部署应用示例
以Node.js应用为例:
- 上传代码至服务器(可通过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)。
通过以上步骤,可完成基础服务器环境搭建,后续根据业务需求扩展功能(如负载均衡、SSL证书配置等),定期维护与安全更新是保障服务器稳定运行的关键。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/166197.html
