致青春,致梦想,一片自留地

Menu

菜鸟使用Linode VPS 搭建LNMP + WordPress + SSL + CloudFlare

2023年补充

本人原来所用的Centos系统已经不再有效更新,并且前几天LNMP被金华市矜贵网络科技有限公司收购后就惊现安全事件,闹的沸沸扬扬。干脆重新写了一篇攻略,方便自己和他人,请移步:

2022年补充

前几天写了一篇WordPress的系统要求以及VPS配置选择,然后就发现自己的2台5美元一个月的LINODE Nanode Plan已经无法符合WordPress的最新系统要求了。于是干脆乘这几天都在家办公的空隙,把2台Linode VPS都升级到了10美元一个月的Linode 2G内存套餐,然后重新安装了LNMP,部署了站点。本文根据此次安装碰到的问题,做了一些修正。

前言

昨天收到CPANEL的邮件说我原来账户里面的信用卡过期了,造成续费失败,然后附带了一个发票,结果我一看年费改成按月收费了,一打听才知道原来200刀一年的VPS虚拟主机管理license要变成月收的license了,我原来的CPANEL上的站点其实也不多一共才8个站点,结果最适合我的是可以跑30个站点的PRO,一个月就要30刀,怎么想都觉太贵了。

遂决定,于其每个月在CPANEL上多费钱,不如把这些费用节省下来,弄多几个LINODE的主机,我的几个站点都是产品站点,小流量, 一个LINODE 的 Nanode Plan 才5刀一个月,300刀我可以一年跑5台了,一台机器跑10个小流量的WordPress站点是很轻松的事情。

当时唯一担心的是邮箱的问题,咨询了LINODE的人员以后,因为我的账号是2019年11月5号前就建立了,因此可以不受端口屏蔽,就是说我的账号下购买的VPS,不管老的还是新的都可以自己搭建邮件服务器,并且推荐了  Mail-in-a-Box 这个系统。

邮件服务器搭建先不弄,毕竟我的LINUX只是仅限于代码的复制粘贴,万一把网站搞崩溃了就发财了,所以先弄网站。

备注:CPANEL还是很不错的,虽然我的信用卡过期了,但是还是给我7天的使用时间。但是我也不想发这种财,老老实实的更新了新卡,把2月余下的几天费用支付了,5天一共5刀,有点肉疼,又够一台 LINODE 的 Nanode Plan 一个月费用了。

参考文献

如标题所属,本人是LINUX的菜鸟,只知道代码的复制粘贴,因此搭建的过程参考了前辈的经验。

  1. https://www.vpser.net/manage/screen.html
  2. https://www.vpser.net/manage/run-screen-lnmp.html
  3. https://www.vpser.net/manage/centos-rhel-linux-third-party-source-epel.html
  4. https://www.cnblogs.com/medsonk/p/8888558.html
  5. https://cloud.tencent.com/developer/article/1141282

所需软件

  1. SSH客户端。比如Putty
  2. SFTP工具。比如SSH Secure File Transfer Client

操作步骤

1:购买Linode VPS

Linode的官网操作即可,过程非常简单,需要有信用卡,以后续费可以使用PAYPAL充值。选用10美元一个月的Linode 2G套餐。现在新注册的用户还可以有100美元的试用金奖励,3个月后作废。

Linode在全世界有很多数据中心,可以在官网上查询,我比较喜欢使用Fremont这个数据中心。不过由于太多国人使用,做的网站又是奇奇怪怪的网站,造成这个数据中心的很多IP已经被墙。没法,还是呼吁文明做站吧。

系统我选用的是 Centos Steam 8。目前Lnmp的正式版最新的是Lnmp 1.8,还不支持Centos Steam 9。

2:修改SSH端口

第一步:备份原sshd配置文件

指令:

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup

第二步:编辑sshd配置文件

下文内容均假设你希望新端口为3322,把下面所有指令中的3322替换为你需要设置的端口即可。

备注:新端口建议10000以上,至少我使用了2次10000以内的端口都不成功,另外端口不能超过65535。

指令:

vi /etc/ssh/sshd_config
  1. 按 i 进入编辑状态
  2. 使用方向键控制光标,到 #Port 22 这一行,删除前面的#
  3. 那么在 Port 22 下面添加一行 Port 3322
  4. 按ESC键,退出编辑状态
  5. 按 :w 保存修改
  6. 按 :q 退出

第三步:重启SSH服务器

指令:

systemctl restart sshd

第四步:查看当前端口状态

指令:

ss -ntl

这个时候应该可以看见修改过的端口和原来的22端口。

第五步:iptables添加SSH新端口规则

指令:

iptables -A INPUT -p tcp --dport 3322 -j ACCEPT             #3322替换为新的端口#

第六步:firewalld添加SSH新端口规则

指令:

firewall-cmd --permanent --zone=public --add-port=3322/tcp             #3322替换为新的端口#
firewall-cmd --reload             #重载firewalld#

第七步:SSH软件连接测试

使用SSH客户端软件连接测试一下新端口

第八步:删除22端口

必须要先做好新端口的连接测试,只有测试成功后才能删除22端口。

参考上面第二步的介绍,删除 Port 22 这行内容,保存后退出。重复上面的第三步和第四步,在第四步的现实结果中应该已经没有了22端口的显示,只有你的自定义端口显示。

3:安装必要软件

使用SSH客户端连接上刚购买的Linode VPS, 在VPS上安装必要软件

安装EPEL源,指令:

yum install epel-release

安装screen,指令:

yum install screen

安装wget,指令:

yum install wget

安装tar,指令:

yum install tar

4:搭建配置LNMP系统

建议参考LNMP官网的安装步骤介绍:https://www.lnmp.com/install.html

第一步:运行screen

指令:

screen -S lnmp

强烈建议第一步运行这个screen,这样如果安装中途ssh断开,还是可以随时重新登陆查看安装进度,否则就只好从头全新安装了。如果网络掉线,可以重新连接SSH,再执行 screen -r lnmp 就会看到你的lnmp安装进程。有时候screen异常退出可能会提示状态为Attached,可以执行:screen -D -r lnmp 进行恢复。

第二步:下载并安装LNMP一键安装包

指令:

wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 && ./install.sh lnmp

根据提示输入需要安装的MySql,PHP等。安装前请注意WordPress官网上发布的当前WordPress的系统要求。比如当前的系统要求是:

根据提示完成安装即可。

第三步:修改PhpMyAdmin的访问路径

使用SFTP客户端链接上Linode VPS,完成LNMP安装了以后,第一时间修改 /home/wwwroot/default下的phpmyadmin目录名, 把这个目录修改成只有自己知道的目录名称,比如123654,那么你以后就可以用http://你的VPSIP/123654 这个地址管理你的数据库了。

记得删除/home/wwwroot/default目录下的其他文件,只保留改过名的phpmyadmin文件夹。

第四步:网站添加

根据 https://lnmp.org/faq/lnmp-vhost-add-howto.html 提示操作即可,复制保存出现的站点开通结果。

5:安装WordPress程序

使用SSH客户端,进入刚才创建的网站目录,指令:

cd 网站目录 #网站目录为网站添加了以后Home Directory:后面显示的内容#

下载完毕最新的WordPress压缩包,指令:

wget https://wordpress.org/latest.tar.gz

解压刚下载的WordPress压缩包,指令:

tar -zxf latest.tar.gz

移动解压后的WorPress内容到工作目录,指令:

cp -r ./wordpress/* ./

把文件的所属都修改为www组的www用户,指令:

chown -R www:www ./

删除wordpress的解压目录,指令:

rm -rf wordpress

删除刚下载的WordPress压缩包,指令:

rm latest.tar.gz #需要按Y确认删除#

如果使用SFTP软件上传了任何文件到网站目录下, 千万记得一定要在使用SSH客户端连接上VPS服务器,并使用 chown -R www:www 网站目录 指令把网站的文件所属修改成www组的www用户

6:CloudFlare设置

把站点指向到VPS的IP

7:完成WordPress的最终配置

打开浏览器,访问网站,根据提示完成WordPress的配置。

— 于 共写了3804个字
— 文内使用到的标签:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注