亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原創

vpn 部署

2023-10-19 10:27:04
78
0

環境示意圖

安裝openvpn

1、環境
系統版本:CentOS 7.9
防火墻: 關閉狀態
2、安裝EPEL套件庫,更新
yum -y install epel-release && yum -y update
3、安裝 OpenVPN和證書工具
yum install -y openvpn easy-rsa
4、準備相關配置文件
cp /usr/share/doc/openvpn-2.4.12/sample/sample-config-files/server.conf /etc/openvpn/
cp -r /usr/share/easy-rsa/ /etc/openvpn/easy-rsa-server
cp /usr/share/doc/easy-rsa-3.0.8/vars.example /etc/openvpn/easy-rsa-server/3/vars
vim /etc/openvpn/easy-rsa-server/3/vars
#CA的證書有效期默為為10年,可以適當延長,比如:36500天
#set_var EASYRSA_CA_EXPIRE  3650
set_var EASYRSA_CA_EXPIRE   36500
#服務器證書默為為825天,可適當加長,比如:3650天
#set_var EASYRSA_CERT_EXPIRE    825
set_var EASYRSA_CERT_EXPIRE 3650

準備證書相關文件

初始化 PKI 和 CA 簽發機構環境
初始化 PKI 生成 PKI 相關目錄和文件
cd /etc/openvpn/easy-rsa-server/3
./easyrsa init-pki
創建 CA 機構
./easyrsa build-ca nopass
回車即可
創建服務端證書申請
./easyrsa gen-req server nopass
接受Common Name默認
簽發服務端證書
 ./easyrsa sign server server
 #輸入yes回車
創建 Diifie-Hellman 密鑰
./easyrsa gen-dh
準備客戶端證書環境
cp -r /usr/share/easy-rsa/ /etc/openvpn/easy-rsa-client
cp /usr/share/doc/easy-rsa-3.0.8/vars.example /etc/openvpn/easy-rsa-client/3/vars
cd /etc/openvpn/easy-rsa-client/3
./easyrsa init-pki
創建客戶端證書申請
./easyrsa gen-req myclient nopass
# 創建client密碼
接受默認回車
簽發客戶端證書
 cd /etc/openvpn/easy-rsa-server/3
 ./easyrsa import-req /etc/openvpn/easy-rsa-client/3/pki/reqs/myclient.req myclient
 ./easyrsa sign client myclient
 # 輸入yes后回車
將 CA 和服務器證書相關文件復制到服務器相應的目錄
mkdir /etc/openvpn/certs
cp /etc/openvpn/easy-rsa-server/3/pki/ca.crt /etc/openvpn/certs/
cp /etc/openvpn/easy-rsa-server/3/pki/issued/server.crt /etc/openvpn/certs/
cp /etc/openvpn/easy-rsa-server/3/pki/private/server.key /etc/openvpn/certs/
cp /etc/openvpn/easy-rsa-server/3/pki/dh.pem /etc/openvpn/certs/
將客戶端私鑰與證書相關文件復制到服務器相關的目錄
mkdir /etc/openvpn/client/myclient
find /etc/openvpn/ \( -name "myclient.key" -o -name "myclient.crt" -o -name "ca.crt" \) -exec cp {} /etc/openvpn/client/myclient \;
準備用戶認證的腳本
vim /etc/openvpn/checkpsw.sh 
#!/bin/sh
###########################################################
# checkpsw.sh (C) 2004 Mathias Sundman 
#
# This script will authenticate OpenVPN users against
# a plain text file. The passfile should simply contain
# one row per user with the username first followed by
# one or more space(s) or tab(s) and then the password.
 
PASSFILE="/etc/openvpn/psw-file"
LOG_FILE="/etc/openvpn/openvpn-password.log"
TIME_STAMP=`date "+%Y-%m-%d %T"`
 
###########################################################
 
if [ ! -r "${PASSFILE}" ]; then
  echo "${TIME_STAMP}: Could not open password file \"${PASSFILE}\" for reading." >> ${LOG_FILE}
  exit 1
fi
 
CORRECT_PASSWORD=`awk '!/^;/&&!/^#/&&$1=="'${username}'"{print $2;exit}' ${PASSFILE}`
 
if [ "${CORRECT_PASSWORD}" = "" ]; then 
  echo "${TIME_STAMP}: User does not exist: username=\"${username}\", password=\"${password}\"." >> ${LOG_FILE}
  exit 1
fi
 
if [ "${password}" = "${CORRECT_PASSWORD}" ]; then 
  echo "${TIME_STAMP}: Successful authentication: username=\"${username}\"." >> ${LOG_FILE}
  exit 0
fi
 
echo "${TIME_STAMP}: Incorrect password: username=\"${username}\", password=\"${password}\"." >> ${LOG_FILE}
exit 1
腳本執行權限
chmod 755 /etc/openvpn/checkpsw.sh
配置用戶密碼文件
vim /etc/openvpn/psw-file 
abcdocker 123456
abc 123456
test test
#前面為用戶名,后面為密碼。 中間使用空格分開
準備 OpenVPN 服務器配置文件
vim /etc/openvpn/server.conf
port 1194    #端口
proto tcp     #協議,生產推薦使用TCP
dev tun
ca /etc/openvpn/certs/ca.crt    #ca證書文件
cert /etc/openvpn/certs/server.crt   #服務器證書文件
key /etc/openvpn/certs/server.key  #服務器私鑰文件
dh /etc/openvpn/certs/dh.pem       #dh參數文件
server 192.168.0.0 255.255.255.0     #客戶端連接后分配IP的地址池,服務器默認會占用第一個IP192.168.0.1將做為客戶端的網關,注意:不能和VPN服務器內網網段有相同
#ifconfig-pool-persist ipp.txt      #為客戶端分配固定IP,不需要配置,建議注釋
push "route 172.16.0.0 255.255.255.0"  #推送路由信息到客戶端,以允許客戶端能夠連接到服務器背后的其它私有子網
keepalive 10 120   #設置服務端檢測的間隔和超時時間,默認為每10秒ping一次,如果 120秒沒有回應則認為對方已經down
cipher AES-256-CBC   #加密算法
compress lz4-v2   #啟用Openvpn2.4.X新版壓縮算法
push "compress lz4-v2"  #推送客戶端使用新版壓縮算法
max-clients 100         #最大客戶端數
#user openvpn            #運行openvpn服務的用戶和組
#group openvpn
status /var/log/openvpn-status.log    #openVPN狀態記錄文件,每分鐘會記錄一次
log-append  /var/log/openvpn.log      #指定日志路徑,重啟openvpn后在之前的日志后面追加新的日志,生產環境建議使用
verb 3         #設置日志級別,0-9,級別越高記錄的內容越詳細,0 表示靜默運行,只記錄致命錯誤,4 表示合理的常規用法,5 和 6 可以幫助調試連接錯誤。9 表示極度冗余,輸出非常詳細的日志信息
mute 20         #相同類別的信息只有前20條會輸出到日志文件中
script-security 3
auth-user-pass-verify /etc/openvpn/checkpsw.sh via-env    #指定用戶認證腳本
username-as-common-name
verify-client-cert none
準備 iptables 規則和內核參數
echo net.ipv4.ip_forward = 1 >>/etc/sysctl.conf
sysctl -p
echo "iptables -t nat -APOSTROUTING -s 192.168.0.0/24 -j MASQUERADE" >>/etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local
/etc/rc.d/rc.local
啟動 OpenVPN 服務
systemctl enable openvpn@server
systemctl start openvpn@server
準備 OpenVPN 客戶端配置文件
生成客戶端文件,文件后綴必須為.ovpn
vim /etc/openvpn/client/myclient/client.ovpn
client   #聲明自己是個客戶端
dev tun   #接口類型,必須和服務端保持一致
proto tcp    #協議類型,必須和服務端保持一致
remote 10.190.171.41 1194     #server端的ip和端口,可以寫域名但是需要可以解析成IP,這里是虛擬機的eip
resolv-retry infinite      #如果是寫的server端的域名,那么就始終解析,如果域名發生變化,會重新連接到新的域名對應的IP
nobind           #本機不綁定監聽端口,客戶端是隨機打開端口連接到服務端的1194
ca ca.crt
cert myclient.crt
key myclient.key
remote-cert-tls server       #指定采用服務器證書校驗方式
cipher AES-256-CBC
verb 3
compress lz4-v2
auth-user-pass 
將/etc/openvpn/client/myclient/ 下文件拷貝出來

OpenVPN 客戶端使用

安裝openvpn 客戶端并導入client.ovpn 配置文件,輸入client密碼。
0條評論
0 / 1000
timeout
3文章數
0粉絲數(shu)
timeout
3 文章 | 0 粉(fen)絲
timeout
3文章數(shu)
0粉絲(si)數
timeout
3 文(wen)章 | 0 粉(fen)絲
原創(chuang)

vpn 部署

2023-10-19 10:27:04
78
0

環境示意圖

安裝openvpn

1、環境
系統版本:CentOS 7.9
防火墻: 關閉狀態
2、安裝EPEL套件庫,更新
yum -y install epel-release && yum -y update
3、安裝 OpenVPN和證書工具
yum install -y openvpn easy-rsa
4、準備相關配置文件
cp /usr/share/doc/openvpn-2.4.12/sample/sample-config-files/server.conf /etc/openvpn/
cp -r /usr/share/easy-rsa/ /etc/openvpn/easy-rsa-server
cp /usr/share/doc/easy-rsa-3.0.8/vars.example /etc/openvpn/easy-rsa-server/3/vars
vim /etc/openvpn/easy-rsa-server/3/vars
#CA的證書有效期默為為10年,可以適當延長,比如:36500天
#set_var EASYRSA_CA_EXPIRE  3650
set_var EASYRSA_CA_EXPIRE   36500
#服務器證書默為為825天,可適當加長,比如:3650天
#set_var EASYRSA_CERT_EXPIRE    825
set_var EASYRSA_CERT_EXPIRE 3650

準備證書相關文件

初始化 PKI 和 CA 簽發機構環境
初始化 PKI 生成 PKI 相關目錄和文件
cd /etc/openvpn/easy-rsa-server/3
./easyrsa init-pki
創建 CA 機構
./easyrsa build-ca nopass
回車即可
創建服務端證書申請
./easyrsa gen-req server nopass
接受Common Name默認
簽發服務端證書
 ./easyrsa sign server server
 #輸入yes回車
創建 Diifie-Hellman 密鑰
./easyrsa gen-dh
準備客戶端證書環境
cp -r /usr/share/easy-rsa/ /etc/openvpn/easy-rsa-client
cp /usr/share/doc/easy-rsa-3.0.8/vars.example /etc/openvpn/easy-rsa-client/3/vars
cd /etc/openvpn/easy-rsa-client/3
./easyrsa init-pki
創建客戶端證書申請
./easyrsa gen-req myclient nopass
# 創建client密碼
接受默認回車
簽發客戶端證書
 cd /etc/openvpn/easy-rsa-server/3
 ./easyrsa import-req /etc/openvpn/easy-rsa-client/3/pki/reqs/myclient.req myclient
 ./easyrsa sign client myclient
 # 輸入yes后回車
將 CA 和服務器證書相關文件復制到服務器相應的目錄
mkdir /etc/openvpn/certs
cp /etc/openvpn/easy-rsa-server/3/pki/ca.crt /etc/openvpn/certs/
cp /etc/openvpn/easy-rsa-server/3/pki/issued/server.crt /etc/openvpn/certs/
cp /etc/openvpn/easy-rsa-server/3/pki/private/server.key /etc/openvpn/certs/
cp /etc/openvpn/easy-rsa-server/3/pki/dh.pem /etc/openvpn/certs/
將客戶端私鑰與證書相關文件復制到服務器相關的目錄
mkdir /etc/openvpn/client/myclient
find /etc/openvpn/ \( -name "myclient.key" -o -name "myclient.crt" -o -name "ca.crt" \) -exec cp {} /etc/openvpn/client/myclient \;
準備用戶認證的腳本
vim /etc/openvpn/checkpsw.sh 
#!/bin/sh
###########################################################
# checkpsw.sh (C) 2004 Mathias Sundman 
#
# This script will authenticate OpenVPN users against
# a plain text file. The passfile should simply contain
# one row per user with the username first followed by
# one or more space(s) or tab(s) and then the password.
 
PASSFILE="/etc/openvpn/psw-file"
LOG_FILE="/etc/openvpn/openvpn-password.log"
TIME_STAMP=`date "+%Y-%m-%d %T"`
 
###########################################################
 
if [ ! -r "${PASSFILE}" ]; then
  echo "${TIME_STAMP}: Could not open password file \"${PASSFILE}\" for reading." >> ${LOG_FILE}
  exit 1
fi
 
CORRECT_PASSWORD=`awk '!/^;/&&!/^#/&&$1=="'${username}'"{print $2;exit}' ${PASSFILE}`
 
if [ "${CORRECT_PASSWORD}" = "" ]; then 
  echo "${TIME_STAMP}: User does not exist: username=\"${username}\", password=\"${password}\"." >> ${LOG_FILE}
  exit 1
fi
 
if [ "${password}" = "${CORRECT_PASSWORD}" ]; then 
  echo "${TIME_STAMP}: Successful authentication: username=\"${username}\"." >> ${LOG_FILE}
  exit 0
fi
 
echo "${TIME_STAMP}: Incorrect password: username=\"${username}\", password=\"${password}\"." >> ${LOG_FILE}
exit 1
腳本執行權限
chmod 755 /etc/openvpn/checkpsw.sh
配置用戶密碼文件
vim /etc/openvpn/psw-file 
abcdocker 123456
abc 123456
test test
#前面為用戶名,后面為密碼。 中間使用空格分開
準備 OpenVPN 服務器配置文件
vim /etc/openvpn/server.conf
port 1194    #端口
proto tcp     #協議,生產推薦使用TCP
dev tun
ca /etc/openvpn/certs/ca.crt    #ca證書文件
cert /etc/openvpn/certs/server.crt   #服務器證書文件
key /etc/openvpn/certs/server.key  #服務器私鑰文件
dh /etc/openvpn/certs/dh.pem       #dh參數文件
server 192.168.0.0 255.255.255.0     #客戶端連接后分配IP的地址池,服務器默認會占用第一個IP192.168.0.1將做為客戶端的網關,注意:不能和VPN服務器內網網段有相同
#ifconfig-pool-persist ipp.txt      #為客戶端分配固定IP,不需要配置,建議注釋
push "route 172.16.0.0 255.255.255.0"  #推送路由信息到客戶端,以允許客戶端能夠連接到服務器背后的其它私有子網
keepalive 10 120   #設置服務端檢測的間隔和超時時間,默認為每10秒ping一次,如果 120秒沒有回應則認為對方已經down
cipher AES-256-CBC   #加密算法
compress lz4-v2   #啟用Openvpn2.4.X新版壓縮算法
push "compress lz4-v2"  #推送客戶端使用新版壓縮算法
max-clients 100         #最大客戶端數
#user openvpn            #運行openvpn服務的用戶和組
#group openvpn
status /var/log/openvpn-status.log    #openVPN狀態記錄文件,每分鐘會記錄一次
log-append  /var/log/openvpn.log      #指定日志路徑,重啟openvpn后在之前的日志后面追加新的日志,生產環境建議使用
verb 3         #設置日志級別,0-9,級別越高記錄的內容越詳細,0 表示靜默運行,只記錄致命錯誤,4 表示合理的常規用法,5 和 6 可以幫助調試連接錯誤。9 表示極度冗余,輸出非常詳細的日志信息
mute 20         #相同類別的信息只有前20條會輸出到日志文件中
script-security 3
auth-user-pass-verify /etc/openvpn/checkpsw.sh via-env    #指定用戶認證腳本
username-as-common-name
verify-client-cert none
準備 iptables 規則和內核參數
echo net.ipv4.ip_forward = 1 >>/etc/sysctl.conf
sysctl -p
echo "iptables -t nat -APOSTROUTING -s 192.168.0.0/24 -j MASQUERADE" >>/etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local
/etc/rc.d/rc.local
啟動 OpenVPN 服務
systemctl enable openvpn@server
systemctl start openvpn@server
準備 OpenVPN 客戶端配置文件
生成客戶端文件,文件后綴必須為.ovpn
vim /etc/openvpn/client/myclient/client.ovpn
client   #聲明自己是個客戶端
dev tun   #接口類型,必須和服務端保持一致
proto tcp    #協議類型,必須和服務端保持一致
remote 10.190.171.41 1194     #server端的ip和端口,可以寫域名但是需要可以解析成IP,這里是虛擬機的eip
resolv-retry infinite      #如果是寫的server端的域名,那么就始終解析,如果域名發生變化,會重新連接到新的域名對應的IP
nobind           #本機不綁定監聽端口,客戶端是隨機打開端口連接到服務端的1194
ca ca.crt
cert myclient.crt
key myclient.key
remote-cert-tls server       #指定采用服務器證書校驗方式
cipher AES-256-CBC
verb 3
compress lz4-v2
auth-user-pass 
將/etc/openvpn/client/myclient/ 下文件拷貝出來

OpenVPN 客戶端使用

安裝openvpn 客戶端并導入client.ovpn 配置文件,輸入client密碼。
文章來自個人專欄
文章 | 訂閱
0條評論
0 / 1000
請輸入你的評論
0
0