วิธีการสร้างเซิร์ฟเวอร์ OpenVPN บน Ubuntu 16.04

บทนำ

OpenVPN เป็น VPN ที่ปลอดภัยซึ่งใช้ SSL (Secure Socket Layer) และมีคุณสมบัติที่หลากหลาย ในคู่มือนี้เราจะพูดถึงกระบวนการติดตั้ง OpenVPN บน Ubuntu 16 โดยใช้ผู้ให้บริการออกใบรับรองที่โฮสต์ง่าย

ติดตั้ง

ในการเริ่มต้นเราต้องติดตั้งแพคเกจบางอย่าง:

sudo su
apt-get update
apt-get install openvpn easy-rsa

ผู้ออกใบรับรอง

OpenVPN เป็น SSL VPN ซึ่งหมายความว่ามันทำหน้าที่เป็นผู้ออกใบรับรองเพื่อเข้ารหัสการรับส่งข้อมูลระหว่างทั้งสองฝ่าย

ติดตั้ง

เราสามารถเริ่มต้นด้วยการตั้งค่าหน่วยงานออกใบรับรองของเซิร์ฟเวอร์ OpenVPN ของเราโดยใช้คำสั่งต่อไปนี้:

make-cadir ~/ovpn-ca

ตอนนี้เราสามารถเปลี่ยนเป็นไดเรกทอรีที่สร้างขึ้นใหม่ของเรา:

cd ~/ovpn-ca

กำหนดค่า

เปิดไฟล์ที่มีชื่อvarsและดูพารามิเตอร์ต่อไปนี้:

export KEY_COUNTRY="US"
export KEY_PROVINCE="NJ"
export KEY_CITY="Matawan"
export KEY_ORG="Your Awesome Organization"
export KEY_EMAIL="me@your_awesome_org.com"
export KEY_OU="YourOrganizationUnit"

และแก้ไขด้วยค่าของคุณเอง เราจำเป็นต้องค้นหาและแก้ไขบรรทัดต่อไปนี้:

export KEY_NAME="server"

สร้าง

ตอนนี้เราสามารถเริ่มสร้างผู้ให้บริการออกใบรับรองของเราโดยการเรียกใช้คำสั่งต่อไปนี้:

./clean-all
./build-ca

คำสั่งเหล่านี้อาจใช้เวลาสักครู่ในการทำให้สมบูรณ์

เซิร์ฟเวอร์-Key

ตอนนี้เราสามารถเริ่มสร้างคีย์เซิร์ฟเวอร์ของเราได้โดยการเรียกใช้คำสั่งต่อไปนี้:

./build-key-server server

ในขณะที่serverฟิลด์ควรจะถูกแทนที่ด้วยKEY_NAMEเราตั้งไว้ในvarsไฟล์ก่อนหน้านี้ serverในกรณีของเราเราสามารถเก็บ

กระบวนการสร้างรหัสเซิร์ฟเวอร์ของเราอาจถามคำถามสองสามข้อเช่นการหมดอายุของตัวเอง yเราตอบทุกคำถามเหล่านี้ด้วย

คีย์ที่แข็งแกร่ง

ในขั้นตอนต่อไปเราจะสร้างDiffie-Hellmanคีย์ที่แข็งแกร่งซึ่งจะใช้ในระหว่างการแลกเปลี่ยนคีย์ของเรา พิมพ์คำสั่งต่อไปนี้เพื่อสร้าง:

./build-dh

HMAC

ตอนนี้เราสามารถสร้างลายเซ็น HMAC เพื่อเสริมการตรวจสอบความสมบูรณ์ของเซิร์ฟเวอร์ TLS:

openvpn --genkey --secret keys/ta.key

สร้างรหัสลูกค้า

./build-key client

กำหนดค่าเซิร์ฟเวอร์

เมื่อเราสร้างผู้ให้บริการออกใบรับรองของเราสำเร็จแล้วเราสามารถเริ่มต้นด้วยการคัดลอกไฟล์ที่จำเป็นทั้งหมดและกำหนดค่า OpenVPN เอง ตอนนี้เรากำลังจะคัดลอกคีย์และใบรับรองที่สร้างขึ้นไปยังไดเรกทอรี OpenVPN ของเรา:

cd keys
cp ca.crt ca.key server.crt server.key ta.key dh2048.pem /etc/openvpn
cd ..

หลังจากนั้นเราสามารถคัดลอกตัวอย่างไฟล์กำหนดค่า OpenVPN ไปยังไดเรกทอรี OpenVPN ของเราโดยเรียกใช้คำสั่งต่อไปนี้:

gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | tee /etc/openvpn/server.conf

แก้ไขการกำหนดค่า

ตอนนี้เราสามารถเริ่มแก้ไขการกำหนดค่าเพื่อให้เหมาะกับความต้องการของเรา เปิดไฟล์/etc/openvpn/server.confและยกเลิกหมายเหตุบรรทัดต่อไปนี้:

push "redirect-gateway def1 bypass-dhcp"
user nobody
group nogroup
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
tls-auth ta.key 0

เราจำเป็นต้องเพิ่มบรรทัดใหม่ในการกำหนดค่าของเรา วางบรรทัดต่อไปนี้ไว้ใต้tls-authบรรทัด:

key-direction 0

อนุญาตให้ส่งต่อ

เนื่องจากเราต้องการอนุญาตให้ลูกค้าของเราเข้าถึงอินเทอร์เน็ตผ่านเซิร์ฟเวอร์ของเราเราจึงเปิดไฟล์ต่อไปนี้/etc/sysctl.confและไม่แสดงข้อคิดเห็นบรรทัดนี้:

net.ipv4.ip_forward=1

ตอนนี้เราต้องใช้การเปลี่ยนแปลง:

sysctl -p

NAT

เพื่อให้สามารถเข้าถึงอินเทอร์เน็ตให้กับไคลเอนต์ VPN ของเราเรายังต้องสร้างกฎ NAT กฎนี้เป็นหนึ่งซับสั้นที่มีลักษณะดังนี้:

iptables -t nat -A POSTROUTING -s 10.8.0.0/16 -o eth0 -j MASQUERADE

เริ่มต้น

ตอนนี้เราสามารถเริ่มต้นเซิร์ฟเวอร์ OpenVPN ของเราและให้ลูกค้าเชื่อมต่อโดยพิมพ์รหัสต่อไปนี้:

service openvpn start

ข้อสรุป

นี่เป็นการสรุปบทเรียนของเรา เพลิดเพลินกับเซิร์ฟเวอร์ OpenVPN ใหม่ของคุณ!

ฝากความเห็น

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true