Difference between revisions of "CMU OpenVPN Implementation"
From CMU ITSC Network
Line 51: | Line 51: | ||
สร้างไฟล์ '''/etc/openvpn/server.conf''' ดังนี้ | สร้างไฟล์ '''/etc/openvpn/server.conf''' ดังนี้ | ||
<syntaxhighlight lang=text> | <syntaxhighlight lang=text> | ||
− | + | port 443 | |
− | + | proto tcp | |
+ | dev tun | ||
+ | ca ca.crt | ||
+ | cert server.crt | ||
+ | key server.key | ||
+ | dh dh2048.pem | ||
+ | server 10.10.10.0 255.255.255.0 #ระบุ ip network ที่ต้องการ | ||
+ | ifconfig-pool-persist /var/log/openvpn/ipp.txt | ||
+ | push "redirect-gateway def1 bypass-dhcp" | ||
+ | duplicate-cn | ||
+ | keepalive 10 120 | ||
+ | tls-auth ta.key 0 | ||
+ | cipher AES-256-CBC | ||
+ | user nobody | ||
+ | group nogroup | ||
+ | persist-key | ||
+ | persist-tun | ||
+ | status /var/log/openvpn/openvpn-status.log | ||
+ | log /var/log/openvpn/openvpn.log | ||
+ | verb 3 | ||
+ | plugin /etc/openvpn/radius/radiusplugin.so /etc/openvpn/radius/radius.cnf | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 08:55, 13 December 2018
บทนำ
บทความนี้เป็นการ implement OpenVPN Server ที่ให้ user log in ด้วย account ที่อยู่บน directory ขององค์กรโดยใช้ protocol radius โดยตัวอย่างจะใช้ server เป็น Ubuntu 18.04
การติดตั้ง
sudo add-apt-repository universe
sudo apt-get update && sudo apt-get install openvpn easy-rsa
การตั้งค่า Server
สร้าง directory สำหรับเก็บ CA(certificate authority), key pairs,DH, tls-auth-key
make-cadir certificates && cd certificates
ตั้งค่าตัวแปรสำหรับสร้าง CA
แก้ไขไฟล์ vars ในส่วนของตัวแปรต่อไปนี้ตามต้องการ
export KEY_COUNTRY="US"
export KEY_PROVINCE="CA"
export KEY_CITY="SanFrancisco"
export KEY_ORG="Fort-Funston"
export KEY_EMAIL="me@myhost.mydomain"
export KEY_OU="MyOrganizationalUnit"
จากนั้นทำการประกาศค่าตัวแปร
ln -s openssl-1.0.0.cnf openssl.cnf
source vars
สร้าง CA
./clean-all && ./build-ca
สร้าง Certificate/Key pairs
./build-key-server server
สร้าง DH
./build-dh
openvpn --genkey --secret keys/ta.key
sudo cp keys/{server.crt,server.key,ca.crt,dh2048.pem,ta.key} /etc/openvpn
ตั้งค่า OpenVPN server
สร้างไฟล์ /etc/openvpn/server.conf ดังนี้
port 443
proto tcp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.10.10.0 255.255.255.0 #ระบุ ip network ที่ต้องการ
ifconfig-pool-persist /var/log/openvpn/ipp.txt
push "redirect-gateway def1 bypass-dhcp"
duplicate-cn
keepalive 10 120
tls-auth ta.key 0
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
verb 3
plugin /etc/openvpn/radius/radiusplugin.so /etc/openvpn/radius/radius.cnf