OpenVPN Server dan Instalasi dan Konfigurasi Klien di Debian 7

OpenVPN Server dan Instalasi dan Konfigurasi Klien di Debian 7

Artikel ini merinci cara mendapatkan IPv6 konektivitas di OpenVPN menggunakan Debian Linux. Prosesnya telah diuji Debian 7 pada suatu KVM VPS dengan IPv6 Konektivitas sebagai server, dan desktop Debian 7. Perintah harus dijalankan sebagai root.

Instal OpenVPN di Debian

Apa itu OpenVPN?

OpenVPN adalah program VPN yang menggunakan SSL/TLS untuk membuat koneksi VPN yang aman dan terenkripsi, untuk merutekan lalu lintas internet Anda, sehingga mencegah pengintaian. VPN terbuka sangat mampu melintasi transparan melalui firewall. Faktanya, jika situasinya mengharuskannya, Anda dapat menjalankannya pada port TCP yang sama dengan HTTPS (443), membuat lalu lintas tidak dapat dibedakan dan dengan demikian hampir tidak mungkin untuk diblokir.

OpenVPN Dapat menggunakan berbagai metode seperti kunci rahasia, sertifikat, atau nama pengguna/kata sandi pra-dibagikan, untuk membiarkan klien mengotentikasi ke server. OpenVPN menggunakan protokol openssl dan mengimplementasikan banyak fitur keamanan dan kontrol seperti otentikasi respons tantangan, kemampuan masuk tunggal, fitur penyeimbang beban dan failover dan dukungan multi daemon.

Mengapa menggunakan OpenVPN?

Pikirkan Komunikasi Aman - Pikirkan OpenVPN. Jika Anda tidak ingin ada orang yang mengintip lalu lintas internet Anda, gunakan OpenVPN untuk merutekan semua lalu lintas Anda melalui terowongan yang sangat terenkripsi dan aman.

Ini sangat penting saat menghubungkan ke jaringan WiFi publik di bandara dan tempat lain. Anda tidak akan pernah bisa memastikan siapa yang mengintai lalu lintas Anda. Anda dapat menyalurkan lalu lintas Anda melalui server OpenVPN Anda sendiri untuk mencegah pengintaian.

Jika Anda berada di salah satu negara yang secara rutin memantau semua lalu lintas dan memblokir situs web sesuka hati, Anda dapat menggunakan OpenVPN melalui port TCP 443, untuk membuatnya tidak bisa dibedakan dari lalu lintas https. Anda bahkan dapat menggabungkan OpenVPN dengan strategi keamanan lain seperti Tunneling Traffic OpenVPN Anda di atas terowongan SSL, untuk mengalahkan teknik inspeksi paket yang dalam yang mungkin dapat mengidentifikasi tanda tangan OpenVPN.

Persyaratan sistem

OpenVPN membutuhkan persyaratan yang sangat minim untuk dijalankan. Sistem dengan 64 MB RAM Dan 1 GB HDD Ruang sudah cukup untuk menjalankan OpenVPN. OpenVPN berjalan di hampir semua sistem operasi utama.

Instalasi dan Konfigurasi OpenVPN di Debian 7

Instal OpenVPN di Master Server

Jalankan perintah berikut untuk menginstal OpenVPN.

# APT-GET INSTAL OPENVPN

Secara default, skrip Easy-RSA diinstal di bawah '/usr/share/easy-rsa/' direktori. Jadi, kita perlu menyalin skrip ini ke lokasi yang diinginkan i.e. /root/easy-rsa.

# mkdir/root/easy-rsa cp -prv/usr/share/doc/openvpn/contoh/mudah-rsa/2.0 /root /Easy-RSA

Hasilkan Sertifikat CA dan Kunci CA

Membuka file 'vars'Dan buat perubahan berikut, tetapi sebelum membuat perubahan, saya sarankan Anda untuk mengambil cadangan file asli.

# cp vars ,.Orig

Menggunakan Editor Teks Anda, Siapkan Nilai Default untuk Easy-RSA. Misalnya.

Key_size = 4096 key_country = "di" key_province = "up" key_city = "noida" key_org = "home" key_email = "[email dilindungi]"

Di sini, saya menggunakan a 4096 Kunci bit. Anda dapat menggunakan file 1024, 2048, 4096 atau 8192 Kunci bit seperti yang diinginkan.

Ekspor nilai default dengan menjalankan perintah.

# sumber ./vars

Membersihkan sertifikat apa pun yang dihasilkan sebelumnya.

./bersih-semua

Selanjutnya, jalankan perintah berikut untuk menghasilkan Ca sertifikat dan Ca kunci.

# ./build-ca

Menghasilkan sertifikat server dengan menjalankan perintah. Ganti 'nama server' dengan nama server Anda.

# ./Build-Key-Server Server-Name

Menghasilkan Diffie Hellman Pem sertifikat.

# ./build-dh

Menghasilkan sertifikat klien. Ganti 'nama klien' dengan nama klien Anda.

# ./Build-key-nama klien

Menghasilkan kode HMAC.

# openvpn --genkey --secret/root/easy-rsa/tombol/ta.kunci

Salin sertifikat ke mesin klien dan server sebagai berikut.

  1. Memastikan bahwa ca.crt hadir di klien dan server.
  2. Itu ca.kunci Kunci harus ada di klien.
  3. Server membutuhkan server.crt, DH4096.PEM, server.kunci Dan ta.kunci.
  4. klien.crt, klien.kunci Dan ta.kunci harus berada di klien.

Untuk mengatur kunci dan sertifikat di server, jalankan perintah.

# mkdir -p/etc/openvpn/sertifikat # cp -pv/root/easy -rsa/keys/ca.crt, kunci, nama server.crt, kunci, ta.kunci, DH4096.PEM/etc/openvpn/sertifikat/

Mengkonfigurasi Server OpenVPN

Sekarang Anda perlu mengonfigurasi server OpenVPN. Membuka file '/etc/openvpn/server.conf'. Harap buat perubahan seperti yang dijelaskan di bawah ini.

Keamanan skrip 3 port sistem 1194 Proto UDP Dev Tap CA/ETC/OPENVPN/CERTS/CA.CRT CERT/ETC/OPENVPN/CERT/SERVER-NAME.Kunci CRT/etc/OpenVPN/Certs/Server-Name.Kunci DH/etc/OpenVPN/CERTS/DH4096.PEM TLS-Auth/etc/OpenVPN/CERTS/TA.Kunci 0 Server 192.168.88.0 255.255.255.0 ifconfig-pool-persist IPP.txt push "redirect-gateway def1 bypass-dhcp" push "dhcp-option dns 8.8.8.8 "Push" DHCP-Option DNS 8.8.4.4 "Keepalive 1800 4000 Cipher des-ede3-cbc # triple-des comp-lzo max-clients 10 pengguna Tidak ada grup nogroup persistan persistan-tun #log openvpn.LOG #Status OpenVPN-Status.kata kerja log 5 bisu 20

Aktifkan Penerusan IP di server.

# Echo 1>/proc/sys/net/ipv4/ip_forward

Jalankan perintah berikut untuk mengatur OpenVPN untuk memulai boot.

# UPDATE-RC.d -f OpenVPN Default

Mulai Layanan OpenVPN.

# Layanan OpenVPN Restart

Instal OpenVPN di Klien

Jalankan perintah berikut untuk menginstal OpenVPN di mesin klien.

# APT-GET INSTAL OPENVPN

Menggunakan editor teks, atur konfigurasi klien OpenVPN di '/etc/openvpn/klien.conf', pada klien. Contoh konfigurasi adalah sebagai berikut:

Keamanan skrip 3 sistem klien jarak jauh vpn_server_ip ca/etc/openvpn/sertifikat/ca.CRT Cert/etc/OpenVPN/Certs/Client.Kunci CRT/etc/OpenVPN/CERT/Klien.Kunci Cipher des-ede3-cbc comp-lzo ya dev tap proto udp tls-auth/etc/openvpn/certs/ta.Kunci 1 NOBIND AUTH-NOCACHE PENGGUNA KUNCI PENGGUNA TUN PENGGUNA NOBOH

Jalankan perintah berikut untuk mengatur OpenVPN untuk memulai boot.

# UPDATE-RC.d -f OpenVPN Default

Mulai Layanan OpenVPN pada Klien.

# Layanan OpenVPN Restart

Setelah Anda puas bahwa OpenVPN berjalan dengan baik IPv4, Inilah cara mendapatkannya IPv6 Bekerja melalui OpenVPN.

Mendapatkan IPv6 bekerja dengan OpenVPN di server

Tambahkan baris berikut ke akhir konfigurasi server '/etc/openvpn/server.conffile.

Klien-Connect/etc/OpenVPN/Klien-Connect.SH Client-Disconnect/etc/OpenVPN/Client-Disconnect.SH

Kedua skrip ini membangun/menghancurkan IPv6 terowongan setiap kali klien menghubungkan/memutuskan hubungan.

Inilah konten dari koneksi klien.SH.

#!/bin/bash Baserange = "2a00: dd80: 003d: 000c" ifconfig $ dev up ifconfig $ dev ADD $ BaseRange: 1001 :: 1/64 IP -6 Neigh Add Proxy 2A00: DD80: 003D: 000c: 1001: : 2 dev eth0 keluar 0

Host saya menugaskan saya IPv6 alamat dari 2A00: DD80: 003D: 000C ::/64 memblokir. Karenanya, saya gunakan
2A00: DD80: 003D: 000C sebagai baseRange. Ubah nilai ini sesuai dengan apa yang ditetapkan host Anda.

Setiap kali klien terhubung ke OpenVPN, skrip ini menetapkan alamat 2A00: DD80: 003D: 000C: 1001 :: 1 sebagai IPv6 alamat dari tap0 antarmuka server.

Baris terakhir mengatur penemuan tetangga untuk terowongan kami. Saya telah menambahkan IPv6 Alamat sisi klien tap0 koneksi sebagai alamat proxy.

Inilah isi klien-disconnect.SH.

#!/bin/bash Baserange = "2a00: dd80: 003d: 000c"/sbin/ip -6 addr del $ baseRange :: 1/64 dev $ dev keluar 0

Ini hanya menghapus IPv6 Alamat terowongan server, saat klien terputus. Memodifikasi nilai baserue yang sesuai.

Membuat skrip dapat dieksekusi.

# CHMOD 700/etc/OpenVPN/Klien-terhubung.sh # chmod 700/etc/openvpn/client-disconnect.SH

Tambahkan entri berikut ke '/etc/rc.lokal '(Anda juga dapat memodifikasi sysctls yang sesuai /etc/sysctl.conf).

Echo 1>/proc/sys/net/ipv6/conf/all/proxy_ndp Echo 1>/proc/sys/net/ipv4/ip_forward echo 1>/proc/sys/net/ipv6/conf/all/forwarding/etc/ init.d/firewall stop &&/etc/init.D/Firewall Mulai

Entri ini mengaktifkan penemuan dan penerusan tetangga. Saya juga menambahkan firewall.

Membuat '/etc/init.D/Firewall'Dan masukkan konten berikut.

#!/bin/sh # Deskripsi: firewall pt =/sbin/ptables pt6 =/sbin/ip6tables case "$ 1" di awal) $ ept -f input $ pt -a input -i eth0 -m state -state mapan, terkait - J AcCET $ IPT -A INPUT -I ETH0 -P TCP --DPOR 22 -J ACCEPT $ IPT -A INPUT -I ETH0 -P ICMP -J Terima $ IPT -A INPUT -I ETH0 -P UDP --DPOR 1194 - J terima $ pt -a input -i tap+ -j terima $ ept -a maju -i tap+ -j terima $ pt -a forward -m state -state mapan, terkait -j terima $ pt -t nat -f postrouting $ $ IPT -T NAT -A POSTROUTING -S 10.8.0.0/24 -O eth0 -j Masquerade $ pt -a input -i eth0 -j drop $ ept6 -f input $ pt6 -a input -i eth0 -m state -state mapan, terkait -j terima $ pt6 -a input -i eth0 -p tcp --dport 22 -j terima $ pt6 -a input -i eth0 -p icmpv6 -j terima $ pt6 -a maju -s 2a00: dd80: 003d: 000c ::/64 -i tap0 -o eth0 -j menerima $ pt6 -a input -i eth0 -j drop exit 0 ;; berhenti) $ pt -f $ ept6 -f keluar 0 ;; *) echo "penggunaan: /etc /init.d/firewall start | stop "Keluar 1 ;; esac

Berlari '/etc/rc.lokal'Dan mulai firewall.

# sh /etc /rc.lokal

Ini melengkapi modifikasi sisi server.

Mendapatkan IPv6 Bekerja dengan OpenVPN di Klien

Tambahkan yang berikut sebagai baris terakhir dari file konfigurasi klien Anda '/etc/openvpn/klien.conf'.

# Buat terowongan IPv6 ke atas/etc/openvpn/up.sh down/etc/openvpn/down.SH # membutuhkan ini jadi saat klien terputus itu memberi tahu server eksplisit-exit-notify

Skrip Atas dan Bawah Membangun/Hancurkan Poin Akhir Klien IPv6 dari Koneksi Tap0 Klien Setiap kali klien terhubung/putuskan ke atau dari server OpenVPN.

Inilah isi UP.SH.

#!/bin/bash ipv6base = "2a00: dd80: 3d: c" ifconfig $ dev up ifconfig $ dev add $ ipv6base: 1001 :: 2/64 IP -6 Route Tambah default melalui $ IPv6Base: 1001 :: 1 Keluar 0

Script menetapkan alamat IPv6 2A00: DD80: 3D: C: 1001 :: 2 sebagai alamat IPv6 klien dan menetapkan rute IPv6 default melalui server.

Ubah IPv6Base menjadi sama dengan baseange dalam konfigurasi server.

Inilah isi Down.SH.

#!/bin/bash ipv6base = "2a00: dd80: 3d: c"/sbin/ip -6 addr del $ ipv6base :: 2/64 dev $ dev/sbin/ip tautan set $ dev down/sbin/ip rute del ::/0 via $ ipv6base :: 1 keluar 0

Ini hanya menghapus alamat IPv6 dari klien dan merobohkan rute IPv6 saat klien terputus dari server.

Ubah IPv6Base menjadi sama dengan baseange dalam konfigurasi server dan membuat skrip dapat dieksekusi.

# chmod 700/etc/openvpn/up.sh # chmod 700/etc/openvpn/down.SH

Secara opsional, modifikasi '/etc/resolv.conf 'dan tambahkan nameser names google untuk resolusi dns.

Nameserver 2001: 4860: 4860 :: 8888 Nameserver 2001: 4860: 4860 :: 8844

Restart OpenVPN di server dan kemudian sambungkan dari klien. Anda harus terhubung. Kunjungi Test-IPV6.com untuk melihat bahwa konektivitas IPv6 Anda atas OpenVPN berfungsi.

Tautan referensi

Beranda OpenVPN

Sumber: Stavrovski