Menggunakan Pelayan VPN yang Sesuai dengan AnyConnect Dengan Pengesahan Sijil di CentOS 7

AnyConnect adalah penyelesaian akses jarak jauh yang dikembangkan oleh Cisco. Terkenal dengan kemudahan dan kestabilannya, terutama kemampuan DTLSnya, AnyConnect digunakan oleh banyak syarikat. Kami akan menggunakan versi sumber terbuka ocserv, yang serasi dengan protokol.

Kami juga akan menggunakan pengesahan sijil. Pelayan akan mengenal pasti klien dengan memeriksa bahawa jika sijil pelanggan dikeluarkan oleh CA yang dikonfigurasi. Ini sangat memudahkan konfigurasi pada klien kerana kita hanya perlu mengimport sijil pada klien (selalunya fail pkcs12 ( .pfxatau .p12)) dan kata laluan tidak diperlukan. Ini juga lebih selamat kerana tidak ada kata laluan yang bergerak di sekitar Internet.

Mari mulakan.

Prasyarat

  • Pelayan CentOS 7 yang baru dibuat dengan IPv6 diaktifkan
  • Komputer yang berfungsi (boleh jadi pelayan itu sendiri; tidak digunakan lagi (lihat di bawah)) lihat nota 1
  • Beberapa pelanggan dengan perisian klien AnyConnect (atau OpenConnect) yang dipasang melihat nota 2

Catatan:

  1. Walaupun mungkin (dan agak mudah) untuk melakukan semua perkara di pelayan, proses penyebaran terdiri daripada menghasilkan kunci peribadi yang digunakan untuk menandatangani dan kerana masalah keselamatan, proses ini harus dilakukan pada komputer anda sendiri.

  2. Kerana masalah pelesenan, saya tidak akan memberikan pautan untuk memuat turun perisian pelanggan. Mencari mereka untuk pelanggan anda agak mudah. AnyConnect adalah aplikasi di App Store di platform mudah alih utama (iOS, Android, BlackBerry OS (v10 ke atas), UWP) dan carian mudah akan membawa mereka kepada anda. Untuk platform PC, beberapa Googling akan memberi anda perisian yang sesuai.

Pemasangan perisian sisi pelayan

Mesin CentOS 7 Vultr dikonfigurasikan dengan repositori EPEL. Kami hanya memasang ocservdengan yum:

yum update
yum install ocserv

Kami memerlukan sijil pelayan untuk berfungsi. Sekiranya anda mempunyai nama domain, Let's Encrypt akan menjadi pilihan paling mudah.

yum install certbot
certbot certonly

Pilih "putarkan pelayan Web sementara" untuk mengesahkan dengan ACME CA. Sekiranya anda tidak mempunyai domain, sijil yang ditandatangani sendiri akan dikeluarkan kemudian.

Penjanaan dan konfigurasi sijil

PKI tradisional agak tidak selesa untuk digunakan, jadi kami akan menggunakan easyrsautiliti dari projek OpenVPN. Pasang git pada mesin kerja anda dan klon repositori:

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

Kami akan membina CA dan mengeluarkan sijil. Lakukan perkara berikut dan tulis frasa laluan PEM yang anda tetapkan di suatu tempat:

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

Simpan di pki/private/ca.keytempat yang selamat. Kebocoran yang akan menjadikan keseluruhan infrastruktur anda tidak berguna.

Sekiranya anda memilih untuk menggunakan sijil pelayan yang ditandatangani sendiri, lakukan perkara berikut:

./easyrsa gen-req server

Dan masukkan alamat IP pelayan anda sebagai nama umum.

./easyrsa sign-req server server

Ini akan menandatangani sijil untuk pelayan. Pindahkan pki/issued/server.crtdan pki/ca.crtke /etc/ssl/certsdan pki/private/server.keyke /etc/ssl/privatepelayan anda.

Seterusnya kami akan membuat sijil pelanggan. Lakukan perkara berikut:

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

Pilih nama pelanggan dan isikan ke ruangan nama biasa. Ingat frasa laluan!

Seterusnya kita akan mengeksport sijil dalam format pkcs12 untuk penggunaan pada platform mudah alih. Lakukan:

./easyrsa export-p12 client_01

Pilih kata laluan eksport yang anda akan diminta untuk memasukkan semasa mengimport sijil di telefon. Pindahkan pki/private/client_01.p12ke telefon anda dan importnya.

Mengkonfigurasi pelayan

Kami akan mengisi maklumat sijil.

vim /etc/ocserv/ocserv.conf

Cari server-certbahagian dan isikan perkara berikut:

# 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

Perhatikan bahawa jika anda menggunakan sijil yang ditandatangani sendiri, ingatlah untuk membuang frasa laluan terlebih dahulu openssl rsa -in server.key -out server-new.keysehingga ocservboleh menggunakan kunci peribadi.

Cari authbahagian. Dayakan baris ini:

auth = "certificate"

Dan komen semua authbaris lain .

Menanggalkan baris ini:

cert-user-oid = 2.5.4.3

Cari ipv6-networkdan isikan blok ipv6 pelayan anda. Ini adalah blok dari mana pelayan akan memberikan pajakan.

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

Tetapkan pelayan DNS.

dns = 8.8.8.8
dns = 8.8.4.4

Dayakan keserasian dengan pelanggan Cisco.

cisco-client-compat = true

Membuka pelabuhan anda tetapkan dalam tcp-portdan udp-portdan membolehkan penyamaran untuk kedua-dua IPv4 dan IPv6 dalam firewalld.

Mulakan pelayan.

systemctl enable ocserv
systemctl start ocserv

Masa ujian!

Pelayan berjaya dikonfigurasi. Buat sambungan di pelanggan anda dan sambungkan. Sekiranya terdapat kesilapan, gunakan arahan ini untuk men-debug:

journalctl -fu ocserv

Juga, IPv6 harus berfungsi di sisi klien jika perisian klien anda menyokong ipv6 walaupun rangkaian pelanggan anda tidak memberikan alamat kepada anda. Pergi ke laman web ini untuk menguji.

Semua sudah siap! Nikmati pelayan VPN serasi AnyConnect baru anda!



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut