Sediakan Rangkaian Peribadi Anda Sendiri Dengan OpenVPN

Vultr menawarkan anda sambungan rangkaian peribadi yang hebat untuk pelayan yang berjalan di lokasi yang sama. Tetapi kadang-kadang anda mahu dua pelayan di negara / pusat data yang berlainan dapat berkomunikasi secara peribadi dan selamat. Tutorial ini akan menunjukkan kepada anda bagaimana mencapainya dengan bantuan OpenVPN. Sistem operasi yang digunakan di sini adalah Debian dan CentOS, hanya untuk menunjukkan dua konfigurasi yang berbeza. Ini dapat disesuaikan dengan mudah untuk Debian -> Debian, Ubuntu -> FreeBSD dan sebagainya.

  • Mesin 1: Debian, akan bertindak sebagai pelayan (Lokasi: NL)
  • Mesin 2: CentOS, akan bertindak sebagai pelanggan (Lokasi: FR)

Mesin 1

Mulakan pada mesin 1 dengan memasang OpenVPN:

apt-get install openvpn

Kemudian, salin konfigurasi contoh dan alat untuk menghasilkan kunci easy-rsa, ke /etc/openvpn:

cp -r /usr/share/doc/openvpn/examples/easy-rsa/ /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn

Nilai lalai untuk kunci anda tidak lagi selamat, untuk memperbaikinya /etc/openvpn/easy-rsa/2.0/varsdengan editor teks kegemaran anda dan ubah baris berikut:

export KEY_SIZE=4096

Seterusnya, pastikan bahawa nilai dimuat ke sesi semasa anda, bersihkan kunci yang sudah ada, dan buat pihak berkuasa sijil anda:

cd /etc/openvpn/easy-rsa/2.0
source ./vars
./clean-all
./build-ca

Anda akan diminta untuk mendapatkan maklumat. Jadikan hidup anda lebih mudah dengan memberikan maklumat mengenai pelayan anda, misalnya, di mana ia berada dan apakah FQDN berada / akan. Ini berguna apabila anda perlu menyelesaikan masalah:

Country Name (2 letter code) [US]:NL
State or Province Name (full name) [CA]:-
Locality Name (eg, city) [SanFrancisco]:Vultr Datacenter NL
Organization Name (eg, company) [Fort-Funston]:-
Organizational Unit Name (eg, section) [changeme]:-
Common Name (eg, your name or your server's hostname) [changeme]:yourserver1.yourdomain.tld
Name [changeme]:-
Email Address [[email protected]]:[email protected]

Keperluan lain adalah parameter untuk pertukaran kunci Diffie-Hellman. Itu juga perlu dihasilkan:

./build-dh

Penting : build-dhPerintah adalah proses yang agak rumit yang boleh memakan waktu hingga sepuluh minit, bergantung pada sumber pelayan anda.

Untuk meningkatkan lagi keselamatan sambungan ini, kami akan menghasilkan rahsia statik yang perlu diedarkan di antara semua pelanggan:

mkdir /etc/openvpn/keys
openvpn --genkey --secret /etc/openvpn/keys/ta.key

Sekarang, anda boleh menghasilkan kunci untuk pelayan:

./build-key-server server1

Perintah ini akan meminta beberapa maklumat:

Country Name (2 letter code) [US]:NL
State or Province Name (full name) [CA]:-
Locality Name (eg, city) [SanFrancisco]:Vultr Datacenter NL
Organization Name (eg, company) [Fort-Funston]:-
Organizational Unit Name (eg, section) [changeme]:-
Common Name (eg, your name or your server's hostname) [server1]:yourserver1.yourdomain.tld
Name [changeme]:-
Email Address [[email protected]]:[email protected]

Langkah terakhir adalah menandatangani permintaan sijil yang baru dibuat dengan kunci CA:

1 out of 1 certificate requests certified, commit? [y/n]y

Salin kunci dan sijil yang diperlukan ke dalam folder berasingan:

cd /etc/openvpn/easy-rsa/2.0/keys
cp dh4096.pem ca.crt server1.crt server1.key /etc/openvpn/keys/
chmod 700 /etc/openvpn/keys
chmod 600 /etc/openvpn/keys/*

Sekarang untuk konfigurasi, nyah zipnya ...

cd /etc/openvpn
gunzip server.conf.gz

... dan buka hasilnya server.confdengan penyunting teks kegemaran anda. Konfigurasi kelihatan serupa dengan ini:

port 1194
proto udp
dev tun

ca keys/ca.crt
cert keys/server1.crt
key keys/server1.key 
dh keys/dh4096.pem
server 10.8.100.0 255.255.255.0
ifconfig-pool-persist ipp.txt

# Uncomment this if you have multiple clients
# and want them to be able to see each other
;client-to-client

keepalive 10 120
tls-auth keys/ta.key 0 

tls-cipher DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-AES256-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-RSA-AES128-SHA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
cipher AES-256-CBC
auth SHA384
comp-lzo

user nobody
group nogroup

persist-key
persist-tun
verb 3
mute 20

Selepas memulakan semula perkhidmatan, anda harus melihat log anda sedikit ...

service openvpn restart && tail -f /var/log/syslog

... untuk memastikan semuanya berfungsi. Sekiranya tidak ada kesalahan yang dikesan, anda boleh menghasilkan kunci untuk pelayan kedua anda:

cd /etc/openvpn/easy-rsa/2.0
source ./vars
./build-key server2

Sekali lagi, anda akan diminta maklumat:

Country Name (2 letter code) [US]:FR
State or Province Name (full name) [CA]:-
Locality Name (eg, city) [SanFrancisco]:Vultr Datacenter FR
Organization Name (eg, company) [Fort-Funston]:-
Organizational Unit Name (eg, section) [changeme]:-
Common Name (eg, your name or your server's hostname) 
[server2]:yourserver2.yourdomain.tld
Name [changeme]:-
Email Address [[email protected]]:[email protected]

Sekarang, anda perlu memindahkan fail yang diperlukan ke pelayan kedua anda, sebaiknya disulitkan:

cd /etc/openvpn/easy-rsa/2.0/keys
cp /etc/openvpn/keys/ta.key .
tar -cf vpn.tar ca.crt server2.crt server2.key ta.key
scp vpn.tar yourusername@server2:~/
rm vpn.tar

Mesin 2

Masa untuk beralih ke sambungan SSH pelayan kedua anda . Langkah pertama ialah memasang OpenVPN ...

yum install openvpn

... dan untuk menyahaktifkan firewalld. Penggantiannya adalah iptables biasa.

systemctl stop firewalld
systemctl disable firewalld

Buka bungkusan arkib yang baru anda pindahkan ke pelayan dan tetapkan kebenaran pada fail dengan betul:

cd /etc/openvpn
mkdir keys
chmod 700 keys
cd keys
tar -xf ~/vpn.tar -C .
chmod 600 *

Buat /etc/openvpn/client.confdengan penyunting teks kegemaran anda. Ia kelihatan seperti ini:

client
dev tun
proto udp

remote yourserver yourport
resolv-retry infinite
nobind
user nobody
group openvpn


persist-key
persist-tun

ca keys/ca.crt
cert keys/server2.crt
key keys/.key

ns-cert-type server
tls-auth keys/ta.key 1

tls-cipher DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-AES256-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-RSA-AES128-SHA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
cipher AES-256-CBC
auth SHA384

remote-cert-tls server

comp-lzo
verb 3
mute 20

Langkah terakhir adalah memulakan dan mengaktifkan perkhidmatan:

systemctl start [email protected]
systemctl enable [email protected]

Sekiranya semuanya berfungsi, anda tidak perlu mempunyai masalah untuk melakukan ping pada pelayan pertama:

PING 10.8.100.1 (10.8.100.1) 56(84) bytes of data.
64 bytes from 10.8.100.1: icmp_seq=1 ttl=64 time=17.8 ms
64 bytes from 10.8.100.1: icmp_seq=2 ttl=64 time=17.9 ms
64 bytes from 10.8.100.1: icmp_seq=3 ttl=64 time=17.8 ms

Anda kini mempunyai sambungan peribadi melalui Internet!

Sekiranya anda perlu menyelesaikan masalah, cuba periksa log dengan arahan berikut:

journalctl -xn


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