เป็นไปได้ไหมที่จะติดตั้ง openvpn เป็นบริการ การติดตั้ง OpenVPN บน Windows VPS

เรายินดีที่จะต้อนรับคุณสู่เว็บไซต์ของเรา! คำแนะนำเหล่านี้มีไว้เพื่อช่วยคุณตั้งค่าการเชื่อมต่อ VPN โดยใช้ ไคลเอนต์ OpenVPNสำหรับห้องผ่าตัด ระบบวินโดวส์ 7.

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

ในการตั้งค่าช่อง VPN ผ่าน OpenVPN สำหรับ Windows 7 คุณต้องมี:

  • ระบบปฏิบัติการวินโดวส์ 7;
  • โปรแกรม OpenVPN;
  • ไฟล์การกำหนดค่าจากผู้ให้บริการ

เรามาเริ่มตั้งค่าการเชื่อมต่อ VPN โดยใช้ OpenVPN กันดีกว่า

1. สิ่งแรกที่คุณต้องทำคือดาวน์โหลดตัวติดตั้ง OpenVPN ลงในคอมพิวเตอร์ของคุณ (คุณสามารถดาวน์โหลดได้ที่) ดาวน์โหลดตัวติดตั้งลงในคอมพิวเตอร์ของคุณหรือคลิกปุ่ม "เรียกใช้" ทันทีดังที่แสดงในภาพหน้าจอด้านล่าง

2. หลังจากที่คุณคลิก “Run” กระบวนการดาวน์โหลดตัวติดตั้งจริงจะเริ่มต้นขึ้น

3. หลังจากการดาวน์โหลดเสร็จสิ้น คุณจะได้รับแจ้งให้ติดตั้งโปรแกรมบนคอมพิวเตอร์ของคุณ คุณตกลงและคลิกปุ่ม “Run” อีกครั้ง ดูรูปด้านล่าง

4. ที่จุดเริ่มต้นของการติดตั้ง ให้คลิกปุ่ม C:\Program Files\OpenVPN

5. จากนั้นคุณจะถูกขอให้อ่านใบอนุญาตเพื่อใช้ซอฟต์แวร์ที่ติดตั้ง หลังจากอ่านแล้วคุณคลิก “ฉันยอมรับ” (“ฉันยอมรับ”)

6. หน้าต่างถัดไปแสดงรายการชุดส่วนประกอบที่จะติดตั้งบนคอมพิวเตอร์ของคุณ อย่าเปลี่ยนแปลงสิ่งใดที่นี่และคลิก "ถัดไป" อีกครั้ง

7. ในหน้าต่างนี้ คุณสามารถเลือกเส้นทางที่จะติดตั้งโปรแกรม โดยค่าเริ่มต้น OpenVPN จะถูกติดตั้งในโฟลเดอร์ C:\Program Files\OpenVPN หากคุณพอใจกับเส้นทางนี้ ให้คลิกปุ่ม "ติดตั้ง"

8. ระหว่างการติดตั้งโปรแกรมจะมีหน้าต่างปรากฏขึ้นบนหน้าจอซึ่งคุณต้องยืนยันการติดตั้งไดรเวอร์ให้คลิก “ติดตั้ง”

9. รอให้กระบวนการติดตั้งโปรแกรมเสร็จสิ้นแล้วคลิกปุ่ม “ถัดไป” อีกครั้ง

10. หลังจากการติดตั้งเสร็จสิ้น ให้คลิกปุ่ม "Finish"

11. ตอนนี้คุณต้องคัดลอกไฟล์การกำหนดค่าที่ได้รับจากผู้ให้บริการไปยังโฟลเดอร์ที่เส้นทางนี้: C:\Program Files\OpenVPN\config โดยไปที่โฟลเดอร์ที่ระบุ เรียกเมนูบริบทและเลือก "วาง"

12. หลังจากนี้ คำขอเข้าถึงจะปรากฏขึ้นบนหน้าจอของคุณ โดยคลิก “ดำเนินการต่อ”

13. เพื่อให้ OpenVPN ทำงานได้อย่างถูกต้อง จะต้องทำงานด้วยสิทธิ์ของผู้ดูแลระบบ ในระบบปฏิบัติการ คุณต้องเปลี่ยนคุณสมบัติความเข้ากันได้ ในการดำเนินการนี้ไปที่เมนู "เริ่ม" และคลิกขวาที่ทางลัด OpenVPN-GUI แล้วเลือก "คุณสมบัติ"

14. ไปที่แท็บ “ความเข้ากันได้” และทำเครื่องหมายในช่อง “เรียกใช้โปรแกรมนี้ในฐานะผู้ดูแลระบบ” จากนั้นคลิก “ตกลง”

15. เปิด OpenVPN-GUI จากเมนู Start

16. เปิดเมนูโปรแกรมในถาด (มุมขวา) แล้วเลือก “เชื่อมต่อ”

17. หลังจากนี้ หน้าต่างที่มีเนื้อหาของบันทึกการเชื่อมต่อควรเปิดขึ้นบนหน้าจอของคุณ

18. หากคุณทำทุกอย่างถูกต้อง ข้อความแจ้งการเชื่อมต่อ VPN จะปรากฏขึ้นในถาด

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

เครือข่ายเสมือนส่วนตัวที่แท้จริงหรือ Virtual Private Network (VPN) เป็นอุโมงค์ที่เชื่อมต่อและเข้ารหัสระหว่างสองเครือข่ายที่เชื่อมต่อจุดที่เชื่อถือได้สองจุด นี่ไม่ใช่เว็บโปรโตคอล HTTPS ที่ถือว่าไคลเอ็นต์ทั้งหมดเชื่อถือได้ เฉพาะไคลเอนต์ที่มีคีย์การเข้าถึงพิเศษเท่านั้นที่สามารถเชื่อมต่อกับ VPN

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

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

ทั้งสองเครื่องจะต้องติดตั้ง OpenVPN ไว้ด้วย ซึ่งเป็นโปรแกรมยอดนิยม ดังนั้นคุณจึงสามารถติดตั้งได้จากแหล่งเก็บข้อมูลอย่างเป็นทางการ เรายังต้องการ Easy-RSA เพื่อทำงานกับคีย์ลับ หากต้องการติดตั้งโปรแกรมบน Ubuntu ให้ใช้คำสั่งต่อไปนี้:

sudo apt ติดตั้ง openvpn easy-rsa

ต้องติดตั้งแพ็คเกจทั้งสองบนเซิร์ฟเวอร์และไคลเอนต์ พวกเขาจะจำเป็นในการกำหนดค่าโปรแกรม ขั้นตอนแรกของบทความ การติดตั้งและกำหนดค่า openvpn เสร็จสมบูรณ์

การตั้งค่าผู้ออกใบรับรอง

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

โปรดทราบว่ากุญแจส่วนตัวทั้งหมดจะต้องถูกเก็บไว้ในที่ปลอดภัย บน OpenVPN กุญแจสาธารณะเรียกว่าใบรับรองและมีนามสกุล .crt และคีย์ส่วนตัวเรียกว่าคีย์ โดยมีนามสกุล .key

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

sudo mkdir /etc/openvpn/easy-rsa

จากนั้นคัดลอกสคริปต์ easy-rsa ที่จำเป็นทั้งหมดลงในโฟลเดอร์นี้:

ซีดี /etc/openvpn/easy-rsa/

sudo -i
#ที่มา ./vars
# ./ล้างทั้งหมด
# ./build-ca

ด้วยคำสั่งแรก เราจะสลับไปที่คอนโซลในฐานะผู้ใช้ขั้นสูง ส่วนคำสั่งที่สองเราจะโหลดตัวแปรสภาพแวดล้อมจากไฟล์ ./vars คำสั่ง ./clear-all จะสร้างโฟลเดอร์คีย์หากไม่มีอยู่ และล้างเนื้อหาในนั้น และคำสั่งสุดท้ายจะเริ่มต้นผู้ออกใบรับรองของเรา ตอนนี้คีย์ที่จำเป็นทั้งหมดปรากฏในโฟลเดอร์ .keys:

การตั้งค่าใบรับรองไคลเอ็นต์

sudo cp -R /usr/share/easy-rsa /etc/openvpn/

ตอนนี้เราจำเป็นต้องคัดลอกใบรับรอง ซึ่งเป็นไฟล์ที่มีนามสกุล .crt ไปยังโฟลเดอร์ /etc/openvpn บนไคลเอนต์ทั้งหมด ตัวอย่างเช่น มาดาวน์โหลดไฟล์นี้สำหรับลูกค้าของเราโดยใช้ scp:

sudo scp user@host:/etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn/easy-rsa/keys

ตอนนี้คุณสามารถสร้างคีย์ส่วนตัวของคุณเองตามใบรับรอง CA:

ซีดี /etc/openvpn/easy-rsa/

sudo -i
#ที่มา ./vars
# build-req Sergiy

โปรดทราบว่า ca.crt ต้องอยู่ในโฟลเดอร์ที่มีคีย์ ไม่เช่นนั้นจะไม่มีอะไรทำงาน ตอนนี้ยูทิลิตี้จะสร้างคีย์ตามที่คุณสามารถเชื่อมต่อกับเซิร์ฟเวอร์ OpenVPN แต่คุณยังต้องลงชื่อเข้าใช้บนเซิร์ฟเวอร์ ส่งไฟล์ .csr ที่เป็นผลลัพธ์ไปยังเซิร์ฟเวอร์โดยใช้ scp เดียวกัน:

scp /etc/openvpn/easy-rsa/keys/Sergiy.csr user@host:~/

จากนั้นบนเซิร์ฟเวอร์ในโฟลเดอร์ /etc/openvpn/easy-rsa คุณต้องรันคำสั่งการลงนามใบรับรอง:

./sign-req ~/Sergiy

ลายเซ็นใบรับรองจะต้องได้รับการยืนยัน จากนั้นโปรแกรมจะรายงานว่าได้ลงนามและเพิ่มลงในฐานข้อมูลแล้ว ไฟล์ .crt จะปรากฏในโฟลเดอร์ที่มีใบรับรอง csr ซึ่งจะต้องส่งคืนกลับไปยังเครื่องไคลเอ็นต์:

sudo scp user@host:/home/Sergiy.crt /etc/openvpn/easy-rsa/keys

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

การตั้งค่า OpenVPN

ตอนนี้ตั้งค่าเซิร์ฟเวอร์ OpenVPN ตามค่าเริ่มต้นในโฟลเดอร์การกำหนดค่า ไฟล์ OpenVPNไม่มีอะไรเลย คุณต้องสร้างเซิร์ฟเวอร์หรือไคลเอ็นต์ด้วยตนเอง ขึ้นอยู่กับสิ่งที่คุณวางแผนจะกำหนดค่า ไฟล์การกำหนดค่า OpenVPN ที่จำเป็นสามารถพบได้ที่ /usr/share/doc/openvpn/examples/sample-config-files/ ขั้นแรก เรามาสร้างไฟล์การกำหนดค่าสำหรับเซิร์ฟเวอร์กันก่อน:

zcat /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | sudo ที /etc/openvpn/server.conf

ที่นี่คุณต้องกำหนดค่าพารามิเตอร์หลายตัว:

ท่าเรือและ โปรโต- พอร์ตและโปรโตคอลที่โปรแกรมจะทำงาน

พอร์ต 1194
โปรโต udp

คีย์ที่สร้างขึ้นทั้งหมดจะต้องเขียนลงในไฟล์กำหนดค่า คีย์ของเราถูกเก็บไว้ที่ /etc/openvpn/easy-rsa/keys:


ใบรับรอง /etc/openvpn/easy-rsa/keys/ca.crt
คีย์ /etc/openvpn/easy-rsa/keys/ca.key
dh /etc/openvpn/easy-rsa/keys/dh.pem

เรากำหนดค่าช่วงของที่อยู่สำหรับเครือข่ายเสมือน เซิร์ฟเวอร์ของเราจะสามารถเข้าถึงได้ผ่านอันแรก - 10.8.0.1:

เซิร์ฟเวอร์ 10.8.0.0 255.255.255.0

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

พอร์ต 1194
โปรโต udp
คอมพ์-lzo
ปรับแต่งการพัฒนา
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
ใบรับรอง /etc/openvpn/easy-rsa/2.0/keys/ca.crt
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
เครือข่ายย่อยโทโพโลยี
เซิร์ฟเวอร์ 10.8.0.0 255.255.255.0
ifconfig-พูล-คงอยู่ ipp.txt

sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client.conf

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

ระยะไกล- นี่คือที่อยู่เซิร์ฟเวอร์ OpenVPN ของคุณ ที่อยู่และพอร์ตจะต้องตรงกับที่กำหนดค่าไว้บนเซิร์ฟเวอร์ เช่น:

ระยะไกล 194.67.215.125 1194

แคลิฟอร์เนีย- คีย์ที่คุณได้รับจากหน่วยงานออกใบรับรอง เราได้ระบุคีย์ไว้ในโฟลเดอร์ /etc/openvpn/

ใบรับรองและคีย์- นี่คือคีย์สาธารณะและคีย์ลับของลูกค้า ซึ่งคุณจะเชื่อมต่อกับเซิร์ฟเวอร์ด้วยความช่วยเหลือ อย่างที่คุณจำได้ เราได้บันทึกไว้ในโฟลเดอร์ /etc/openvpn/easy-rsa/keys/

ca /etc/openvpn/easy-rsa/keys/ca.crt

การตั้งค่าที่เหลือสามารถปล่อยไว้เหมือนเดิมได้ นี่คือไฟล์การกำหนดค่าทั้งหมดที่คุณสามารถคัดลอกได้:

ลูกค้า
ปรับแต่งการพัฒนา
โปรโต udp
ระยะไกล 194.67.215.125 1194
แก้ไข-ลองใหม่อย่างไม่มีที่สิ้นสุด
ไม่มีข้อผูกมัด
ยืนยันคีย์
ยังคงมีอยู่
ca /etc/openvpn/easy-rsa/keys/ca.crt
ใบรับรอง /etc/openvpn/easy-rsa/keys/Sergiy.crt
คีย์ /etc/openvpn/easy-rsa/keys/Sergiy.key
tls-auth ta.key 1
คอมพ์-lzo
กริยา 3

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

openvpn /etc/openvpn/client.conf

เสร็จสิ้น ตอนนี้ทุกอย่างใช้งานได้แล้ว หากคุณเรียกใช้ ifconfig คุณจะเห็นว่ามีการเพิ่มอินเทอร์เฟซ tun0 แล้ว:

คุณยังสามารถลองใช้ที่อยู่ ping 10.8.0.1 ซึ่งเป็นที่อยู่ที่เรากำหนดค่าสำหรับเซิร์ฟเวอร์ OpenVPN ของเรา แพ็กเก็ต ping จะถูกส่งตามปกติ หากแพ็คเก็ตไม่มาหรือมีอย่างอื่นไม่ทำงาน ให้ใส่ใจกับผลลัพธ์ของทั้งสองโปรแกรม อาจมีข้อผิดพลาดหรือคำเตือนใด ๆ ตรวจสอบให้แน่ใจว่าไฟร์วอลล์เซิร์ฟเวอร์อนุญาตการเข้าถึงจากภายนอกผ่าน udp สำหรับพอร์ต 1194 คุณสามารถ ยังเริ่มต้นเซิร์ฟเวอร์หรือไคลเอนต์โดยตั้งค่าระดับรายละเอียดในการกำหนดค่าเป็นกริยาสูงสุด 9 บ่อยครั้งสิ่งนี้ช่วยให้เข้าใจว่าทำไมบางสิ่งถึงใช้งานไม่ได้ แต่คุณยังไม่สามารถกำหนดเส้นทางการจราจรผ่านอุโมงค์ได้ ในการดำเนินการนี้ คุณจะต้องเปิดใช้งานการส่งต่อและเพิ่มกฎ iptables หลายกฎ ขั้นแรก เราอนุญาตให้มีการขนส่งแพ็กเก็ตบนเซิร์ฟเวอร์:

sysctl -w net.ipv4.ip_forward=1

จากนั้นเพิ่มกฎเช่นนี้ เราอนุญาตให้ทุกคนเชื่อมต่อกับเซิร์ฟเวอร์ของเรา:

iptables -A อินพุต -p udp --dport 1194 -j ยอมรับ

เราอนุญาตให้ผู้ใช้ OpenVPN เข้าถึงอินเทอร์เน็ต:

iptables -I ส่งต่อ -i tun0 -o eth0 -j ยอมรับ
# iptables -I ส่งต่อ -i eth0 -o tun0 -j ยอมรับ
# iptables -t nat -A การโพสต์ -o eth0 -j MASQUERADE

ข้อสรุป

ในบทความนี้ เราได้ดูวิธีการติดตั้งและกำหนดค่า OpenVPN Ubuntu รวมถึงวิธีกำหนดค่า openvpn ให้ทำงานกับการรับรองความถูกต้องของคีย์ การจัดระเบียบเครือข่ายเสมือนส่วนตัวมีประโยชน์มากไม่เพียงแต่ในองค์กรเท่านั้น แต่ยังมีประโยชน์สำหรับการแลกเปลี่ยนข้อมูลระหว่างคอมพิวเตอร์สองเครื่องของคุณหรือเพื่อเพิ่มความปลอดภัยเครือข่ายอีกด้วย

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

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

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

การติดตั้ง OpenVPN บนเครื่องเซิร์ฟเวอร์

การติดตั้งก็คือ ขั้นตอนมาตรฐานมีความแตกต่างบางประการซึ่งเราจะพูดถึงในรายละเอียดเพิ่มเติม


การตั้งค่าส่วนเซิร์ฟเวอร์

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

  1. ไปที่แค็ตตาล็อกกันเถอะ "อีซี่อาร์ซ่า"ซึ่งในกรณีของเราตั้งอยู่ที่

    C:\OpenVPN\easy-rsa

    ค้นหาไฟล์ vars.bat.ตัวอย่าง.

    เปลี่ยนชื่อเป็น vars.bat(ลบคำว่า. "ตัวอย่าง"พร้อมด้วยระยะเวลาหนึ่ง)

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

  2. ก่อนอื่น ลบความคิดเห็นทั้งหมดที่ไฮไลต์ไว้ สีเขียว– พวกเขาจะรบกวนเราเท่านั้น เราได้รับสิ่งต่อไปนี้:

  3. จากนั้นเปลี่ยนเส้นทางไปยังโฟลเดอร์ "อีซี่อาร์ซ่า"ไปยังอันที่เราระบุไว้ระหว่างการติดตั้ง ใน ในกรณีนี้เพียงลบตัวแปรออก %ไฟล์โปรแกรม%และเปลี่ยนเป็น ค:.

  4. เราปล่อยให้พารามิเตอร์สี่ตัวถัดไปไม่เปลี่ยนแปลง

  5. บรรทัดที่เหลือจะถูกเติมแบบสุ่ม ตัวอย่างในภาพหน้าจอ

  6. บันทึกไฟล์.

  7. คุณต้องแก้ไขไฟล์ต่อไปนี้ด้วย:
    • สร้าง-ca.bat
    • สร้าง-dh.bat
    • สร้างคีย์.bat
    • สร้างคีย์พาส.bat
    • สร้างคีย์-pkcs12.bat
    • สร้างคีย์ server.bat

    พวกเขาจำเป็นต้องเปลี่ยนทีม

    ไปยังเส้นทางที่แน่นอนไปยังไฟล์ที่เกี่ยวข้อง openssl.exe- อย่าลืมบันทึกการเปลี่ยนแปลง

  8. ตอนนี้เปิดโฟลเดอร์ "อีซี่อาร์ซ่า", แคลมป์ กะและคลิกขวาที่ พื้นที่ว่าง(ไม่ใช่ตามไฟล์) ใน เมนูบริบทเลือกรายการ “เปิดหน้าต่างคำสั่ง”.

    จะเริ่มแล้ว "บรรทัดคำสั่ง"โดยการเปลี่ยนไปยังไดเร็กทอรีเป้าหมายเสร็จสมบูรณ์แล้ว

  9. ป้อนคำสั่งด้านล่างแล้วคลิก เข้า.

  10. ต่อไปเราจะเปิดไฟล์แบตช์อื่น

  11. เราทำซ้ำคำสั่งแรก

  12. ขั้นตอนต่อไปคือการสร้างไฟล์ที่จำเป็น ในการทำเช่นนี้เราใช้คำสั่ง

    หลังจากดำเนินการ ระบบจะแจ้งให้คุณยืนยันข้อมูลที่เราป้อนลงในไฟล์ vars.bat เพียงแค่กดไม่กี่ครั้ง เข้าจนกระทั่งบรรทัดเดิมปรากฏขึ้น

  13. สร้างคีย์ DH โดยการเรียกใช้ไฟล์

  14. เรากำลังเตรียมใบรับรองสำหรับส่วนของเซิร์ฟเวอร์ มีอันหนึ่งอยู่ที่นี่ จุดสำคัญ- จะต้องได้รับชื่อที่เราเขียนไว้ vars.batในบรรทัด "คีย์_NAME"- ในตัวอย่างของเรานี่คือ ลัมปิกส์- คำสั่งมีลักษณะดังนี้:

    build-key-server.bat ลัมปิกส์

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

  15. ในแคตตาล็อกของเรา "อีซี่อาร์ซ่า"มีโฟลเดอร์ใหม่ปรากฏขึ้นพร้อมชื่อ "กุญแจ".

  16. เนื้อหาจะต้องถูกคัดลอกและวางลงในโฟลเดอร์ "เอสเอสแอล"ซึ่งจะต้องสร้างไว้ในไดเร็กทอรีรากของโปรแกรม

    มุมมองของโฟลเดอร์หลังจากวางไฟล์ที่คัดลอก:

  17. ตอนนี้ไปที่แคตตาล็อก

    C:\OpenVPN\config

    สร้างเอกสารข้อความที่นี่ (RMB – สร้าง – เอกสารข้อความ) เปลี่ยนชื่อเป็น เซิร์ฟเวอร์.ovpnแล้วเปิดใน Notepad++ ป้อนรหัสต่อไปนี้:

    พอร์ต 443
    โปรโต udp
    ปรับแต่งการพัฒนา
    โหนด dev "VPN lumpics"
    dh C:\\OpenVPN\\ssl\\dh2048.pem
    ประมาณ C:\\OpenVPN\\ssl\\ca.crt
    ใบรับรอง C:\\OpenVPN\\ssl\\Lumpics.crt
    คีย์ C:\\OpenVPN\\ssl\\Lumpics.key
    เซิร์ฟเวอร์ 172.16.10.0 255.255.255.0
    ลูกค้าสูงสุด 32
    รักษาไว้ 10 120
    ลูกค้าต่อลูกค้า
    คอมพ์-lzo
    ยืนยันคีย์
    ยังคงมีอยู่
    รหัส DES-CBC
    สถานะ C:\\OpenVPN\\log\\status.log
    เข้าสู่ระบบ C:\\OpenVPN\\log\\openvpn.log
    กริยา 4
    ปิดเสียง 20

    โปรดทราบว่าชื่อของใบรับรองและคีย์จะต้องตรงกับชื่อที่อยู่ในโฟลเดอร์ "เอสเอสแอล".

  18. ต่อไปเราจะเปิด "แผงควบคุม"และไปที่ "ศูนย์ควบคุมเครือข่าย".

  19. คลิกที่ลิงค์ "การเปลี่ยนการตั้งค่าอแด็ปเตอร์".

  20. ที่นี่เราจำเป็นต้องค้นหาการเชื่อมต่อที่ทำผ่าน "อะแดปเตอร์ TAP-Windows V9"- ซึ่งสามารถทำได้โดยคลิกขวาที่การเชื่อมต่อและไปที่คุณสมบัติของมัน

  21. เปลี่ยนชื่อเป็น "ก้อน VPN"โดยไม่มีเครื่องหมายคำพูด ชื่อนี้ต้องตรงกับพารามิเตอร์ "โหนด dev"ในไฟล์ เซิร์ฟเวอร์.ovpn.

  22. ขั้นตอนสุดท้ายคือการเริ่มให้บริการ กดคีย์ผสม วิน+อาร์กรอกบรรทัดด้านล่างแล้วคลิก เข้า.

  23. เราพบบริการที่มีชื่อ “โอเพ่น VPN เซอร์วิส”คลิกขวาแล้วไปที่คุณสมบัติ

  24. เปลี่ยนประเภทการเริ่มต้นเป็น "อัตโนมัติ"ให้เริ่มบริการแล้วคลิก "นำมาใช้".

  25. หากเราทำทุกอย่างถูกต้องแล้ว กากบาทสีแดงควรหายไปใกล้กับอะแดปเตอร์ ซึ่งหมายความว่าการเชื่อมต่อพร้อมใช้งานแล้ว

การตั้งค่าฝั่งไคลเอ็นต์

ก่อนที่คุณจะเริ่มตั้งค่าไคลเอนต์ คุณต้องดำเนินการหลายอย่างบนเครื่องเซิร์ฟเวอร์ - สร้างคีย์และใบรับรองเพื่อตั้งค่าการเชื่อมต่อ


งานที่ต้องทำบนเครื่องไคลเอนต์:


เสร็จสิ้นการกำหนดค่าเซิร์ฟเวอร์และไคลเอนต์ OpenVPN

บทสรุป

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

1) บนเว็บไซต์ openvpn.net ไปที่ส่วนนี้ ชุมชน- ในแท็บ ดาวน์โหลดคลิกที่ ดาวน์โหลดชุมชน.

2) เลือก ไฟล์การติดตั้งตามความลึกบิตของ OS ( 32บิต/64 บิต) ติดตั้งและดาวน์โหลด

3) เรียกใช้ไฟล์การติดตั้งและทำตามขั้นตอนการติดตั้ง

5) ในระหว่างขั้นตอนการติดตั้ง OpenVPN โปรแกรมอาจขอการยืนยันการติดตั้ง แตะ-ไดรเวอร์ คำขอนี้ต้องยืนยันโดยการกดปุ่ม ติดตั้ง.

6) เป็นอันเสร็จสิ้นกระบวนการติดตั้ง

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

มาดูตัวอย่างการตั้งค่าการเชื่อมต่อ OpenVPN โดยใช้ใบรับรอง SSL ที่ลงนามด้วยตนเอง

1) เปิดบรรทัดคำสั่ง

เริ่ม -> เรียกใช้ -> cmd

2) ไปที่ไดเรกทอรี C:\Program Files\OpenVPN\easy-rsaใช้คำสั่ง:

ไฟล์ซีดี \ โปรแกรม \ OpenVPN \ easy-rsa

3) เรียกใช้ไฟล์ init-config.batบนบรรทัดคำสั่ง:

เริ่มต้น-config.bat

หลังจากรันไฟล์แล้ว ไฟล์จะถูกสร้างขึ้น vars.bat.

4) ไฟล์ vars.batคุณต้องเปิดในโปรแกรมแก้ไขข้อความ (แผ่นจดบันทึกหรือ Wordpad) และเปลี่ยนข้อมูลการเซ็นชื่อคีย์เป็นข้อมูลส่วนบุคคลของคุณ คุณสามารถแก้ไขข้อมูลในบรรทัดต่อไปนี้:

ตั้งค่า KEY_COUNTRY=US #ชุดประเทศ KEY_PROVINCE=CA #ชุดภูมิภาค KEY_CITY=SanFrancisco #ชุดเมือง KEY_ORG=OpenVPN #ชุดชื่อบริษัท [ป้องกันอีเมล]#อีเมล์ติดต่อ

นอกจากนี้ ในกรณีที่ไม่มีบันทึกแบบฟอร์ม:

ตั้งค่า OPENSSL_CONF=C:\Program Files\OpenVPN\easy-rsa\openssl-1.0.0.cnf

คุณต้องเพิ่มไว้ใต้บรรทัด:

ตั้งค่า KEY_CONFIG=openssl-1.0.0.cnf

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

5) เพื่อสร้าง ดัชนีและ อนุกรมให้ดำเนินการคำสั่งต่อไปนี้ทีละรายการบนบรรทัดคำสั่ง:

Vars ทำความสะอาดทั้งหมด

6) คำสั่งถัดไปจะสร้างคีย์ CA ที่จะใช้ในการลงนามใบรับรอง SSL ในอนาคต หลังจากรันคำสั่งแล้ว ระบบจะขอให้คุณระบุค่าพารามิเตอร์ หากคุณเคยทำการปรับเปลี่ยนไฟล์มาก่อน vars.batจากนั้นสามารถตอบพารามิเตอร์ที่ระบุในขั้นตอนที่ 4 ได้โดยการกด เข้า- ข้อยกเว้นคือพารามิเตอร์ – ชื่อสามัญ- ในนั้นคุณจะต้องป้อนชื่อโฮสต์ของเซิร์ฟเวอร์หรือชื่อโดเมน

สร้าง-ประมาณ

7) สร้างคีย์ Diffie-Hellman

สร้างคีย์เซิร์ฟเวอร์<имя_сервера>

ในกรณีของเรา คำสั่งต่อไปนี้จะเป็น:

สร้างคีย์เซิร์ฟเวอร์

การเติมทำได้โดยการเปรียบเทียบกับขั้นตอนที่ 6 ในสนาม ชื่อสามัญในกรณีของเราเราระบุ เซิร์ฟเวอร์- สำหรับคำถามทั้งสองข้อ” ลงนามใบรับรอง?" และ " คำขอใบรับรอง 1 ใน 1 ได้รับการรับรอง ยอมรับหรือไม่“เราตกลงโดยการเข้าไป” " แล้วกด เข้า.

9) สร้างคีย์แยกต่างหากสำหรับลูกค้าแต่ละราย:

ไคลเอนต์คีย์บิลด์1

ป้อนข้อมูลการติดต่อที่จำเป็น ใน ชื่อสามัญระบุ ลูกค้า1.

การถ่ายโอนไฟล์จากโฟลเดอร์ /กุญแจไปยังโฟลเดอร์ /กำหนดค่า.

10) จากโฟลเดอร์ /sample-config.phpคัดลอกไฟล์ เซิร์ฟเวอร์.ovpnไปยังโฟลเดอร์ /กำหนดค่า

การตั้งค่าไฟร์วอลล์

ตรวจสอบให้แน่ใจว่าพอร์ตต่างๆ 5194 และ 1194 จะไม่ถูกบล็อกโดยไฟร์วอลล์ มิฉะนั้นเราจะเพิ่มกฎการอนุญาตสำหรับการรับส่งข้อมูลขาเข้าและขาออก:

11) ไปที่ เริ่ม -> โปรแกรมทั้งหมด -> เครื่องมือการดูแลระบบ -> ไฟร์วอลล์วินโดวส์ด้วยการรักษาความปลอดภัยขั้นสูง.

12) คลิกที่ด้านซ้ายของหน้าต่าง กฎขาเข้าและในส่วน การดำเนินการคลิกที่ กฎใหม่- ด้วยเหตุนี้ ตัวช่วยสร้างกฎจึงควรปรากฏขึ้น

13) เรากรอก 5 ขั้นตอนที่เสนอดังนี้:

ขั้นตอนที่ 1 - ประเภทกฎ:ท่าเรือ;

ขั้นตอนที่ 2 - โปรโตคอลและพอร์ต:ตามค่าเริ่มต้น การตั้งค่าเซิร์ฟเวอร์ OpenVPN จะใช้โปรโตคอล UDP หากการกำหนดค่านี้ไม่เปลี่ยนแปลง ให้เลือก ขั้นตอนนี้ ยูดีพี- มิฉะนั้น - TCP- ในสนาม พอร์ตท้องถิ่นเฉพาะระบุ 5194 .

ขั้นตอนที่ 3 – การดำเนินการ:อนุญาตการเชื่อมต่อ

ขั้นตอนที่ 4 - โปรไฟล์:เปิดใช้งานช่องทำเครื่องหมายทิ้งไว้

ขั้นตอนที่ 5 – ชื่อ:ระบุชื่อของกฎตามดุลยพินิจของคุณแล้วคลิก เสร็จ.

14) ในทำนองเดียวกัน เพิ่มกฎสำหรับพอร์ต 1194 หลังจากนั้นเราก็ไป กฎขาออกและสร้างกฎสองข้อที่เหมือนกันกับกฎที่สร้างขึ้นใน ขาเข้า.

การเริ่มต้นเซิร์ฟเวอร์

15) เริ่มเซิร์ฟเวอร์ OpenVPN โดยคลิกขวาที่ไฟล์ เซิร์ฟเวอร์.ovpn การจัดเรียง OpenVPN บนไฟล์ปรับแต่งนี้.

16) ผลลัพธ์จะเป็น บรรทัดคำสั่งซึ่งจะแสดงขั้นตอนการเริ่มเซิร์ฟเวอร์ VPN หากบรรทัดสุดท้ายถูกพิมพ์ ลำดับการเริ่มต้นเสร็จสมบูรณ์หมายความว่าการเปิดตัวสำเร็จแล้ว

การกำหนดค่าฝั่งไคลเอ็นต์

ขั้นตอนต่อไปนี้ถือว่าคุณได้ติดตั้งไคลเอนต์ OpenVPN ไว้แล้ว

1) จากโฟลเดอร์ /sample-config.phpบนเซิร์ฟเวอร์เราดาวน์โหลดไฟล์ลงคอมพิวเตอร์ ลูกค้า.ovpnไปยังโฟลเดอร์ OpenVPN/กำหนดค่า/

2) จากโฟลเดอร์ /กำหนดค่าดาวน์โหลดไฟล์บนเซิร์ฟเวอร์ แคลิฟอร์เนีย, ลูกค้า1.crt, ลูกค้า1.คีย์ไปยังคอมพิวเตอร์ในโฟลเดอร์ OpenVPN/กำหนดค่า/

3) เปิดไฟล์ที่ดาวน์โหลด ลูกค้า.ovpnในโปรแกรมแก้ไขข้อความและทำการปรับเปลี่ยนดังต่อไปนี้:

ในบันทึก ระยะไกล my-server-1 1194แทนที่ เซิร์ฟเวอร์ของฉัน-1ไปยังที่อยู่ IP ของเซิร์ฟเวอร์ ใน ใบรับรอง client.crtเปลี่ยน ลูกค้า.crtบน ลูกค้า1.crtใน คีย์ client.keyเปลี่ยน ลูกค้า.คีย์บน ลูกค้า1.คีย์

หลังจากนี้ ให้บันทึกการเปลี่ยนแปลง

4) เปิดตัว OPENVPN-GUI- ในซิสเต็มเทรย์ให้คลิกขวาที่ไอคอน โอเพ่น VPNและในเมนูบริบทให้เลือกรายการ แก้ไขการกำหนดค่า.

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

ลำดับการเริ่มต้นการจัดการเสร็จสมบูรณ์: >สถานะ: ******** เชื่อมต่อแล้ว สำเร็จ

ข้อผิดพลาดที่เป็นไปได้

ไม่สามารถอัปเดตฐานข้อมูล TXT_DB หมายเลขข้อผิดพลาด 2

สาเหตุ:เมื่อสร้างใบรับรองและคีย์สำหรับไคลเอ็นต์ มีการระบุข้อมูลที่เหมือนกับข้อมูลที่เคยใช้ในการสร้างใบรับรองอื่นก่อนหน้านี้

สารละลาย:บ่งชี้ข้อมูลการติดต่ออื่น ๆ

คำเตือน: ไม่สามารถเปิดไฟล์ปรับแต่งได้: /etc/ssl/openssl.cnf

สาเหตุ:กำหนดเส้นทางเข้าไม่ถูกต้อง ตัวแปรสภาพแวดล้อม OPENSSL_CONF.

สารละลาย:คุณต้องประกาศตัวแปรนี้ในไฟล์ vars.batตามที่กล่าวไว้ในขั้นตอนที่ 4 ของการกำหนดค่าฝั่งเซิร์ฟเวอร์

การใช้งานฟรีเทคโนโลยี Open Source Virtual Private Network (VPN) สำหรับการสร้างช่องทางแบบจุดต่อจุดหรือเซิร์ฟเวอร์ไคลเอ็นต์ที่เข้ารหัสระหว่างคอมพิวเตอร์ ช่วยให้คุณสามารถสร้างการเชื่อมต่อระหว่างคอมพิวเตอร์ที่อยู่ด้านหลังไฟร์วอลล์ NAT โดยไม่ต้องเปลี่ยนการตั้งค่า OpenVPN สร้างขึ้นโดย James Yonan และได้รับอนุญาตภายใต้ GNU GPL

ในบทความนี้ เราจะพยายามบอกวิธีตั้งค่าเซิร์ฟเวอร์ OpenVPN ของคุณเองในรูปแบบที่เรียบง่ายและเข้าถึงได้ เราไม่ได้ตั้งใจว่าเมื่ออ่านบทความนี้จบ คุณจะเข้าใจหลักการทั้งหมดของ "วิธีการทำงาน" อย่างถี่ถ้วน หรือเข้าใจความซับซ้อนของเครือข่าย แต่เราต้องการให้คุณสามารถตั้งค่าเซิร์ฟเวอร์ OpenVPN ได้ เกา. ดังนั้นบทความนี้จึงถือได้ว่าเป็นบทความประเภทหนึ่ง คำแนะนำทีละขั้นตอนสำหรับผู้ใช้ ในความเป็นจริง มีเอกสารและคู่มือมากมายบนอินเทอร์เน็ตสำหรับการปรับใช้ OpenVPN โดยเฉพาะ แต่มีจุดมุ่งหมายเพื่อผู้ใช้หรือผู้ดูแลระบบที่ได้รับการฝึกอบรม หรือใช้ระบบ Linux เป็นตัวอย่างในการสาธิต เราจะไปทางอื่นและบอกวิธีตั้งค่า OpenVPN บนคอมพิวเตอร์ของผู้ใช้โดยเฉลี่ยเช่น เวิร์กสเตชันพร้อมติดตั้งระบบปฏิบัติการ Windows เหตุใดคุณจึงต้องการข้อมูลนี้ ตัวอย่างเช่นคุณต้องการเล่นเกมกับเพื่อน ๆ ที่ไม่รองรับการเล่นผ่านอินเทอร์เน็ต แต่ผ่านทางเท่านั้น เครือข่ายท้องถิ่นหรือ ตัวอย่างเช่น คุณมีส่วนร่วมในการสนับสนุนผู้ใช้ระยะไกล แต่ด้วยเหตุผลบางอย่าง ให้ใช้ซอฟต์แวร์ เช่น TeamViewer หรือ แอดมินแอมมี่คุณไม่ต้องการเพราะว่า คุณไม่ต้องการให้เซิร์ฟเวอร์ของบุคคลที่สามมีส่วนร่วมในกระบวนการถ่ายโอนข้อมูลของคุณหรือสร้างการเชื่อมต่อ ไม่ว่าในกรณีใดประสบการณ์จริงในการจัดระเบียบของคุณเอง เครือข่ายส่วนตัวเสมือน(VPN) จะเป็นประโยชน์สำหรับคุณ

การตั้งค่าเซิร์ฟเวอร์

มาเริ่มกันเลย ในตัวอย่างของเรา เครื่องที่ติดตั้ง Windows XP Professional SP3 (x86) จะทำหน้าที่เป็นเซิร์ฟเวอร์ OpenVPN และเครื่องหลายเครื่องที่ใช้ Windows 7 x64 และ Windows 7 x86 จะทำหน้าที่เป็นไคลเอนต์ (แม้ว่าในความเป็นจริงแล้ว รูปแบบที่อธิบายไว้ในบทความจะใช้งานได้ การกำหนดค่าอื่นๆ) สมมติว่าพีซีที่จะทำหน้าที่เป็นเซิร์ฟเวอร์ OpenVPN มีที่อยู่ IP แบบคงที่สีขาวบนอินเทอร์เน็ต (หากที่อยู่ IP ที่ได้รับจากผู้ให้บริการของคุณเป็นแบบไดนามิก คุณจะต้องลงทะเบียนกับ DynDNSหรือ ไม่มี IP) หากตรงตามเงื่อนไขนี้ แต่พีซีตั้งอยู่ด้านหลังเราเตอร์หรือไฟร์วอลล์ฮาร์ดแวร์ คุณจะต้องส่งต่อพอร์ตที่จำเป็น (เราจะพูดถึงเรื่องนี้ด้านล่างเมื่อเราย้ายไปยังการตั้งค่าเซิร์ฟเวอร์โดยตรง) หากคุณมี ไม่รู้ว่ามันคืออะไรและใช้ทำอะไร เราขอแนะนำให้คุณอ่านบทความบนเว็บไซต์ของเรา

  1. ไปที่เว็บไซต์อย่างเป็นทางการของโครงการ OpenVPN ไปที่ส่วนดาวน์โหลด - ดาวน์โหลดจากที่นั่นการกระจายที่สอดคล้องกับรุ่น Windows OS ของคุณ (ตัวติดตั้ง 32 บิตหรือ 64 บิต) ในขณะที่เขียนบทความนี้ การแจกจ่าย openvpn-install-2.3_rc1-I002-i686.exe นั้นพร้อมใช้งานสำหรับระบบปฏิบัติการ 32 บิต และ openvpn-install-2.3_rc1-I002-x86_64.exe สำหรับระบบปฏิบัติการ 64 บิต ตามลำดับ . เพราะ เราได้ตัดสินใจว่าเราจะติดตั้งเซิร์ฟเวอร์บน WinXP x86 เช่น บนระบบปฏิบัติการ 32 บิต จากนั้นดาวน์โหลดการแจกจ่ายจากลิงก์แรก
  2. เปิดตัวติดตั้งที่ดาวน์โหลดมา ในขั้นตอนที่เลือกพาธการติดตั้ง ให้ป้อน C:\OpenVPN(ดูภาพหน้าจอ) ซึ่งจะช่วยให้เราตั้งค่าได้ง่ายขึ้นในอนาคต: จากนั้นคลิก "ถัดไป" จนกว่าการติดตั้งจะเสร็จสมบูรณ์ หากในระหว่างกระบวนการติดตั้ง ในขั้นตอนของการเลือกส่วนประกอบที่จะติดตั้ง คุณมี "หน้าต่างว่าง" เช่นนี้:
    เห็นได้ชัดว่าคุณดาวน์โหลดการแจกจ่ายที่ "ผิด" ซึ่งในกรณีนี้ให้ลองดาวน์โหลด openvpn-2.2.2-install.exe เวอร์ชันล่าสุด (ติดตั้งบนทั้งระบบ x86 และ x64) เมื่อติดตั้งอย่างถูกต้อง หน้าต่างการเลือกส่วนประกอบควรมีลักษณะดังนี้:
    ช่องทำเครื่องหมายทั้งหมดจะถูกทำเครื่องหมายโดยค่าเริ่มต้นเมื่อทำการติดตั้ง ไม่จำเป็นต้องเปลี่ยนแปลงอะไรเพิ่มเติม หากการติดตั้งสำเร็จ ให้ไปที่แผงควบคุม -> การเชื่อมต่อเครือข่าย (หรือหากคุณกำลังติดตั้งเซิร์ฟเวอร์บน Windows 7 หรือ Windows Vista ใน Network Control Center และ การเข้าถึงที่ใช้ร่วมกัน-> การเปลี่ยนพารามิเตอร์อะแดปเตอร์) คุณควรมีอะแดปเตอร์ TAP-Win32 V9 ซึ่งจะเรียกว่า "การเชื่อมต่อเครือข่ายท้องถิ่น X" (X คือตัวเลขที่ระบบกำหนดโดยอัตโนมัติ):
    เขาจะมีโชคลาภ” สายเคเบิลเครือข่ายไม่ได้เชื่อมต่อ" เนื่องจากเรายังไม่ได้กำหนดค่าเซิร์ฟเวอร์ของเรา
  3. เราสร้างโฟลเดอร์ย่อย SSL ในโฟลเดอร์ OpenVPN โดยคีย์และใบรับรองที่ออกโดยเซิร์ฟเวอร์จะถูกเก็บไว้ในนั้น จากนั้นเปิดแผ่นจดบันทึกและคัดลอกข้อความต่อไปนี้ลงไป: #dev tun dev tap #dev-node "VPN" proto tcp-server #proto udp port 7777 tls-server server 10.10.10.0 255.255.255.0 comp-lzo # route-method exe # เส้นทางสำหรับเซิร์ฟเวอร์เพื่อดูเครือข่ายด้านหลังไคลเอนต์ # เส้นทาง 192.168.x.0 255.255.255.0 10.10.10.x # เส้นทางที่เพิ่มในตารางเส้นทางของลูกค้าแต่ละรายเพื่อดูเครือข่ายด้านหลังเซิร์ฟเวอร์ # กด "เส้นทาง 192.168.x .0 255.255.255.0 " # อนุญาตให้ไคลเอนต์ VPN มองเห็นซึ่งกันและกัน มิฉะนั้นไคลเอนต์ VPN ทั้งหมดจะเห็นเฉพาะไดเร็กทอรีเซิร์ฟเวอร์ไคลเอนต์ถึงไคลเอนต์ # พร้อมคำอธิบายการกำหนดค่าของไคลเอนต์ไคลเอนต์แต่ละตัว -config-dir C:\\OpenVPN\ \config\\ ccd # ไฟล์ที่อธิบายเครือข่ายระหว่างไคลเอนต์และเซิร์ฟเวอร์ ifconfig-pool-persist C:\\OpenVPN\\config\\ccd\\ipp.txt # เส้นทางสำหรับคีย์เซิร์ฟเวอร์และใบรับรอง dh C:\\OpenVPN \\ssl\\dh1024 .pem ca C:\\OpenVPN\\ssl\\ca.crt ใบรับรอง C:\\OpenVPN\\ssl\\Server.crt คีย์ C:\\OpenVPN\\ssl\\Server.key #persist-key tls- auth C:\\OpenVPN\\ssl\\ta.key 0 tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 keepalive 10 120 สถานะ C:\\OpenVPN\\log\\openvpn-status .log log C:\ \OpenVPN\\log\\openvpn.log กริยา 3 เราจะอาศัยพารามิเตอร์ที่อธิบายไว้ที่นี่ในภายหลัง จากนั้นเราก็บันทึกเป็นไฟล์ C:\OpenVPN\Config\Server.ovpnโปรดทราบว่าไฟล์จะต้องมีนามสกุล .ovpnสำหรับสิ่งนี้ ตัวเลือกในกล่องโต้ตอบบันทึกควรจะตรงตามที่แสดงในภาพ:
    หากคุณใช้ Windows 7 / Windows Vista และ Notepad ไม่อนุญาตให้คุณบันทึกไฟล์ เซิร์ฟเวอร์.ovpnไปยังโฟลเดอร์ C:\OpenVPN\กำหนดค่า\ซึ่งหมายความว่าคุณต้องเรียกใช้ด้วยสิทธิ์ของผู้ดูแลระบบ โดยคลิกขวาที่ทางลัด Notepad ในเมนู Start แล้วเลือก "Run as administrator": ตอนนี้เราจะสร้างไฟล์โดยใช้แผ่นจดบันทึก C:\OpenVPN\easy-rsa\vars.batโดยคัดลอกข้อความต่อไปนี้ลงไป: @echo off set path=%path%;c:\OpenVPN\bin set HOME=c:\OpenVPN\easy-rsa set KEY_CONFIG=openssl.cnf set KEY_DIR=c:\OpenVPN\ssl ชุด KEY_SIZE=1024 ชุด KEY_COUNTRY=RU ชุด KEY_PROVINCE=Kaluga ชุด KEY_CITY=Kaluga ชุด KEY_ORG=CompKaluga ชุด KEY_EMAIL=decker@site และไฟล์ด้วย C:\OpenVPN\easy-rsa\openssl.cnf : # # ไฟล์การกำหนดค่าตัวอย่าง OpenSSL # ส่วนใหญ่จะใช้สำหรับการสร้างคำขอใบรับรอง # # คำจำกัดความนี้จะหยุดบรรทัดต่อไปนี้ซึ่งสำลักหาก HOME ไม่ได้กำหนดไว้ HOME = . RANDFILE = $ENV::HOME/.rnd # ข้อมูล OBJECT IDENTIFIER เพิ่มเติม: #oid_file = $ENV::HOME/.oid oid_section = new_oids # หากต้องการใช้ไฟล์การกำหนดค่านี้กับตัวเลือก "-extfile" ของยูทิลิตี้ # "openssl x509" ให้ตั้งชื่อส่วนที่มีนามสกุล # X.509v3 ที่จะใช้ที่นี่: # extensions = # (หรืออีกวิธีหนึ่ง ให้ใช้ไฟล์การกำหนดค่าที่มีเพียง # ส่วนขยาย X.509v3 ในส่วนหลัก [= default]) [ new_oids ] # เราสามารถเพิ่ม OID ใหม่ที่นี่เพื่อใช้โดย "ca" และ "req" 3.4 # หรือใช้การทดแทนไฟล์ config ดังนี้: # testoid2= $(testoid1).5.6 ############################### ############## ######################## [ ca ] default_ca = CA_default # ส่วน ca เริ่มต้น ## ############# #################################### ############## ### [ CA_default ] dir = $ENV::KEY_DIR # ที่ซึ่งทุกอย่างถูกเก็บไว้ certs = $dir # ที่ที่ใบรับรองที่ออกจะถูกเก็บไว้ crl_dir = $dir # ที่ที่ crl ที่ออกถูกเก็บฐานข้อมูล = $dir/index.txt # ฐานข้อมูล ไฟล์ดัชนี new_certs_dir = $dir # ตำแหน่งเริ่มต้นสำหรับใบรับรองใหม่ ใบรับรอง = $dir/ca.crt # อนุกรมใบรับรอง CA = $dir/serial # หมายเลขซีเรียลปัจจุบัน crl = $dir/crl.pem # CRL private_key ปัจจุบัน = $dir/ca.key # คีย์ส่วนตัว RANDFILE = $ dir/.rand # ไฟล์ตัวเลขสุ่มส่วนตัว x509_extensions = usr_cert # ส่วนขยายที่จะเพิ่มในใบรับรอง # ส่วนขยายที่จะเพิ่มใน CRL หมายเหตุ: Netscape communicator choke บน V2 CRLs # ดังนั้นจึงถูกใส่เครื่องหมายความคิดเห็นไว้ตามค่าเริ่มต้นเพื่อออกจาก V1 CRL # crl_extensions = crl_ext default_days = 3650 # จะนานแค่ไหนในการรับรอง default_crl_days= 30 # นานแค่ไหนก่อน CRL default_md = md5 # md ใดที่จะใช้ รักษา = ไม่ # ให้ผ่านการสั่งซื้อ DN # วิธีที่แตกต่างกันเล็กน้อยในการระบุว่าคำขอควรมีลักษณะคล้ายกันอย่างไร # สำหรับประเภท CA คุณลักษณะที่แสดงจะต้องเหมือนกัน และฟิลด์เสริม # และฟิลด์ที่ให้มาเป็นเพียง:-) นโยบาย = Policy_match # สำหรับนโยบาย CA [ Policy_match ] CountryName = match stateOrProvinceName = match OrganizationName = match OrganizationalUnitName = ตัวเลือก CommonName = ระบุ emailAddress = ตัวเลือก # สำหรับนโยบาย "อะไรก็ตาม" # ณ จุดนี้ คุณต้องแสดงรายการ "วัตถุ" ที่ยอมรับได้ทั้งหมด # ประเภท . [ Policy_anything ] CountryName = ตัวเลือก stateOrProvinceName = ตัวเลือก localityName = ตัวเลือก OrganizationName = ตัวเลือก OrganizationalUnitName = ชื่อทั่วไปที่เป็นตัวเลือก = emailAddress ที่ให้มา = ตัวเลือก ########################## ############################################ [ ร้องขอ ] default_bits = $ENV : :KEY_SIZE default_keyfile = privkey.pem Outstanding_name = req_distinguished_name คุณลักษณะ = req_attributes x509_extensions = v3_ca # ส่วนขยายที่จะเพิ่มลงในใบรับรองที่ลงนามด้วยตนเอง # รหัสผ่านสำหรับคีย์ส่วนตัวหากไม่มีอยู่ จะได้รับพร้อมท์สำหรับ # input_password = Secret # output_password = Secret # เหล่านี้ ตั้งค่ามาสก์สำหรับประเภทสตริงที่อนุญาต มีหลายตัวเลือก # ค่าเริ่มต้น: PrintableString, T61String, BMPString # pkix: PrintableString, BMPString. # utf8only: เฉพาะ UTF8Strings # nombstr: PrintableString, T61String (ไม่มี BMPStrings หรือ UTF8Strings) # MASK:XXXX เป็นค่ามาสก์ตามตัวอักษร # คำเตือน: Netscape เวอร์ชันปัจจุบันขัดข้องบน BMPStrings หรือ UTF8Strings # ดังนั้นให้ใช้ตัวเลือกนี้ด้วยความระมัดระวัง! string_mask = nombstr # req_extensions = v3_req # ส่วนขยายที่จะเพิ่มลงในคำขอใบรับรอง [ req_distinguished_name ] CountryName = ชื่อประเทศ (รหัสตัวอักษร 2 ตัว) CountryName_default = $ENV::KEY_COUNTRY CountryName_min = 2 CountryName_max = 2 stateOrProvinceName = ชื่อรัฐหรือจังหวัด (ชื่อเต็ม ) stateOrProvinceName_default = $ENV::KEY_PROVINCE localityName = ชื่อท้องถิ่น (เช่น เมือง) localityName_default = $ENV::KEY_CITY 0.organizationName = ชื่อองค์กร (เช่น บริษัท) 0.organizationName_default = $ENV::KEY_ORG # เราสามารถทำได้ แต่ ไม่จำเป็นตามปกติ:-) #1.organizationName = ชื่อองค์กรที่สอง (เช่น บริษัท) #1.organizationName_default = World ไวด์เว็บ Pty Ltd OrganizationalUnitName = ชื่อหน่วยขององค์กร (เช่น ส่วน) #organizationalUnitName_default = commonName = ชื่อสามัญ (เช่น ชื่อของคุณหรือชื่อโฮสต์เซิร์ฟเวอร์ของคุณ) commonName_max = 64 emailAddress = ที่อยู่อีเมล emailAddress_default = $ENV::KEY_EMAIL emailAddress_max = 40 # SET-ex3 = SET ส่วนขยายหมายเลข 3 [ req_attributes ] ChallengePassword = รหัสผ่านที่ท้าทาย ChallengePassword_min = 4 ChallengePassword_max = 20 unstructuredName = ชื่อบริษัทเสริม [ usr_cert ] # ส่วนขยายเหล่านี้จะถูกเพิ่มเมื่อ "ca" ลงนามในคำขอ # ซึ่งขัดต่อหลักเกณฑ์ของ PKIX แต่ CA บางตัวทำสิ่งนี้และซอฟต์แวร์บางตัว # ต้องการสิ่งนี้เพื่อหลีกเลี่ยงการตีความใบรับรองผู้ใช้ปลายทางเป็น CA *ยกเว้น* การเซ็นชื่อออบเจ็กต์ # เป็นเรื่องปกติสำหรับเซิร์ฟเวอร์ SSL # nsCertType = ไคลเอ็นต์ อีเมล # และสำหรับทุกอย่างรวมถึงการลงนามวัตถุ: # nsCertType = ไคลเอนต์, อีเมล, objsign # นี่เป็นเรื่องปกติใน keyUsage สำหรับใบรับรองไคลเอนต์ # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # สิ่งนี้จะถูกแสดงในกล่องรายการความคิดเห็นของ Netscape nsComment = "OpenSSL Generated Certificate" # คำแนะนำ PKIX ไม่เป็นอันตรายหากรวมอยู่ในใบรับรองทั้งหมด subjectKeyIdentifier=hash allowanceKeyIdentifier=keyid,issuer:always # สิ่งนี้มีไว้เพื่อ subjectAltName และผู้ออกAltname # นำเข้าที่อยู่อีเมล # subjectAltName=email:copy # คัดลอกรายละเอียดเรื่อง # issuerAltName=issuer:copy #nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem #nsBaseUrl #nsRevocationUrl #nsRenewalUrl #nsCaPolicyUrl #nsSslServerName [ server ] # JY ADDED -- สร้างใบรับรองโดยตั้งค่า nsCertType เป็น "server" basicConstraints=CA:FALSE nsCertType = server nsComment = "OpenSSL Generated Server Certificate" subjectKeyIdentifier=hash allowanceKeyIdentifier=keyid,issuer:always [ v3_req ] # ส่วนขยายที่จะเพิ่มลงในคำขอใบรับรอง basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment [ v3_ca ] # ส่วนขยายสำหรับ CA ทั่วไป # คำแนะนำ PKIX subjectKeyIdentifier=hash AuthorityKeyIdentifier=keyid:always,issuer:always # นี่คือสิ่งที่ PKIX แนะนำ แต่ซอฟต์แวร์ที่ใช้งานไม่ได้บางตัวอาจเกิดปัญหากับส่วนขยาย # ที่สำคัญ #basicConstraints =critical,CA:true # ดังนั้นเราจึงทำเช่นนี้แทน basicConstraints = CA:true # การใช้คีย์: นี่เป็นเรื่องปกติสำหรับใบรับรอง CA อย่างไรก็ตาม เนื่องจากจะ # ป้องกันไม่ให้ใช้เป็นใบรับรองทดสอบที่ลงนามด้วยตนเอง จึงควร # ทิ้งไว้ตามค่าเริ่มต้น # keyUsage = cRLSign, keyCertSign # บางคนอาจต้องการสิ่งนี้ด้วย # nsCertType = sslCA, emailCA # รวมที่อยู่อีเมลในชื่อ alt ชื่อ: คำแนะนำ PKIX อื่น # subjectAltName=email:copy # คัดลอกรายละเอียดผู้ออก # issuerAltName=issuer:copy # การเข้ารหัส DER hex ของส่วนขยาย: ระวังผู้เชี่ยวชาญเท่านั้น! # obj=DER:02:03 # โดยที่ "obj" เป็นวัตถุมาตรฐานหรือวัตถุเพิ่มเติม # คุณสามารถแม้กระทั่งแทนที่ส่วนขยายที่รองรับ: # basicConstraints=critical, DER:30:03:01:01:FF [ crl_ext ] # CRL extensions # เฉพาะผู้ออก AltName และ AuthorityKeyIdentifier เท่านั้นที่สมเหตุสมผลใน CRL # ผู้ออกAltName=ผู้ออก:copy AuthorityKeyIdentifier=keyid:always,issuer:always ยินดีด้วย! คุณเพิ่งสร้างไฟล์การกำหนดค่าพื้นฐานสำหรับเซิร์ฟเวอร์ของคุณ มาตั้งค่ากันต่อ
  4. สำหรับ การปรับแต่งเพิ่มเติมเซิร์ฟเวอร์ เราจะต้องมีทักษะบรรทัดคำสั่งบางอย่าง ก่อนอื่นเรามาดูกันว่าจะเปิดตัวอย่างไร? มีหลายวิธี เช่น คลิก Start -> Run (หรือปุ่มต่างๆ รวมกัน วิน+อาร์) บนแป้นพิมพ์แล้วป้อนในช่องที่ปรากฏขึ้น คำสั่งและคลิกตกลง อย่างไรก็ตาม ผู้ใช้ Windows 7 / Windows Vista จะต้องเรียกใช้คอนโซลด้วยสิทธิ์ของผู้ดูแลระบบ วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการสร้างทางลัดที่เกี่ยวข้องบนเดสก์ท็อป คลิกขวาที่พื้นที่ว่างบนเดสก์ท็อปแล้วเลือก "สร้างทางลัด" ในช่อง "ตำแหน่งของวัตถุ" เพียงระบุตัวอักษรสามตัว - คำสั่งและเรียกทางลัด cmd หรือบรรทัดคำสั่ง ต่อไป, ผู้ใช้วินโดวส์ XP เพียงเรียกใช้งาน และผู้ใช้ Windows Vista และ Windows 7 เรียกใช้งานในฐานะผู้ดูแลระบบ เช่นเดียวกับที่ทำข้างต้นด้วย Notepad
  5. ต่อไป เราจะป้อนบรรทัดในคอนโซลตามลำดับ: cd C:\OpenVPN\easy-rsa vars clean-all ในเวลาเดียวกัน ควรมีลักษณะเช่นนี้บนหน้าจอ:
    ถัดไป โดยไม่ต้องปิดหน้าต่างนี้ ให้ป้อนคำสั่งการสร้างคีย์ตามลำดับ: openvpn --genkey --secret %KEY_DIR%\ta.key build-dh build-ca คำสั่งสุดท้าย (build-ca) จะสร้างใบรับรองและผู้ออกใบรับรอง (CA) ในกระบวนการ อย่างไรก็ตาม เธอจะถามคำถามคุณหลายข้อซึ่งจะต้องตอบตามค่าเริ่มต้นโดยกดปุ่ม Enter:
    ตอนนี้ขอสร้างรหัสเซิร์ฟเวอร์: เซิร์ฟเวอร์ build-key-server โปรดทราบว่าอาร์กิวเมนต์ที่สองในคำสั่ง ไปที่ชื่อคีย์ (เซิร์ฟเวอร์) คุณต้องป้อนชื่อเดียวกันเมื่อตอบคำถามชื่อทั่วไป (เช่น ชื่อของคุณหรือชื่อโฮสต์ของเซิร์ฟเวอร์ของคุณ) คำถามอื่น ๆ สามารถตอบได้ตามค่าเริ่มต้นโดยการกดปุ่ม Enter หากคุณทำทุกอย่างถูกต้อง คำสั่งจะทำเช่นนั้น เสนอลงนามใบรับรองและยืนยันคำขอต้องตอบทั้งสองคำถาม (ดูภาพหน้าจอ):
    หากคุณทำทุกอย่างถูกต้องรูปภาพของคุณจะเหมือนกับภาพหน้าจอและบรรทัดสุดท้ายของเอาต์พุตคำสั่งจะมีข้อความเกี่ยวกับการเพิ่มหนึ่งบันทึกลงในฐานข้อมูลได้สำเร็จ
  6. หลังจากนั้นไปที่สแน็ปอิน "บริการและแอปพลิเคชัน" ของคอนโซลการจัดการคุณสามารถทำได้โดยคลิกขวาที่ทางลัดคอมพิวเตอร์ (My Computer) และเลือกรายการเมนูจัดการหรือพิมพ์คำสั่งในคอนโซล บริการ.mscค้นหาบริการ "OpenVPN Service" ที่นั่น และเลือก "Start" จากเมนูคลิกขวา หากคุณทำทุกอย่างถูกต้องก่อนหน้านี้ บริการจะเข้าสู่สถานะ "กำลังทำงาน" ตอนนี้คุณสามารถเปลี่ยนประเภทการเริ่มต้นเป็น "อัตโนมัติ" แทนที่จะเป็น "ด้วยตนเอง" ซึ่งจะมีตามค่าเริ่มต้น ผลลัพธ์ควรมีลักษณะดังนี้:
    การดำเนินการนี้ทำให้การกำหนดค่าเซิร์ฟเวอร์เสร็จสมบูรณ์ สิ่งที่เหลืออยู่คือการกำหนดค่าไคลเอ็นต์ ในการทำเช่นนี้จำเป็นต้องออกคีย์และใบรับรองด้วยซึ่งทำได้เกือบจะเหมือนกันกับเซิร์ฟเวอร์เฉพาะสำหรับเซิร์ฟเวอร์ที่เราใช้คำสั่ง build-key-server และสำหรับลูกค้าเราจะใช้คำสั่ง build-key
  7. สมมติว่าเรามีไคลเอนต์สองราย เรียกพวกเขาว่า client1 และ client2 มาดำเนินการคำสั่งตามลำดับกัน: build-key client1 build-key client2 ในกรณีนี้ เมื่อถามชื่อสามัญ (เช่น ชื่อของคุณหรือชื่อโฮสต์ของเซิร์ฟเวอร์) คุณต้องระบุชื่อไคลเอ็นต์ที่ใช้ในคำสั่งด้วย เช่น หากคุณป้อน build- command key client1 จากนั้นไปที่คำถาม Common Name ที่เราตอบ client1 ถ้า client2 แล้วก็ client2 คำถามที่เหลือสามารถตอบได้โดยการกด Enter ในตอนท้ายคุณจะถูกขอให้ลงนามใบรับรองและยืนยันคำขอด้วย ตอบยืนยันทั้งสองประเด็น - - ตอนนี้เรารีสตาร์ทบริการ OpenVPN เพื่อให้การเปลี่ยนแปลงมีผลในสแน็ปอินการจัดการบริการในเมนูคลิกขวา "รีสตาร์ท" หรือในคอนโซลที่เราป้อนตามลำดับ: net stop openvpnservice net start openvpnservice
  8. ตอนนี้ถ้าเราไปที่โฟลเดอร์ เราจะเห็นไฟล์คีย์และใบรับรองที่เราสร้างขึ้นที่นั่น:
    ลูกค้าแต่ละรายจะต้องมีไฟล์ของเขา: ca.crt .crt .key ta.key เช่น สำหรับไคลเอนต์ 1 เรารวบรวมไฟล์ ca.crt, client1.crt, client1.key และ ta.key สำหรับไคลเอนต์ 2 - ca.crt, client2.crt, client2.key และ ta.key ตามลำดับ ฯลฯ และเราส่งพวกเขาไปให้เขาไม่ทางใดก็ทางหนึ่ง (หมายถึงทางไปรษณีย์ในไฟล์เก็บถาวรด้วยรหัสผ่านหรือบนแฟลชไดรฟ์) ไฟล์คีย์และใบรับรองจะต้องถ่ายโอนผ่านช่องทางการสื่อสารที่เชื่อถือได้และจะต้องไม่ตกไปอยู่ในมือของ บุคคลที่สามเพราะว่า ในความเป็นจริงแล้ว ลูกค้าสามารถเข้าถึงเครือข่ายย่อยเสมือนของคุณได้เมื่อใช้สิ่งเหล่านี้ ในส่วนถัดไป เราจะดูการตั้งค่าไคลเอ็นต์ และจะถือว่าไคลเอ็นต์ได้รับไฟล์คีย์และใบรับรองจากคุณแล้ว
  9. หากใช้ไฟร์วอลล์บนพีซีที่ใช้เป็นเซิร์ฟเวอร์ คุณจะต้องเพิ่ม OpenVPN ในรายการยกเว้น สำหรับบิวท์อิน ไฟร์วอลล์วินโดวส์ในคอนโซลสามารถทำได้ด้วยคำสั่งต่อไปนี้: netsh firewall add allowanceprogram program = C:\OpenVPN\bin\openvpn.exe name = "OpenVPN Server" ENABLE scope = ALL profile = ALL

การตั้งค่าลูกค้า

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

ลิงค์ที่มีประโยชน์

  • เอกสารอย่างเป็นทางการสำหรับ OpenVPN -
  • หน้าคน OpenVPN -
  • OpenVPN HOWTO (เป็นภาษารัสเซีย) - http://lithium.opennet.ru/articles/openvpn/openvpn-howto.html

คำถามที่พบบ่อย

คุณสามารถส่งคำถามใดๆ ที่คุณมีไปยังอีเมลที่ระบุในส่วนนี้ หรือหารือเกี่ยวกับบทความนี้ใน

เป็นไปได้ไหมที่จะเผยแพร่อินเทอร์เน็ตด้วยวิธีนี้?


จากผู้เขียน

บทความนี้อาจโพสต์ในแหล่งข้อมูลใดๆ ก็ได้ โดยคัดลอกทั้งหมดหรือบางส่วน โดยไม่มีข้อจำกัด โดยมีเงื่อนไขว่าจะต้องคงลิงก์ไปยังต้นฉบับไว้ ลิงก์จะต้องมีชื่อของทรัพยากรรถพยาบาลของเรา ช่วยเหลือคอมพิวเตอร์ Kaluga ออกแบบเป็นลิงก์และยังมีนามแฝงของผู้เขียนบทความด้วย ตัวอย่างของลิงก์ดังกล่าวอาจเป็น:

การตั้งค่า OpenVPNเซิร์ฟเวอร์//เด็คเกอร์

บันทึก

ช่วงนี้เราได้รับคำถามมากมายในรูปแบบของ " คำถามเกี่ยวกับบทความของคุณในขั้นตอนที่ 5 หลังจากคำสั่ง clean-all ส่งผลให้มีไฟล์บางไฟล์ถูกคัดลอกมาจากคุณ สิ่งนี้ไม่เกิดขึ้นกับฉัน คำสั่ง openvpn --genkey --secret %KEY_DIR%\ta.key สร้างคีย์สำหรับฉัน แต่จากนั้น build-dh และ build-ca ไม่ให้ผลลัพธ์ (cmd.exe เขียนว่าคำสั่งไม่ใช่ภายในหรือภายนอก .. . หรือไฟล์ปฏิบัติการ) ไฟล์ ca.key จะไม่ถูกสร้างขึ้น ฉันทำอะไรผิดไปหรือเปล่า?".

ความหมายหลักที่ลงมาคือความประมาทของคุณเอง ปัญหาเมื่อรันคำสั่ง clean-all, build-key และคำสั่งอื่น ๆ คือเมื่อติดตั้ง OpenVPN คุณไม่ได้ตรวจสอบช่องทำเครื่องหมาย OpenSSL Utilities และ OpenVPN RSA Certificate Management Scripts (ต้องทำเครื่องหมายไว้!) ให้ความสนใจกับภาพหน้าจอที่มีหน้าต่างการเลือกส่วนประกอบในตอนต้นของบทความ ซึ่งจะมีช่องทำเครื่องหมายเหล่านี้อยู่!