網站整套部署方案-負載均衡配置Nginx+寶塔+雲資料庫+雲WAF
這是一套部署特別方便的站點方案,包括使用nginx負載均衡,寶塔部署站點,雲資料庫加一套安全產品雲WAF。
一、結構圖
1、基本功能
負載均衡,WEB,資料庫都是在一個雲平臺上,內網都屬於一個vpc二層網路。
2、安全產品
雲WAf可以獨立於雲平臺,在基本框架部署完畢後,修改CNAME記錄,完成除錯。在專案上線前,千萬不能暴露了原有的解析地址,否則直接可以繞過WAF,直接攻擊站點IP地址。
二、功能介紹
1、雲資料庫
雲資料庫在相同的vpc網路,ip地址是192.168.1.4,寶塔自帶mysql資料庫,由於是效能問題,使用獨立出來的雲資料庫,只要提供雲資料庫的ip地址和賬號密碼,即可完成資料庫部署。
2、站點
站點部署在兩臺寶塔上,寶塔之間使用付費購買的同步檔案,保證兩個站點之間檔案是相同的。如果需要部署證書,可使用寶塔免費證書。
檔案同步,只能同步資料夾的資料,證書,站點名字,都需要單獨設定一樣的。
3、負載均衡
本次的負載均衡採用nginx負載,當外網訪問過來時,按照一定的規則,內網IP傳輸到兩臺web主機,實現負載功能。
4、雲WAF
雲WAF主要用來做安全防護,配置靈活,部署方便,只需要設定站點域名,WAF的分配給域名做cname解析,即可實現防護的功能
5、證書
證書部署,首先部署在寶塔的站點,解析先做在寶塔的公網ip,看下是否正確;nginx負載也需要部署證書,解析改到負載的公網ip,檢查;部署雲WAG,需要部署域名證書,不需要改解析了,只要做cname即可。
三、裝置配置
1、負載均衡
/etc/nginx/conf.d/websites.conf
http { gzip on; gzip_min_length 5k; gzip_buffers 16 64K; gzip_comp_level 6; client_max_body_size 25m; upstream kkk123 { ip_hash; server 192.168.1.2:80 weight=5 max_fails=3 fail_timeout=30s; server 192.168.1.2:80 weight=5 max_fails=3 fail_timeout=30s; } include /etc/nginx/conf.d/websites.conf; # Load configuration files for the default server block. # include /etc/nginx/default.d/*.conf; }
/etc/nginx/conf.d/websites.conf
server {
listen 80;
listen 443 ssl ;
#listen [::]:80;
server_name www.123.com;
ssl_certificate "/etc/nginx/cert/www_123_com.pem";
ssl_certificate_key "/etc/nginx/cert/www_123_com.key";
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
#=========301-START===========#
# if ($host ~ '^shop.httx3.top'){
# return 301 https://www.123.com$request_uri;
# }
if ( $scheme = http ){
return 301 https://$server_name$request_uri;
}
# #=========301-STOP===========#
# #error_page 404 /404.html;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
proxy_pass http://kkk123;
}
}
3、nginx注意點
上傳證書key和pem時,需要修改金鑰開頭的值,否則會報錯。
key檔案
BEGIN KEY改成BEGIN PRIVATE KEY
END KEY改成END PRIVATE KEY
pem檔案
BEGIN CERTIFICATE改成BEGIN TRUSTED CERTIFICATE
END CERTIFICATE改成END TRUSTED CERTIFICATE
2、雲WAF
雲WAF也需要新增證書,在使用原始的key檔案和pem檔案。不使用修改過的nginx的key和pem檔案。
四、方案優勢
有一定的安全防護,部署經費低,使用雲資源,開通時間短,部署方便。