加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 建站资源 > 策划 > 正文

Wordpress 容器化、HTTPS化全攻略

发布时间:2019-06-29 00:32:54 所属栏目:策划 来源:虫虫安全 已关注
导读:大家可能都在用Wordpress写博客,之前都都是买个VPS部署一个一键L/WAMP程序完成整个部署,部署可能也容易但是操作比较费劲。前两天虫虫的博客VPS出问题导致数据丢失,需要重新部署,在这次部署中为了追求完美使用了docker容器方式并对网站升级使用全站HTTP
副标题[/!--empirenews.page--]

大家可能都在用Wordpress写博客,之前都都是买个VPS部署一个一键L/WAMP程序完成整个部署,部署可能也容易但是操作比较费劲。前两天虫虫的博客VPS出问题导致数据丢失,需要重新部署,在这次部署中为了追求完美使用了docker容器方式并对网站升级使用全站HTTPS的方式进行部署,站点支持TLS 1.3协议以最大程度提高性能,本文虫虫就给大家介绍整个部署的全过程供大家参考优化。

Wordpress 容器化、HTTPS化全攻略

概述

站点采用Docker方式部署,使用两个容器一个是mysql 5.7数据库容器,一个是apache(2.4.25)、php(7.3.6),Wordpress(5.2.2)容器,容器部件都是最新版本。为了安全连个容器都映射到宿主机127.0.0.1端口不直接对外提供服务。宿主机上部署nginx最新版本1.17反向代理到容器,nginx对外提供https服务:使用TLS 1.3协议,证书是从Let's Encrypt申请免费SSL,可以一键申请证书并且免费3个月更新。整个架构结构如下:

Wordpress 容器化、HTTPS化全攻略(一)

VPS和容器环境准备

基础VPS环境是centos 7.2,默认是vi我们先将它换成vim

  1. yum install vim 

挂载VPS数据盘

初始化VPS数据盘,注意该盘为外挂的盘VPS变化重新初始化时候数据不会丢失,一般为sdb,比如虫虫的盘,60G

Wordpress 容器化、HTTPS化全攻略(一)

创建分区并格式化

  1. fdisk /dev/sdb 
  2. mkfs.ext4 /dev/sdb1 

挂载,挂载目录我们设为/data

  1. mkdir /data 
  2. mount /dev/sdb1 /data 

修改/etc/fstab实现重启自动挂载:

通过dumpe2fs或者blkid查看磁盘UUID

  1. d179868b-6fb9-414c-8901-b990f7c586bd 

Wordpress 容器化、HTTPS化全攻略(一)
  1. echo 'UUID="d179868b-6fb9-414c-8901-b990f7c586bd" /data ext4 defaults 0 0' >>/etc/fstab 

mount –a测试fstab配置,如果没提示表示正确,如果有错误会显示,比如我们给UUID前面加个1,测试信息如下:

Wordpress 容器化、HTTPS化全攻略(一)

更换防火墙关闭selinux

系统其默认的防火墙firewalld,先将其修改为比较熟悉称手的iptables:

  1. yum install iptables iptables-services 
  2. systemctl disable firewalld 
  3. systemctl stop firewalld 
  4. systemctl enable iptables 
  5. systemctl start iptables 

selinux配置太复杂,我们先暂时关闭(在正式生产环境不建议该操作):

  1. setenforce 0 

为了一直关闭,需要修改其配置文件,这样重启后就不会再加载。方法

  1. perl -i -lpe 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config 

更改ssh安全配置

为了VPS已经修改掉系统默认的ssh 22端口,并且禁止root登陆,方法修改/etc/ssh/sshd_config,查找Port去掉其前面的注释#号,并把22修改为其他端口,比如12322:

  1. Port 12322 

增加一行" PermitRootLogin no"禁止root登陆:

Wordpress 容器化、HTTPS化全攻略(一)

事先添加证书登陆,然后禁止密码登录方式"PasswordAuthentication no":

Wordpress 容器化、HTTPS化全攻略(一)

防火墙开启新sshd端口,并删掉22端口

  1. iptables -I INPUT -p tcp -m state --state NEW -m tcp -dport 12322 -j ACCEPT 

重启sshd服务

  1. systemctl restart sshd.service 

用新端口证书方式访问服务器,如果没有问题:

删掉22端口

  1. iptables -D INPUT -p tcp -m state --state NEW -m tcp -dport 22 -j ACCEPT 

保存防火墙规则

  1. systemctl save sshd.service 

添加epel和源管理工具

  1. yum install epel-releaseyum install -y yum-utils 

docker和容器部署

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读