การปรับใช้เซิร์ฟเวอร์ VPN ที่ทำงานร่วมกันได้ AnyConnect ด้วยการตรวจสอบใบรับรองบน ​​CentOS 7

AnyConnect เป็นโซลูชันการเข้าถึงระยะไกลที่พัฒนาโดย Cisco AnyConnect เป็นที่รู้จักกันดีในด้านความสะดวกในการพกพาและความเสถียรโดยเฉพาะอย่างยิ่งความสามารถ DTLS ของ AnyConnect เรากำลังจะใช้เวอร์ชั่นโอเพ่นซอร์สocservซึ่งเข้ากันได้กับโปรโตคอล

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

เริ่มกันเลย.

ข้อกำหนดเบื้องต้น

  • เซิร์ฟเวอร์ CentOS 7 ที่เพิ่งสร้างใหม่ที่เปิดใช้งาน IPv6
  • คอมพิวเตอร์ที่ใช้งานได้ (สามารถเป็นเซิร์ฟเวอร์เองได้เลิกใช้แล้ว (ดูด้านล่าง)) ดูหมายเหตุ 1
  • ลูกค้าบางรายที่ติดตั้งซอฟต์แวร์ไคลเอ็นต์ AnyConnect (หรือ OpenConnect) ติดตั้งดูหมายเหตุ 2

หมายเหตุ:

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

  2. เนื่องจากปัญหาสิทธิ์การใช้งานฉันจะไม่ให้ลิงก์เพื่อดาวน์โหลดซอฟต์แวร์ไคลเอ็นต์ การค้นหาสิ่งเหล่านี้ให้กับลูกค้าของคุณนั้นค่อนข้างง่าย AnyConnect เป็นแอพใน App Stores บนแพลตฟอร์มมือถือหลัก (iOS, Android, BlackBerry OS (v10 ขึ้นไป), UWP) ตามลำดับและการค้นหาง่าย ๆ จะนำมาให้คุณ สำหรับแพลตฟอร์มพีซี Googling จะนำเสนอซอฟต์แวร์ที่เหมาะสมให้คุณ

การติดตั้งซอฟต์แวร์ฝั่งเซิร์ฟเวอร์

เครื่อง CentOS 7 ของ Vultr ได้รับการกำหนดค่าด้วยที่เก็บ EPEL เราเพิ่งติดตั้งocservด้วยyum:

yum update
yum install ocserv

เราจะต้องมีใบรับรองเซิร์ฟเวอร์เพื่อให้สิ่งต่างๆใช้งานได้ หากคุณมีชื่อโดเมน Let's Encrypt จะเป็นตัวเลือกที่ง่ายที่สุด

yum install certbot
certbot certonly

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

การสร้างและกำหนดค่าใบรับรอง

PKI ดั้งเดิมค่อนข้างไม่สะดวกในการใช้ดังนั้นเราจะใช้easyrsaยูทิลิตีจากโครงการ OpenVPN ติดตั้ง git บนเครื่องที่ทำงานของคุณและโคลนที่เก็บ:

git clone https://github.com/OpenVPN/easy-rsa
cd easy-rsa/easyrsa3

เราจะสร้าง CA และออกใบรับรอง ทำสิ่งต่อไปนี้และเขียนข้อความรหัสผ่าน PEM ที่คุณตั้งไว้ที่ไหนสักแห่ง:

./easyrsa init-pki
./easyrsa build-ca

รักษาpki/private/ca.keyความปลอดภัย การรั่วไหลที่จะทำให้โครงสร้างพื้นฐานทั้งหมดของคุณไร้ประโยชน์

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

./easyrsa gen-req server

และป้อนที่อยู่ IP ของเซิร์ฟเวอร์ของคุณเป็นชื่อสามัญ

./easyrsa sign-req server server

สิ่งนี้จะลงนามใบรับรองสำหรับเซิร์ฟเวอร์ การถ่ายโอนpki/issued/server.crtและpki/ca.crtการ/etc/ssl/certsและpki/private/server.keyการ/etc/ssl/privateบนเซิร์ฟเวอร์ของคุณ

ต่อไปเราจะสร้างใบรับรองลูกค้า ทำดังต่อไปนี้:

./easyrsa gen-req client_01
./easyrsa sign-req client client_01

เลือกชื่อลูกค้าและกรอกลงในช่องชื่อทั่วไป จำข้อความรหัสผ่าน!

ต่อไปเราจะส่งออกใบรับรองในรูปแบบ pkcs12 สำหรับการใช้งานบนแพลตฟอร์มมือถือ ทำ:

./easyrsa export-p12 client_01

เลือกรหัสผ่านการส่งออกซึ่งคุณจะได้รับแจ้งให้ป้อนเมื่อนำเข้าใบรับรองทางโทรศัพท์ ถ่ายโอนpki/private/client_01.p12ไปยังโทรศัพท์ของคุณและนำเข้า

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

เราจะกรอกข้อมูลใบรับรอง

vim /etc/ocserv/ocserv.conf

ค้นหาserver-certส่วนและกรอกข้อมูลต่อไปนี้:

# If you use Let's Encrypt
server-cert = /etc/letsencrypt/live/example.com/fullchain.pem
server-key = /etc/letsencrypt/live/example.com/privkey.pem

# If you use self-signed server certificate 
server-cert = /etc/ssl/certs/server.crt
server-key = /etc/ssl/private/server.key

ca-cert = /etc/ssl/certs/ca.crt

โปรดทราบว่าหากคุณใช้ใบรับรองที่ลงชื่อด้วยตนเองอย่าลืมลบวลีรหัสผ่านก่อนopenssl rsa -in server.key -out server-new.keyเพื่อให้ocservสามารถใช้คีย์ส่วนตัว

ค้นหาauthส่วน เปิดใช้งานบรรทัดนี้:

auth = "certificate"

และคอมเม้นท์authสายอื่น ๆ ทั้งหมด

ยกเลิกการใส่เครื่องหมายบรรทัดนี้:

cert-user-oid = 2.5.4.3

ค้นหาipv6-networkและเติมในบล็อก ipv6 ของเซิร์ฟเวอร์ของคุณ นี่คือบล็อกที่เซิร์ฟเวอร์จะให้เช่า

ipv6-network = 2001:0db8:0123:4567::/64
ipv6-subnet-prefix = 124 

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

dns = 8.8.8.8
dns = 8.8.4.4

เปิดใช้งานความเข้ากันได้กับไคลเอนต์ Cisco

cisco-client-compat = true

เปิดพอร์ตที่คุณตั้งไว้ในtcp-portและudp-portและเปิดใช้งานสวมหน้ากากสำหรับทั้ง IPv4 และ IPv6 ใน firewalld

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

systemctl enable ocserv
systemctl start ocserv

ทดสอบเวลา!

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

journalctl -fu ocserv

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

ทุกชุด! เพลิดเพลินกับเซิร์ฟเวอร์ VPN AnyConnect ที่ใช้งานร่วมกันได้ใหม่ของคุณ!



Leave a Comment

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

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

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

การติดตั้ง Pagekit CMS บน CentOS 7

การติดตั้ง Pagekit CMS บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง TestLink บน CentOS 7

วิธีการติดตั้ง TestLink บน CentOS 7

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

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ

วิธีการติดตั้ง GCC บน CentOS 6

วิธีการติดตั้ง GCC บน CentOS 6

CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น

วิธีการติดตั้ง Moodle บน CentOS 7

วิธีการติดตั้ง Moodle บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์

วิธีการติดตั้ง Apache, MySQL และ PHP บน CentOS 6

วิธีการติดตั้ง Apache, MySQL และ PHP บน CentOS 6

Introduction LAMP เป็นคำย่อที่ย่อมาจาก Linux, Apache, MySQL และ PHP ซอฟต์แวร์นี้เป็นโซลูชันโอเพ่นซอร์สที่ได้รับความนิยมสูงสุดสำหรับการติดตั้ง o

การปรับเปลี่ยน Icinga2 ให้ใช้โมเดลต้นแบบ / ไคลเอ็นต์บน CentOS 6 หรือ CentOS 7

การปรับเปลี่ยน Icinga2 ให้ใช้โมเดลต้นแบบ / ไคลเอ็นต์บน CentOS 6 หรือ CentOS 7

Icinga2 เป็นระบบการตรวจสอบที่มีประสิทธิภาพและเมื่อใช้ในโมเดลลูกค้าหลักจะสามารถแทนที่ความต้องการการตรวจสอบที่อิง NRPE ปรมาจารย์

การติดตั้ง Netdata บน CentOS 7

การติดตั้ง Netdata บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Netdata เป็นดาวรุ่งพุ่งแรงในด้านการติดตามการวัดในระบบแบบเรียลไทม์ เมื่อเปรียบเทียบกับเครื่องมือชนิดเดียวกัน Netdata:

วิธีการติดตั้งและกำหนดค่า Buildbot บน CentOS 7

วิธีการติดตั้งและกำหนดค่า Buildbot บน CentOS 7

Buildbot เป็นโอเพ่นซอร์สเครื่องมือที่ใช้การรวมอย่างต่อเนื่องของ Python สำหรับการสร้างซอฟต์แวร์การทดสอบและการปรับใช้โดยอัตโนมัติ Buildbot ประกอบด้วยหนึ่งหรือหมอ

ติดตั้งเซิร์ฟเวอร์มัลติเพลเยอร์ SA-MP San Andreas บน CentOS 6

ติดตั้งเซิร์ฟเวอร์มัลติเพลเยอร์ SA-MP San Andreas บน CentOS 6

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

ติดตั้ง dotProject บน CentOS 7

ติดตั้ง dotProject บน CentOS 7

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

ติดตั้ง TaskServer (taskd) บน CentOS 7

ติดตั้ง TaskServer (taskd) บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร TaskWarrior เป็นเครื่องมือจัดการเวลาแบบโอเพ่นซอร์สที่เป็นการปรับปรุงแอพพลิเคชั่น Todo.txt และโคลนของมัน เนื่องมาจาก

วิธีการติดตั้ง Selfoss RSS Reader บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Selfoss RSS Reader บน CentOS 7 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Selfoss RSS Reader เป็นฟรีและเปิดตัวเองบนเว็บโฮสต์อเนกประสงค์, สตรีมสด, ตอบโต้กับผู้ใช้ได้, ฟีดข่าว (RSS / Atom) reade

วิธีการติดตั้ง Kanboard บน CentOS 7

วิธีการติดตั้ง Kanboard บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Kanboard เป็นซอฟต์แวร์ซอฟต์แวร์การจัดการโครงการโอเพ่นซอร์สฟรีที่ออกแบบมาเพื่ออำนวยความสะดวกและมองเห็นภาพการทำงานเป็นทีม

การตั้งค่าเซิร์ฟเวอร์ Half Life 2 บน CentOS 6

การตั้งค่าเซิร์ฟเวอร์ Half Life 2 บน CentOS 6

บทช่วยสอนนี้จะกล่าวถึงกระบวนการติดตั้งเซิร์ฟเวอร์เกม Half Life 2 บนระบบ CentOS 6 ขั้นตอนที่ 1: การติดตั้งข้อกำหนดเบื้องต้นเพื่อตั้งค่า ou

ไดรฟ์ที่แชร์ความพร้อมใช้งานสูงใช้ Vultr Block Storage และ GlusterFS

ไดรฟ์ที่แชร์ความพร้อมใช้งานสูงใช้ Vultr Block Storage และ GlusterFS

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

วิธีโยกย้ายกล่องจดหมายอย่างง่ายดายด้วย Imapsync บน CentOS 7

วิธีโยกย้ายกล่องจดหมายอย่างง่ายดายด้วย Imapsync บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร ในขณะที่การโยกย้ายเว็บไซต์มักจะไม่มีปัญหาบางครั้งก็ยากที่จะโยกย้ายกล่องอีเมล นี่คือ CAS โดยเฉพาะอย่างยิ่ง

วิธีการติดตั้ง 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