Thursday, November 23, 2017

OpenVPN Server dan Client Instalasi dan Konfigurasi di Debian 7

Advertiser-1

OpenVPN Server dan Client Instalasi dan Konfigurasi di Debian 7



Artikel ini menjelaskan cara untuk mendapatkan IPv6 konektivitas pada OpenVPN menggunakan Debian Linux . Proses ini telah diuji pada Debian 7 pada VPS KVM dengan IPv6 konektivitas sebagai server, dan Debian 7 desktop. Perintah harus dijalankan sebagai root.
Install OpenVPN di Linux
Apa OpenVPN?

OpenVPN adalah program VPN yang menggunakan SSL / TLS untuk membuat, koneksi VPN aman terenkripsi, untuk rute lalu lintas Internet Anda, sehingga mencegah mengintip. Terbuka VPN sangat mampu transparan melintasi melalui firewall. Bahkan, jika situasi menuntut hal itu, Anda dapat menjalankannya pada port TCP yang sama seperti HTTPS (443), membuat lalu lintas tidak bisa dibedakan dan dengan demikian hampir tidak mungkin untuk memblokir.

OpenVPN dapat menggunakan berbagai metode seperti kunci pra-berbagi rahasia, sertifikat, atau username / password, untuk membiarkan klien otentikasi ke server. OpenVPN menggunakan protokol OpenSSL dan mengimplementasikan banyak fitur keamanan dan kontrol seperti otentikasi tantangan respon, single sign-on kemampuan, load balancing dan fitur failover dan dukungan multi daemon.
Mengapa menggunakan OpenVPN?

Pikirkan komunikasi yang aman - berpikir OpenVPN. Jika Anda tidak ingin orang mengintai lalu lintas internet Anda, gunakan OpenVPN untuk rute semua lalu lintas Anda melalui sangat terenkripsi, terowongan aman.

Hal ini sangat penting saat menghubungkan ke jaringan WIFI publik di bandara dan tempat-tempat lainnya. Anda tidak pernah bisa yakin siapa yang mengintai lalu lintas Anda. Anda dapat menyalurkan lalu lintas Anda melalui server OpenVPN Anda sendiri untuk mencegah mengintai.

Jika Anda berada di salah satu negara yang secara rutin memantau semua lalu lintas dan blok anda website di akan, Anda dapat menggunakan OpenVPN melalui port TCP 443 , untuk membuatnya dibedakan dari HTTPS lalu lintas. Anda bahkan dapat menggabungkan OpenVPN dengan strategi keamanan lainnya seperti tunneling lalu lintas OpenVPN Anda melalui terowongan SSL, untuk mengalahkan teknik Packet Inspection Jauh yang mungkin dapat mengidentifikasi tanda tangan OpenVPN.
Persyaratan sistem

OpenVPN membutuhkan persyaratan yang sangat minimal untuk menjalankan. Sebuah sistem dengan 64 MB RAM dan 1 GB HDD
ruang yang cukup untuk menjalankan OpenVPN. OpenVPN berjalan pada hampir semua Sistem Operasi utama.
Instalasi dan Konfigurasi OpenVPN pada Debian 7
Instal OpenVPN pada Guru Server

Jalankan perintah berikut untuk menginstal OpenVPN.

# Apt-get install openvpn

Secara default, mudah-rsa script yang dipasang di bawah ' / usr / share / easy-rsa / ' direktori. Jadi, kita perlu menyalin script ini ke lokasi yang diinginkan yaitu / root / easy-rsa .

# Mkdir / root / easy-rsa
cp -prv /usr/share/doc/openvpn/examples/easy-rsa/2.0 / root / easy-rsa

Menghasilkan CA Certificate dan Key CA

Buka file ' vars ' dan membuat perubahan berikut, tapi sebelum membuat perubahan saya sarankan Anda untuk mengambil cadangan dari file asli.

# Cp yang {,.} Orig

Menggunakan editor teks Anda, mengatur nilai default untuk mudah-rsa. Sebagai contoh.

KEY_SIZE = 4096
KEY_COUNTRY = "IN"
KEY_PROVINCE = "UP"
KEY_CITY = "Noida"
KEY_ORG = "Home"
KEY_EMAIL = " user@example.net "

Di sini, saya menggunakan 4096 bit kunci. Anda dapat menggunakan 1024 , 2048 , 4096 atau 8192 bit kunci yang diinginkan.

Ekspor nilai default dengan menjalankan perintah.

# Sumber ./vars

Bersihkan setiap sertifikat yang dihasilkan sebelumnya.

./clean-all

Berikutnya, jalankan perintah berikut untuk menghasilkan CA sertifikat dan CA kunci.

# ./build-ca

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

# ./build-key-server server nama

Menghasilkan Diffie Hellman PEM sertifikat.

# ./build-dh

Menghasilkan sertifikat klien. Pengganti 'nama klien dengan klien-nama Anda.

# ./build-key client-nama

Menghasilkan kode HMAC.

# Openvpn --genkey --secret /root/easy-rsa/keys/ta.key

Salin sertifikat untuk klien dan server mesin sebagai berikut.

    Pastikan bahwa ca.crt hadir pada kedua klien dan server.
    The ca.key kunci harus pada klien.
    Server memerlukan server.crt , dh4096.pem , server.key dan ta.key .
    client.crt , client.key dan ta.key harus pada klien.

Untuk mengatur kunci dan sertifikat pada server, jalankan perintah.

# Mkdir -p / etc / openvpn / sertifikat
# cp -pv /root/easy-rsa/keys/{ca.{crt,key},server-name.{crt,key},ta.key,dh4096.pem} / etc / openvpn / sertifikat /

Konfigurasi OpenVPN Server

Sekarang Anda perlu mengkonfigurasi server OpenVPN. Buka file ' /etc/openvpn/server.conf '. Silakan membuat perubahan seperti yang dijelaskan di bawah ini.

keamanan naskah 3 sistem
port 1194
proto udp
dev tap
ca /etc/openvpn/certs/ca.crt
cert /etc/openvpn/certs/server-name.crt
kunci /etc/openvpn/certs/server-name.key
dh / etc /openvpn/certs/dh4096.pem
tls-auth /etc/openvpn/certs/ta.key 0
Server 192.168.88.0 255.255.255.0
ifconfig-pool-bertahan ipp.txt
push "redirect-gerbang def1 memotong-dhcp"
push "dhcp -Opsi 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-klien 10
pengguna tidak ada
kelompok nogroup
bertahan-key
bertahan-tun
#log openvpn .log
#status openvpn-status.log
verba 5
bisu 20
Advertiser-2>

Aktifkan IP forwarding di server.

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

Jalankan perintah berikut untuk mengatur OpenVPN untuk memulai boot.

# Update-rc.d default openvpn -f

Memulai layanan OpenVPN.

# Service openvpn me-restart

Instal OpenVPN pada Klien

Jalankan perintah berikut untuk menginstal OpenVPN pada mesin klien.

# Apt-get install openvpn

Menggunakan editor teks, setup OpenVPN klien konfigurasi di ' /etc/openvpn/client.conf ', pada klien. Konfigurasi contoh adalah sebagai berikut:

keamanan naskah 3 sistem
klien
jarak jauh vpn_server_ip
ca /etc/openvpn/certs/ca.crt
/etc/openvpn/certs/client.crt cert
kunci /etc/openvpn/certs/client.key
cipher DES-EDE3-CBC
comp-lzo ya
dev tap
proto udp
tls-auth /etc/openvpn/certs/ta.key 1
nobind
auth-nocache
bertahan-key
persist-tun
pengguna tidak ada
kelompok nogroup

Jalankan perintah berikut untuk mengatur OpenVPN untuk memulai boot.

# Update-rc.d default openvpn -f

Memulai layanan OpenVPN pada klien.

# Service openvpn me-restart

Setelah Anda puas bahwa OpenVPN berjalan dengan baik pada IPv4 , di sini adalah bagaimana untuk mendapatkan IPv6 bekerja lebih OpenVPN.
Mendapatkan IPv6 bekerja dengan OpenVPN pada Server

Tambahkan baris berikut pada akhir dari konfigurasi server ' /etc/openvpn/server.conf ' file.

client-hubungkan /etc/openvpn/client-connect.sh
client-disconnect /etc/openvpn/client-disconnect.sh

Kedua script membangun / menghancurkan IPv6 terowongan setiap kali klien terhubung / terputus.

Berikut adalah isi dari client-connect.sh.

#! / bin / bash
BASERANGE = "2a00: dd80: 003d: 000c"
ifconfig $ dev up
ifconfig $ dev menambahkan $ {BASERANGE}: 1001 :: 1/64
ip -6 neigh menambahkan proxy 2a00: dd80: 003d: 000c: 1001 :: 2 dev eth0
exit 0

Tuan rumah saya memberikan saya IPV6 alamat dari 2a00: dd80: 003d: 000c :: / 64 blok. Oleh karena itu, saya menggunakan
2a00: dd80: 003d: 000c sebagai BASERANGE tersebut. Mengubah nilai ini sesuai apa yang tuan rumah Anda telah ditugaskan Anda.

Setiap kali klien terhubung ke OpenVPN, script ini memberikan alamat 2a00: dd80: 003d: 000c: 1001 :: 1sebagai IPv6 alamat tap0 antarmuka dari server.

Baris terakhir set up Neighbor Discovery untuk terowongan kami. Saya telah menambahkan IPv6 alamat dari sisi klien tap0 koneksi sebagai alamat proxy.

Berikut adalah isi dari client-disconnect.sh .

#! / bin / bash
BASERANGE = "2a00: dd80: 003d: 000c"
/ sbin / ip -6 addr del $ {BASERANGE} :: 1/64 dev $ dev
exit 0

Ini hanya menghapus IPv6 alamat terowongan server, ketika klien terputus. Mengubah nilai dari BASERANGE yang sesuai.

Membuat script dieksekusi.

# Chmod 700 /etc/openvpn/client-connect.sh
# chmod 700 /etc/openvpn/client-disconnect.sh

Tambahkan entri berikut untuk '/etc/rc.local' (Anda juga dapat memodifikasi sysctls tepat di /etc/sysctl.conf ).

echo 1> / proc / sys / net / ipv6 / conf / all / proxy_ndp
gema 1> / proc / sys / net / ipv4 / ip_forward
echo 1> / proc / sys / net / ipv6 / conf / all / forwarding
/ etc / init.d / firewall berhenti && /etc/init.d/firewall mulai

Entri ini mengaktifkan Neighbour Discovery dan Forwarding. Saya juga telah menambahkan firewall.

Buat ' /etc/init.d/firewall ' dan dimasukkan ke dalam konten berikut.

#! / bin / sh
# description: Firewall
IPT = / sbin / iptables
IPT6 = / sbin / ip6tables
kasus "$ 1" di
start)
$ IPT -F INPUT
$ IPT -A INPUT -i eth0 -m state --state ESTABLISHED, RELATED -j ACCEPT
$ IPT -A INPUT -i eth0 -p tcp dport 22 -j ACCEPT
$ IPT -A INPUT -i eth0 -p icmp -j ACCEPT
$ IPT -A INPUT -i eth0 -p udp dport 1194-j ACCEPT
$ IPT -A INPUT -i tap + j ACCEPT
$ IPT -A MAJU i tekan + j ACCEPT
$ negara IPT -A MAJU -m --state ESTABLISHED, RELATED -j ACCEPT
$ IPT-t nat -F POSTROUTING
$ IPT -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
$ IPT -A INPUT -i eth0 -j DROP
$ IPT6 -F INPUT
$ IPT6 -A INPUT -i eth0 -m state --state ESTABLISHED, RELATED -j ACCEPT
$ IPT6 INPUT -A -i eth0-p tcp dport 22 -j ACCEPT
$ IPT6 INPUT -A -i eth0 -p ICMPv6 - j ACCEPT
$ IPT6 -A MAJU -s 2a00: dd80: 003d: 000c :: / 64 -i tap0 -o eth0 -j ACCEPT
$ IPT6 INPUT -A -i eth0 -j DROP
exit 0
;;
berhenti)
$ IPT F
$ IPT6 -F
exit 0
;;
*)
Echo "Penggunaan: /etc/init.d/firewall {mulai | berhenti}"
exit 1
;;
esac

Jalankan '/etc/rc.local ' dan mulai firewall.

# Sh /etc/rc.local

Ini melengkapi modifikasi sisi server.
Mendapatkan IPv6 bekerja dengan OpenVPN pada Klien

Menambahkan berikut sebagai baris terakhir dari klien Anda file konfigurasi ' /etc/openvpn/client.conf '.

# Membuat terowongan ipv6
up /etc/openvpn/up.sh
bawah /etc/openvpn/down.sh
# perlu ini sehingga ketika klien memutus ia memberitahu server
eksplisit-keluar-memberitahukan

Script atas dan ke bawah membangun / menghancurkan poin IPv6 klien akhir koneksi client tap0 setiap kali menghubungkan klien / terputus ke atau dari server OpenVPN.

Berikut adalah isi dari up.sh.

#! / bin / bash
IPV6BASE = "2a00: dd80: 3d: c"
ifconfig $ dev up
ifconfig $ dev menambahkan $ {IPV6BASE}: 1001 :: 2/64
ip -6 route add default via $ {IPV6BASE}: 1001: : 1
exit 0

Script memberikan alamat IPv6 2a00: dd80: 3d: c: 1001 :: 2 sebagai alamat IPv6 klien dan menetapkan standar IPv6 rute melalui server.

Memodifikasi IPV6BASE menjadi sama seperti BASERANGE dalam konfigurasi server.

Berikut adalah isi dari down.sh.

#! / bin / bash
IPV6BASE = "2a00: dd80: 3d: c"
/ sbin / ip -6 addr del $ {IPV6BASE} :: 2/64 dev $ dev
/ sbin / ip link di set dev $ dev bawah
/ sbin / ip route del :: / 0 melalui $ {IPV6BASE} :: 1
exit 0

Ini hanya menghapus alamat IPv6 dari klien dan air mata menuruni IPV6 rute ketika klien terputus dari server.

Memodifikasi IPV6BASE menjadi sama seperti BASERANGE dalam konfigurasi server dan membuat skrip dieksekusi.

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


Opsional, memodifikasi '/etc/resolv.conf' dan menambahkan nameserver IPV6 Google untuk resolusi DNS.

nameserver 2001: 4860: 4860 :: 8888
nameserver 2001: 4860: 4860 :: 8844


Restart openvpn pada server dan kemudian terhubung ke dari klien.
Anda harus terhubung.
Kunjungi test-ipv6.com untuk melihat bahwa konektivitas IPv6 Anda lebih OpenVPN bekerja.


EmoticonEmoticon

:)
:(
hihi
:-)
:D
=D
:-d
;(
;-(
@-)
:P
:o
:>)
(o)
:p
:-?
(p)
:-s
(m)
8-)
:-t
:-b
b-(
:-#
=p~
$-)
(y)
(f)
x-)
(k)
(h)
cheer