在当今数字化时代,越来越多的企业和个人开发者选择使用云服务器来部署网站、应用程序和服务,Linode 作为一家广受好评的云计算提供商,以其高性能、高性价比和简单易用的控制面板深受用户喜爱,本文将详细介绍如何在 Linode VPS 上搭建 LNMP(Linux + Nginx + MySQL + PHP)环境,并进一步配置 OpenVPN,以实现安全、稳定的远程访问服务。
第一步:准备 Linode 虚拟机
登录 Linode Manager,创建一台新的 Linode 实例,推荐使用 Ubuntu 22.04 LTS 操作系统,因为它稳定且社区支持广泛,分配至少 2GB 内存和 40GB SSD 存储空间,足够运行 LNMP 和 OpenVPN,设置 root 密码或 SSH 密钥登录方式,确保安全性。
第二步:安装 LNMP 环境
-
更新系统:
sudo apt update && sudo apt upgrade -y
-
安装 Nginx:
sudo apt install nginx -y sudo systemctl enable nginx sudo systemctl start nginx
-
安装 MySQL:
sudo apt install mysql-server -y sudo mysql_secure_installation
按提示设置 root 密码并优化数据库安全。
-
安装 PHP 及相关模块(如 PHP-FPM):
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
-
配置 Nginx 支持 PHP:
编辑站点配置文件(如/etc/nginx/sites-available/default),添加以下内容:location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; }测试配置并重启 Nginx:
sudo nginx -t && sudo systemctl reload nginx
你可以通过浏览器访问 Linode 的公网 IP,看到 PHPinfo 页面,证明 LNMP 环境已成功部署。
第三步:配置 OpenVPN 实现安全远程访问
为了从外部网络安全地管理 Linode,我们使用 OpenVPN 创建一个虚拟私有网络(VPN),这不仅保护了 SSH 登录,还能让多个设备共享一个内网地址段。
-
安装 OpenVPN 和 Easy-RSA:
sudo apt install openvpn easy-rsa -y
-
初始化证书颁发机构(CA):
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa sudo nano vars # 修改默认参数(如国家、组织) ./easyrsa init-pki ./easyrsa build-ca nopass
-
生成服务器证书和密钥:
./easyrsa gen-req server nopass ./easyrsa sign-req server server
-
生成客户端证书(每个设备一个):
./easyrsa gen-req client1 nopass ./easyrsa sign-req client client1
-
生成 Diffie-Hellman 参数和 TLS 密钥:
./easyrsa gen-dh openvpn --genkey --secret ta.key
-
复制必要文件到 OpenVPN 配置目录:
sudo cp pki/ca.crt pki/issued/server.crt pki/private/server.key dh.pem ta.key /etc/openvpn/
-
创建主配置文件
/etc/openvpn/server.conf如下:port 1194 proto udp dev tun ca ca.crt cert server.crt key server.key dh dh.pem server 10.8.0.0 255.255.255.0 push "redirect-gateway def1 bypass-dhcp" push "dhcp-option DNS 8.8.8.8" keepalive 10 120 comp-lzo user nobody group nogroup persist-key persist-tun status openvpn-status.log verb 3 -
启动 OpenVPN 服务:
sudo systemctl enable openvpn@server sudo systemctl start openvpn@server
-
开启 IP 转发:
编辑/etc/sysctl.conf,取消注释net.ipv4.ip_forward=1,然后执行:sudo sysctl -p
-
添加 iptables 规则允许流量转发:
sudo iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT sudo iptables -A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
你可以在本地电脑上使用 OpenVPN 客户端导入生成的 .ovpn 文件连接到 Linode,从而实现安全远程访问,整个过程无需暴露 SSH 端口(默认 22)在公网,大大提升了安全性。
在 Linode 上搭建 LNMP + OpenVPN 不仅能满足 Web 应用部署需求,还提供了企业级的安全远程访问能力,对于开发者、运维人员或小型团队而言,这是构建私有云基础设施的理想起点,通过合理配置,可进一步集成防火墙、监控工具(如 fail2ban、Prometheus)和自动化脚本,打造更健壮的生产环境。

VPN加速器|半仙VPN加速器-免费VPN梯子首选半仙VPN

