ค้นหาเว็บไซต์

วิธีติดตั้งและกำหนดค่าเซิร์ฟเวอร์ OpenVPN ใน CentOS 8/7


เครือข่ายส่วนตัวเสมือน คือโซลูชันเทคโนโลยีที่ใช้เพื่อให้ความเป็นส่วนตัวและความปลอดภัยสำหรับการเชื่อมต่อระหว่างเครือข่าย กรณีที่เป็นที่รู้จักมากที่สุดประกอบด้วยบุคคลที่เชื่อมต่อกับเซิร์ฟเวอร์ระยะไกลโดยมีการรับส่งข้อมูลผ่านเครือข่ายสาธารณะหรือเครือข่ายที่ไม่ปลอดภัย (เช่น อินเทอร์เน็ต)

ลองนึกภาพสถานการณ์ต่อไปนี้:

ในบทความนี้ เราจะอธิบายวิธีการตั้งค่าเซิร์ฟเวอร์ VPN ในกล่อง RHEL/CentOS 8/7 โดยใช้ OpenVPN< แอปพลิเคชันทันเนลที่แข็งแกร่งและมีความยืดหยุ่นสูงซึ่งใช้คุณสมบัติการเข้ารหัส การรับรองความถูกต้อง และการรับรองของไลบรารี OpenSSL เพื่อความง่าย เราจะพิจารณาเฉพาะกรณีที่เซิร์ฟเวอร์ OpenVPN ทำหน้าที่เป็นเกตเวย์อินเทอร์เน็ตที่ปลอดภัยสำหรับไคลเอ็นต์เท่านั้น

สำหรับการตั้งค่านี้ เราใช้เครื่องสามเครื่อง เครื่องแรกทำหน้าที่เป็นเซิร์ฟเวอร์ OpenVPN และอีกสองเครื่อง (Linux และ Windows) ทำหน้าที่เป็นไคลเอนต์เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ OpenVPN ระยะไกล

บนหน้านี้

  • การติดตั้งเซิร์ฟเวอร์ OpenVPN ใน CentOS 8
  • กำหนดค่าไคลเอนต์ OpenVPN ใน Linux
  • กำหนดค่าไคลเอนต์ OpenVPN ใน Windows

หมายเหตุ: คำแนะนำเดียวกันนี้ยังใช้ได้กับระบบ RHEL 8/7 และ Fedora

การติดตั้งเซิร์ฟเวอร์ OpenVPN ใน CentOS 8

1. หากต้องการติดตั้ง OpenVPN ในเซิร์ฟเวอร์ RHEL/CentOS 8/7 คุณจะต้องเปิดใช้งานก่อน ที่เก็บ EPEL แล้วติดตั้งแพ็คเกจ สิ่งนี้มาพร้อมกับการพึ่งพาทั้งหมดที่จำเป็นในการติดตั้งแพ็คเกจ OpenVPN

yum update
yum install epel-release

2. ต่อไป เราจะดาวน์โหลดสคริปต์การติดตั้ง OpenVPN และตั้งค่า VPN ก่อนที่จะดาวน์โหลดและเรียกใช้สคริปต์ สิ่งสำคัญคือคุณต้องค้นหาที่อยู่ IP สาธารณะของเซิร์ฟเวอร์ของคุณ เนื่องจากจะมีประโยชน์เมื่อตั้งค่าเซิร์ฟเวอร์ OpenVPN

วิธีง่ายๆ ในการทำเช่นนี้คือใช้คำสั่ง curl ดังที่แสดง:

curl ifconfig.me

หรือคุณสามารถเรียกใช้คำสั่ง dig ดังต่อไปนี้:

dig +short myip.opendns.com @resolver1.opendns.com

หากคุณพบข้อผิดพลาด “dig: ไม่พบคำสั่ง” ให้ติดตั้งยูทิลิตี dig โดยเรียกใช้คำสั่ง:

sudo yum install bind-utils

สิ่งนี้ควรแก้ไขปัญหาได้

หมายเหตุเกี่ยวกับที่อยู่ IP สาธารณะ

โดยปกติเซิร์ฟเวอร์คลาวด์จะมีที่อยู่ IP 2 ประเภท:

  • ที่อยู่ IP สาธารณะเดียว: หากคุณมี VPS บนแพลตฟอร์มคลาวด์ เช่น Linode, Cloudcone หรือ Digital Ocean โดยปกติคุณจะพบกับ ที่อยู่ IP สาธารณะเดียวที่แนบมาด้วย
  • ที่อยู่ IP ส่วนตัวหลัง NAT พร้อมด้วย IP สาธารณะ: นี่เป็นกรณีของอินสแตนซ์ EC2 บน AWS หรืออินสแตนซ์การประมวลผลบน กูเกิลคลาวด์.

ไม่ว่ารูปแบบการกำหนดที่อยู่ IP จะเป็นเช่นไร สคริปต์ OpenVPN จะตรวจจับการตั้งค่าเครือข่าย VPS ของคุณโดยอัตโนมัติ และสิ่งที่คุณต้องทำคือระบุที่อยู่ IP สาธารณะหรือส่วนตัวที่เกี่ยวข้อง

3. ตอนนี้มาดำเนินการต่อและดาวน์โหลดสคริปต์การติดตั้ง OpenVPN เรียกใช้คำสั่งที่แสดง

wget https://raw.githubusercontent.com/Angristan/openvpn-install/master/openvpn-install.sh

4. เมื่อการดาวน์โหลดเสร็จสิ้น ให้กำหนดสิทธิ์ดำเนินการและเรียกใช้เชลล์สคริปต์ตามที่แสดง

sudo chmod +x openvpn-install.sh
sudo ./openvpn-install.sh

โปรแกรมติดตั้งจะนำคุณผ่านชุดข้อความแจ้ง:

5. ขั้นแรก คุณจะได้รับแจ้งให้ระบุที่อยู่ IP สาธารณะของเซิร์ฟเวอร์ของคุณ หลังจากนั้น ขอแนะนำให้เลือกใช้ตัวเลือกเริ่มต้น เช่น หมายเลขพอร์ตเริ่มต้น (1194) และโปรโตคอลที่จะใช้ (UDP)

6. ถัดไป เลือกรีโซลเวอร์ DNS เริ่มต้น และเลือกตัวเลือกไม่มี ( n ) สำหรับการตั้งค่าการบีบอัดและการเข้ารหัส

7. เมื่อเสร็จแล้ว สคริปต์จะเริ่มต้นการตั้งค่าเซิร์ฟเวอร์ OpenVPN พร้อมกับการติดตั้งแพ็คเกจซอฟต์แวร์และการขึ้นต่อกันอื่นๆ

8. สุดท้ายนี้ ไฟล์การกำหนดค่าไคลเอ็นต์จะถูกสร้างขึ้นโดยใช้แพ็คเกจ easy-RSA ซึ่งเป็นเครื่องมือบรรทัดคำสั่งที่ใช้สำหรับจัดการใบรับรองความปลอดภัย

เพียงระบุชื่อของลูกค้าและเลือกตัวเลือกเริ่มต้น ไฟล์ไคลเอนต์จะถูกจัดเก็บไว้ในโฮมไดเร็กตอรี่ของคุณด้วยนามสกุลไฟล์ .ovpn

9. เมื่อสคริปต์ตั้งค่าเซิร์ฟเวอร์ OpenVPN เสร็จแล้ว และสร้างไฟล์การกำหนดค่าไคลเอนต์ อินเทอร์เฟซช่องสัญญาณ tun0 จะปรากฏขึ้น นี่คืออินเทอร์เฟซเสมือนที่การรับส่งข้อมูลทั้งหมดจากพีซีไคลเอนต์จะถูกส่งไปยังเซิร์ฟเวอร์

10. ตอนนี้คุณสามารถเริ่มต้นและตรวจสอบสถานะของเซิร์ฟเวอร์ OpenVPN ดังที่แสดง

sudo systemctl start [email 
sudo systemctl status [email 

วิธีกำหนดค่าไคลเอนต์ OpenVPN ใน Linux

11. ตอนนี้ตรงไปที่ระบบไคลเอนต์และติดตั้งที่เก็บ EPEL และแพ็คเกจซอฟต์แวร์ OpenVPN

sudo dnf install epel-release -y
sudo dnf install openvpn -y

12. เมื่อติดตั้งแล้ว คุณจะต้องคัดลอกไฟล์การกำหนดค่าไคลเอนต์จากเซิร์ฟเวอร์ OpenVPN ไปยังระบบไคลเอนต์ของคุณ คุณสามารถทำได้โดยใช้คำสั่ง scp ดังที่แสดง

sudo scp -r [email :/home/tecmint/tecmint01.ovpn .

13. เมื่อดาวน์โหลดไฟล์ไคลเอนต์ไปยังระบบ Linux ของคุณแล้ว ตอนนี้คุณสามารถเริ่มต้นการเชื่อมต่อกับเซิร์ฟเวอร์ VPN โดยใช้คำสั่ง:

sudo openvpn --config tecmint01.ovpn

คุณจะได้ผลลัพธ์คล้ายกับที่เรามีด้านล่าง

14. ตารางเส้นทางใหม่ถูกสร้างขึ้นและสร้างการเชื่อมต่อกับเซิร์ฟเวอร์ VPN อีกครั้ง อินเตอร์เฟสเสมือนของทันเนลอินเตอร์เฟส tun0 ถูกสร้างขึ้นบนระบบไคลเอ็นต์

ตามที่กล่าวไว้ข้างต้น นี่คืออินเทอร์เฟซที่จะส่งสัญญาณการรับส่งข้อมูลทั้งหมดอย่างปลอดภัยไปยังเซิร์ฟเวอร์ OpenVPN ผ่านช่องทาง SSL อินเทอร์เฟซได้รับการกำหนดที่อยู่ IP แบบไดนามิกโดยเซิร์ฟเวอร์ VPN อย่างที่คุณเห็น ระบบ Linux ไคลเอนต์ของเราได้รับการกำหนดที่อยู่ IP เป็น 10.8.0.2 โดยเซิร์ฟเวอร์ OpenVPN

ifconfig

15. เพียงเพื่อให้แน่ใจว่าเราเชื่อมต่อกับเซิร์ฟเวอร์ OpenVPN เราจะตรวจสอบ IP สาธารณะ

curl ifconfig.me

แล้วก็เอาล่ะ! ระบบลูกค้าของเราได้เลือก IP สาธารณะของ VPN เพื่อยืนยันว่าเราเชื่อมต่อกับเซิร์ฟเวอร์ OpenVPN จริงๆ หรือคุณสามารถเปิดเบราว์เซอร์ของคุณและค้นหาโดย Google “ที่อยู่ IP ของฉันคืออะไร ” เพื่อยืนยันว่า IP สาธารณะของคุณเปลี่ยนเป็น IP ของเซิร์ฟเวอร์ OpenVPN

วิธีกำหนดค่าไคลเอนต์ OpenVPN บน Windows

16. บน Windows คุณจะต้องดาวน์โหลดไบนารี OpenVPN Community Edition อย่างเป็นทางการที่มาพร้อมกับ GUI

17. จากนั้น ดาวน์โหลดไฟล์การกำหนดค่า .ovpn ของคุณลงในไดเร็กทอรี C:\Program Files\OpenVPN\config และในฐานะผู้ดูแลระบบ ให้เริ่ม OpenVPN GUI จาก เริ่มต้น –> โปรแกรมทั้งหมด –> OpenVPN และจะถูกเปิดใช้งานในเบื้องหลัง

18. ตอนนี้เปิดเบราว์เซอร์แล้วเปิด http://whatismyip.org/ และคุณควรเห็น IP ของเซิร์ฟเวอร์ OpenVPN ของคุณ แทนที่จะเป็น IP สาธารณะที่คุณได้รับจาก < แข็งแกร่ง>ISP:

สรุป

ในบทความนี้ เราได้อธิบายวิธีการตั้งค่าและกำหนดค่าเซิร์ฟเวอร์ VPN โดยใช้ OpenVPN และวิธีตั้งค่า ไคลเอ็นต์ระยะไกลสองตัว (Linux > กล่องและเครื่อง Windows) ตอนนี้คุณสามารถใช้เซิร์ฟเวอร์นี้เป็นเกตเวย์ VPN เพื่อรักษาความปลอดภัยกิจกรรมการท่องเว็บของคุณ ด้วยความพยายามพิเศษเพียงเล็กน้อย (และมีเซิร์ฟเวอร์ระยะไกลอื่นที่พร้อมใช้งาน) คุณยังสามารถตั้งค่าเซิร์ฟเวอร์ไฟล์/ฐานข้อมูลที่ปลอดภัยเพื่อตั้งชื่อตัวอย่างบางส่วนได้

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