先选择在日本有数据中心的厂商:如Vultr、Hetzner(部分节点)、AWS(ap-northeast-1)、Google Cloud(asia-northeast1)、Sakura Cloud、Linode等。建议选择东京(Tokyo)或大阪(Osaka)节点以降低延迟。配置方面:1核/2G内存作为轻量应用起步;SSD磁盘;带宽按业务选择。确认是否支持IPv6、快照、私有网络、浮动IP。
在面板中新建实例,选择Ubuntu LTS(如22.04)或Debian稳定版。勾选SSH密钥或先用密码登录后上传公钥(建议使用SSH密钥)。选择区域为Tokyo/Osaka,设置主机名,启动实例并记录公网IP与默认root密码(如果有)。
在本地生成密钥:ssh-keygen -t ed25519,然后将公钥复制到VPS:ssh-copy-id root@IP 或使用面板上传。登录后执行:apt update && apt upgrade -y。创建管理员用户:adduser youruser && usermod -aG sudo youruser。配置SSH:编辑 /etc/ssh/sshd_config,设置
- PermitRootLogin no;
- PasswordAuthentication no(如果已确认密钥登录);
重启SSH:systemctl restart sshd。注意保留一个活跃会话以防锁死。
推荐使用ufw做为入门防火墙:apt install ufw -y;允许必要端口:ufw allow OpenSSH(或指定端口如22/tcp),ufw allow 80/tcp,ufw allow 443/tcp;启用:ufw enable;查看状态:ufw status verbose。若需要更复杂规则,可使用iptables并安装 iptables-persistent 保存规则。
绑定管理端口建议改为非22端口并在防火墙中限制来源IP(ufw allow from x.x.x.x to any port 22)。
安装fail2ban防止SSH暴力破解:apt install fail2ban -y。复制模板:cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local,然后在 jail.local 中启用 [sshd],设置 bantime、findtime、maxretry(例如bantime = 1h, findtime = 10m, maxretry = 5)。重启服务:systemctl restart fail2ban。可结合ufw来自动封禁。
启用TCP拥塞控制BBR(对Linux内核 >=4.9有效):编辑 /etc/sysctl.conf,追加: net.core.default_qdisc = fq net.ipv4.tcp_congestion_control = bbr net.core.somaxconn = 1024 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_syncookies = 1 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 然后执行 sysctl -p。检查是否启用:lsmod | grep bbr 或 sysctl net.ipv4.tcp_congestion_control。
如内核版本不支持BBR,可考虑升级内核或使用提供内核选项的镜像(注意风险和重启)。另外调优连接数、文件描述符(/etc/security/limits.conf)和Nginx/应用层的keepalive与worker配置以配合系统参数。
问:我要确认VPS延迟和丢包,常用哪些工具?
答:使用ping 检查延迟:ping -c 10 8.8.8.8;使用mtr(apt install mtr-tiny)做路由和丢包分析:mtr -r -c 100 你的目标IP;使用iperf3(服务端与客户端)做带宽测试:在VPS上运行 iperf3 -s,在本地运行 iperf3 -c VPS_IP。结合traceroute查看网络路径。
问:启用ufw或iptables怕把自己锁死,有什么保险措施?
答:在启用之前先允许当前IP:ufw allow from 你的IP to any port 22;保留一个未关闭的SSH会话并在新终端验证规则生效后再关闭旧会话。使用at或cron设置延后生效脚本(例如30秒后执行 ufw enable),如果网络被锁可通过控制面板重置防火墙或重装系统。
问:如何做例行维护与数据备份?
答:定期apt update && apt upgrade -y,配置自动安全更新(unattended-upgrades);定期快照或利用对象存储做备份(每日或按需);将关键配置放入版本管理(例如git私有仓库),并测试恢复流程。监控CPU、内存、磁盘与网络(如使用Prometheus+Grafana或简单的netdata)。