lvs 持久鏈接 80 和443 端口iptables mangle

1、創建私有CA,並給服務器簽發:html

在肯定配置爲CA的服務器上生成一個自簽證書,併爲CA提供所須要的目錄及文件便可;nginx

步驟:web

(1) 生成私鑰;vim

]# (umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096)服務器

注意:文件名要與配置文件中的文件名一致;session

]# ll /etc/pki/CA/private/:查看文件權限確保爲600;tcp


(2) 生成自簽證書;ide

]# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 3655測試

  -new:生成新證書籤署請求;spa

  -x509:生成自籤格式證書,專用於建立私有CA時;

  -key:生成請求時用到的私有文件路徑;

  -out:生成的請求文件路徑;若是自籤操做將直接生成簽署過的證書;

  -days:證書的有效時長,單位是day;

  根據提示輸入相關信息,完成便可;


提示輸入:Country Name (2 letter code) [XX]:CN

提示輸入:State or Province Name (full name) []:Beijing

提示輸入:Locality Name (eg, city) [Default City]:Beijing

提示輸入:Organization Name (eg, company) [Default Company Ltd]:MageEdu

提示輸入:Organizational Unit Name (eg, section) []:Ops

提示輸入:Common Name (eg, your name or your server's hostname) []:ca.magedu.com

    若是是我的通訊爲本身的名字,若是是服務器爲服務器主機名;

提示輸入:Email Address []:caadmin@magedu.com


]# ls /etc/pki/CA/

查看要有certs crl newcerts這3個目錄,若是沒有要自行建立;


(3) 爲CA提供所需的目錄及文件;

]# mkdir -pv /etc/pki/CA/{certs,crl,newcerts}

]# touch /etc/pki/CA/{serial,index.txt}

]# echo 01 > /etc/pki/CA/serial


在用到證書的服務器上操做:

1.建立一個目錄存放主機的私鑰;

2.生成私鑰;

3.生成證書籤署請求

4.將.csr文件請求經過可靠方式發送給CA主機;


步驟:(以httpd爲例)

(1) 用到證書的主機生成私鑰;

]# mkdir /etc/httpd/ssl 

]# cd /etc/httpd/ssl

]# (umask  077; openssl  genrsa -out  /etc/httpd/ssl/httpd.key  2048)


(2) 生成證書籤署請求

]# openssl req -new -key /etc/httpd/ssl/httpd.key -out /etc/httpd/ssl/httpd.csr -days 365

    

根據提示輸入相關信息,完成便可;


提示輸入:Country Name (2 letter code) [XX]:CN

提示輸入:State or Province Name (full name) []:Beijing

提示輸入:Locality Name (eg, city) [Default City]:Beijing   

提示輸入:Organization Name (eg, company) [Default Company Ltd]:MageEdu     

提示輸入:Organizational Unit Name (eg, section) []:Ops

提示輸入:Common Name (eg, your name or your server's hostname) []:www.magedu.com

    此處必定要爲客戶端訪問的地址;

提示輸入:Email Address []:webadmin@magedu.com

提示輸入:A challenge password []:可爲空

提示輸入:An optional company name []:可爲空


(3) 將請求經過可靠方式發送給CA主機;

]# ls:生成一個httpd.csr文件,把此文件用可靠方式發送給CA主機;

實際應用時,是CA公司來人到現場取走文件;

實驗環境,就是以scp命令,可實現兩主機間複製文件;

]# scp httpd.csr root@172.18.250.131:/tmp/

  表示在本地複製httpd.csr文件,以遠程主機172.18.250.131的root用戶身份拷貝此文件到遠程主機的/tmp/目錄下

  輸入yes,確認鏈接,再輸入遠程主機root用戶的登陸密碼,便可複製完成;

就是實現了把httpd.csr文件拷貝的CA主機上;

                    

(4) 在CA主機上籤署證書;

]# openssl ca -in /tmp/httpd.csr -out /etc/pki/CA/certs/httpd.crt -days 365

顯示提示:Sign the certificate? [y/n]:y

顯示提示:1 out of 1 certificate requests certified, commit? [y/n]y


把簽署的證書httpd.crt發送給服務器主機:


在實驗環境,還用scp兩主機直接拷貝文件httpd.crt便可;

]# scp certs/httpd.crt root@172.18.252.23:/etc/httpd/ssl/

輸入yes,確認鏈接,再輸入遠程主機root用戶的登陸密碼,便可複製完成;


此時在服務器主機上的httpd.csr就沒用了,能夠刪了;

在CA主機上的簽署前的httpd.csr也沒用了,也能夠刪了;

以上建立私有CA完成;


可在服務器主機或客戶端主機上(只要有證書),均可查看證書;

]# openssl x509 -in /etc/pki/CA/certs/httpd.crt -noout -serial -subject


2、nginx啓用ssl

# vim /etc/nginx/conf.d/ssl.conf

server {

    listen       443;

    server_name  _;


    ssl                  on;

    ssl_certificate      /etc/httpd/ssl/httpd.crt;

    ssl_certificate_key  /etc/httpd/ssl/httpd.key;


    ssl_session_timeout  5m;


    ssl_protocols  SSLv2 SSLv3 TLSv1;

    ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;

    ssl_prefer_server_ciphers   on;


    location / {

        root   html;

        index  index.html index.htm;

    }

}

      

測試兩臺web服務器80和443正常。


3、添加iptables mangle 

查看:

# iptables -t mangle -nvL --line-number 

修改:

# iptables -t mangle -R  PREROUTING 2  -d 192.168.1.212 -p tcp --dport 443 -j MARK --set-mark 10   

添加:

# iptables -t mangle -A PREROUTING -d 192.168.1.212 -p tcp --dport 80 -j MARK --set-mark 10

# iptables -t mangle -A PREROUTING -d 192.168.1.212 -p tcp --dport 80 -j MARK --set-mark 10

# iptables -t mangle -L -n -v



# iptables -t mangle -A PREROUTING -d 192.168.1.212 -p tcp --dport 443 -j MARK --set-mark 10


配置ipvsadm

# ipvsadm -C

# ipvsadm -l -n

[root@192 ~]# ipvsadm -A -f 10 -s rr

[root@192 ~]# ipvsadm -a -f 10 -r 192.168.1.213  -m -w 2

[root@192 ~]# ipvsadm -a -f 10 -r 192.168.1.214  -m -w 2 


[root@192 ~]#  ipvsadm -E -f 10 -s rr -p

相關文章
相關標籤/搜索