การปรับใช้เซิร์ฟเวอร์ 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

การติดตั้ง 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 โดยเฉพาะอย่างยิ่ง

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

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

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

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

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน