如若选择腾讯云/阿里云等国内厂商,云服务器选择海外节点,建议首先更换软件源,演示用的服务器在美国,此时选择美国本土的高质量镜像源,以提升下载速度。
首先第一步,备份原始配置
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
更换debian源
cat <<EOF | sudo tee /etc/apt/sources.list
deb http://deb.debian.org/debian/ bookworm main contrib non-free non-free-firmware
deb http://deb.debian.org/debian/ bookworm-updates main contrib non-free non-free-firmware
deb http://deb.debian.org/debian-security/ bookworm-security main contrib non-free non-free-firmware
deb http://deb.debian.org/debian/ bookworm-backports main contrib non-free non-free-firmware
EOF
复制上面的命令一键替换。然后更新索引
# 更新索引并执行完整升级
sudo apt update && sudo apt full-upgrade -y
# 清理不再需要的依赖包
sudo apt autoremove -y
# 如果更新了内核(linux-image-*),建议重启系统生效
sudo reboot
基础安全加固建议
- 不要使用root直接SSH远程登录
# 创建新用户(以 myuser 为例)
adduser myuser
# 将用户加入 sudo 组
usermod -aG sudo myuser
修改SSH默认配置
sudo nano /etc/ssh/sshd_config
修改如下几项
Port 2222:将默认的 22 端口改为其他数字(如 1024-65535 之间),可规避 99% 的自动扫描脚本。
PermitRootLogin no:禁止 root 直接登录。
PasswordAuthentication no:禁用密码登录,改用 SSH 密钥(推荐)。
修改后重启服务:
sudo systemctl restart ssh
配置UFW防火墙
sudo apt install ufw -y
# 默认规则:禁止所有入站,允许所有出站
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 允许你的 SSH 端口(如果是改成了 2222)
sudo ufw allow 2222/tcp
# 开启常用端口(根据需求)
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# 启动防火墙
sudo ufw enable
安装防止暴力破戒的Fail2Ban
Fail2Ban会监控日志,如遇到某IP持续暴力破解,会封禁其IP。
sudo apt install fail2ban -y
# 启动并设置开机自启
sudo systemctl enable --now fail2ban
搭建一个高性能的WordPress环境组合
使用 PHP 8.4 结合 JIT (Just-In-Time) 编译和 Redis 缓存,可以极大提升 WordPress 的响应速度。
由于 Debian 12 官方库目前最高仅到 PHP 8.2,我们需要引入第三方源(Ondřej Surý)来安装 PHP 8.4。
安装Nginx与MariaDB
sudo apt update
sudo apt install nginx mariadb-server mariadb-client -y
# 启动并设置自启
sudo systemctl enable --now nginx
sudo systemctl enable --now mariadb
添加配置PHP8.4的源并安装
# 安装前置依赖
sudo apt install apt-transport-https lsb-release ca-certificates curl -y
# 下载 GPG 密钥
sudo curl -sSL https://packages.sury.org/php/README.txt | sudo bash -x
sudo apt update
# 安装 PHP 8.4 及其必要扩展
sudo apt install php8.4-fpm php8.4-mysql php8.4-common php8.4-xml php8.4-gd php8.4-mbstring php8.4-curl php8.4-zip php8.4-intl php8.4-redis php8.4-imagick -y
配置 PHP 8.4 OPcache 与 JIT
PHP 8.4 的 JIT 包含在 OPcache 扩展中。我们需要编辑配置文件。
编辑文件:sudo nano /etc/php/8.4/fpm/php.ini
找到 [opcache] 部分,修改或添加以下参数:
zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
; 启用 JIT
opcache.jit=tracing
opcache.jit_buffer_size=128M
重启使配置生肖
sudo systemctl restart php8.4-fpm
安装redis
sudo apt install redis-server -y
sudo systemctl enable --now redis-server
登录MariaDB创建用户和数据库
sudo mysql -u root
在Mysql命令行中运行:
CREATE DATABASE ama_db;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY '你的复杂密码';
GRANT ALL PRIVILEGES ON ama_db.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
配置Nginx站点
创建站点配置文件:sudo nano /etc/nginx/sites-available/wordpress
写入基础配置(请根据实际域名修改 server_name):
server {
listen 80;
server_name your_domain.com; # 替换为你的域名或IP
root /var/www/wordpress;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.4-fpm.sock;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}
启用配置并测试
sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
下载WordPress
sudo mkdir -p /var/www/wordpress
cd /var/www/wordpress
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz --strip-components=1
sudo rm latest.tar.gz
# 设置权限(非常重要)
sudo chown -W www-data:www-data /var/www/wordpress -R
sudo chmod -R 755 /var/www/wordpress
配置SSL证书我们就不要手动折腾Let’s Encrypt自动续期,直接使用Cloudflare提供的Origin CA证书。
在 Cloudflare 生成源站证书
- 登录 Cloudflare 控制台,选择你的域名。
- 进入 SSL/TLS -> Origin Server (源服务器)。
- 点击 Create Certificate。
- 保持默认设置(私钥类型 RSA 2048,主机名包含
yourdomain.com和*.yourdomain.com)。 - 证书有效期选 15 years。
- 点击 Create 后,你会看到:
- Origin Certificate (公钥 源证书)
- Private Key (私钥) —— 注意:这个私钥只会出现一次,需要自己保存到其他地方。
在服务器上新建存放证书的目录
sudo mkdir -p /etc/nginx/ssl
使用nano分别创建两个文件,将刚才页面的内容分别复制到这两个文件中
# 写入公钥
sudo nano /etc/nginx/ssl/cloudflare.pem
# 写入私钥
sudo nano /etc/nginx/ssl/cloudflare.key
修改 Nginx 配置文件
编辑你的站点配置:sudo nano /etc/nginx/sites-available/wordpress
将配置修改为如下结构(支持 HTTP 自动跳转 HTTPS):
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name yourdomain.com www.yourdomain.com;
ssl_certificate /etc/nginx/ssl/cloudflare.pem;
ssl_certificate_key /etc/nginx/ssl/cloudflare.key;
# 基础安全加固
ssl_protocols TLSv1.2 TLSv1.3;
ssl_conf_command Options PrioritizeChaCha;
ssl_prefer_server_ciphers on;
root /var/www/wordpress;
index index.php index.html;
# WordPress 核心逻辑保持不变...
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.4-fpm.sock;
}
}
保存并重启Nginx
sudo nginx -t && sudo systemctl restart nginx
中间过程略过-待补充
安装完毕登录后台,后台登录地址 你的域名/wp-admin,如果不熟悉英文后台,按照下图的提示将后台显示语言更改为中文。


兼顾语言使用习惯,本文涉及到后台操作的部分,基本使用中文界面。
关于WordPress用户权限,你可能需要阅读本文 – WordPress 中存在所谓的超级管理员用户吗?
接下来需要完善的,老规矩,进入后台的 工具-站点健康,检查可能需要完善的事项。前面忘记在安装PHP8.4扩展的时候加上imagick的扩展(现已补充),输入命令apt install php8.4-imagick,系统会安装相应的扩展。






















