從0到1搭建自己的互聯網領地

從0到1搭建自己的互聯網領地

來自專欄 伺服器運維與安全

項目簡介

通過使用騰訊雲多種產品(CVM、CDN、CDB、COS、SSL證書)並配合使用知名 CMS 系統 WordPress,從無到有打造一個自己在互聯網空間中的自留地。

項目架構

CDN(內容分發網路)、COS(對象存儲)、CDB(雲資料庫)、SSL證書為非必選功能,下文演示環境中將分別講解完整拓撲模式的配置以及最基礎模式的配置(僅雲伺服器)。

戰前準備

  1. 擁有一個已經在騰訊雲備案成功的域名。
  2. 開通一台 CVM 機器,並且將IP、賬號、密碼記錄在一個文檔中。

戰鬥開始

教程所使用的機器為騰訊雲公共鏡像中的 CentOS 7.2 64位 版本鏡像,並且購買了雲硬碟來單獨存儲業務網站程序,搭建生產環境則使用了 OneinStack 的一鍵 LNMP(Linux + Nginx+ MySQL+ PHP) 工具。

1.首先登錄我們的雲伺服器,更新並添加依賴以及開發者工具

yum -y update && yum -y groupinstall "Development Tools"

2.掛載並使用雲硬碟作為數據盤使用

wget https://soft.vtrois.com/scripts/auto_fdisk.shchmod +x auto_fdisk.sh./auto_fdisk.sh

注意:Step 3 中需要填入需要自動掛載的雲硬碟,Step 5 中需要填入需要掛載的位置,因為 OneinStack 默認的數據位置為 /data 所以這裡填入 /data 等待腳本執行完畢即可。

3.下載並使用 OneinStack 的一鍵 LNMP 工具搭建生產伺服器

yum -y install wget screen curl pythonwget http://mirrors.linuxeye.com/oneinstack-full.tar.gztar xzf oneinstack-full.tar.gzcd oneinstackscreen -S oneinstack./install.sh

說明:為了安全起見第一步中我把SSH默認的 22 埠修改為 53185 ,第二步中我選擇只安裝 Nginx 服務(這裡選擇的是 OpenResty 的編譯版本),第三步中選擇安裝資料庫版本(我這裡選擇的 MySQL5.6 的穩定版本,如果使用雲資料庫則不用選擇安裝資料庫服務),第四步中選擇安裝 PHP 的版本(這裡我選擇的是最新的7.1版本),大家可以選擇 WinSCP 工具來代替 FTP 工具,配置結束之後會有一個重啟伺服器的選項。

4.新建並配置虛擬機

說明:使用 ./vhost.sh 命令運行新建虛擬機腳本,第一步選擇是否啟用 SSL 協議(如果不需要則輸入 n),第二步填入已經備案好的域名,第三步選擇是否強制跳轉 https (如果第一步輸入了 n 則此時不會出現這一步),第四步開啟 wordpress 偽靜態功能,等待配置完成即可。

5.新建資料庫(如果使用雲資料庫將不用進行此步)

使用搭建 LNMP 環境時選擇安裝 phpMyAdmin 工具的 root 賬號登錄,登錄地址為外網IP/phpMyAdmin(例子:123.206.66.153/phpMyAdmin),新建一個名為 blog 的資料庫,然後再新建一個普通用戶 vtrois 並且把 blog 庫的許可權賦給他,這裡也可以使用 SQL 命令操作(這一部也是為了讓你的數據能更安全,當然最安全的方案還是使用站庫分離的方法以及讀寫分離的方法,站庫分離將使用到雲資料庫)。

GRANT ALL PRIVILEGES ON `blog`.* TO vtrois@% WITH GRANT OPTION;

6.配置並導入使用SSL證書(非必須)

在控制台的雲產品分類中找到 SSL證書管理 ,點擊申請證書即可申請一張免費一年的 TrustAsia DV SSL CA - G5 證書,身份驗證選擇自助DNS驗證,根據給出的提示綁定 CNAME 記錄並等待後台自動驗證,申請成功會得到一套證書文件,這裡我們選擇 nginx 環境使用的證書,並且把得到的證書改名為 域名.crt 和 域名.key 的格式,例如:(qcloud.vtrois.com.crt 和 qcloud.vtrois.com.key),然後再將改名後的證書上傳到伺服器 /usr/local/openresty/nginx/conf/ssl 中並替換原有文件,最後在終端執行重啟 Nginx 服務命令即可。

service nginx restart

7.配置使用雲資料庫(非必須)

雲資料庫會免費為大家提供一個從庫,從而達到主從同步的不間斷服務,並且支持 3 天內任意時間段的回檔以及 5 天內的冷備數據下載,高配版還可以開通只讀實例從而實現讀寫分離,簡直是親民的良心產品,省去了不少維護時間。同樣在購買資料庫實例之後初始化創建默認 root 賬號的密碼,進入控制台建議大家跟自建資料庫一樣新建一個普通賬號來管理單獨的資料庫文件(這個過程在雲資料庫控制台都可以按照產品說明文檔完成)。

注意:雲伺服器要和雲資料庫選到同一個地域同一可用區下,否則數據是不能互通的哦,但是目前廣州一區與廣州二區是可以互通的。

8.下載並安裝 WordPress 程序

cd /data/wwwroot/qcloud.vtrois.comwget http://wordpress.org/latest.tar.gztar xzvf latest*cd wordpress*sudo rsync -avz . /data/wwwroot/qcloud.vtrois.comcd ..rm -rf latest.tar.gzrm -rf wordpresssudo chown -R www /data/wwwrootsudo chgrp -R www /data/wwwroot

在瀏覽器中打開站點 qcloud.vtrois.com 即可進入 WordPress 安裝界面,第一步配置資料庫信息,其中 Database Host(資料庫主機) 為資料庫地址,如果使用本地自建資料庫則使用默認 localhost 即可,如果使用雲資料庫則填寫資料庫的內網ip點擊提交即可。

在下一步中將配置站點信息,密碼建議使用自動生成的密碼,然後點擊安裝即可。

說明:第一個 cd 命令進入新建的域名目錄(這裡我用的是 qcloud.vtrois.com), chown 和 chgrp 命令為修改文件或目錄所屬的用戶和組。

9.開啟 CDN 內容分發功能(非必須)

由於我們的站點搭建在一台伺服器上,他的物理位置是固定的,比如我選購的是北京機房的機器,然而用戶在南方深圳訪問,那麼在這個訪問過程中就會有一定的延遲,這時我們就可以選擇使用 CDN 服務來優化這個過程,同時也可以使用 CDN 服務來抵抗源站被 DDoS 從而造成的網路癱瘓和服務不可用的問題。

說明:緩存配置可參考上圖的配置設置,關於強力抵抗 DDoS 可以參考下圖的配置設置(閥值的設置可以根據正常訪問量調整),如果開啟了 SSL 則需要在證書管理中添加證書並綁定到域名。

10.正確合理配置安全組,不給黑客留機會

說明:根據我們之前配置的 SSH 埠 53185,以及 Nginx 的 80 和 443 埠來配置安全組,同時我們在搭建 LNMP 環境時,系統默認新建了測試頁面(在 /data/wwwroot/default 中的 index.html、ocp.php、phpinfo.php、tz.php)我們需要刪除掉,如果需要使用 phpMyAdmin 切記不要刪除 default 中的 phpMyAdmin 文件夾。

本文轉載自騰雲閣,已獲得作者授權。

推薦閱讀:

影響Joomla網站訪問速度的五大因素
苦沙:#建站研究# 3:WordPress安裝完,後台務必優先做以下設置
joomla 建站和 wordpress 建站,哪個容易上手?
無需懂代碼也能建網站,你信嗎?
dedecms模板:二級欄目標題title去除」/」斜杠和一級欄目

TAG:建站 | Linux | 運維 |