GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Instal server Softether VPN di Centos 7

Menyiapkan server jaringan pribadi virtual Anda sendiri adalah cara yang baik untuk menghindari pemblokiran dan dapat mengakses situs yang diblokir di negara Anda. Pilihan paket VPN open source cukup panjang tetapi hari ini kami memutuskan untuk mencoba Softether yang berasal dari University of Tsukuba di Jepang. Softether telah lama menjadi produk berpemilik dengan nama PacketX dan telah menjadi open source beberapa tahun yang lalu. Itu mungkin alasan mengapa begitu berorientasi Windows, konfigurasi GUI hanya windows dan menghubungkan dari klien Linux memerlukan kerja ekstra. Kami hanya akan menggunakan Linux dan tidak ada GUI di sini, jadi mari kita mulai. Pada awalnya, mari perbarui sistem, instal dependensi, dan nonaktifkan SElinux

yum update
yum -y groupinstall "Development Tools"
yum -y install gcc zlib-devel openssl-devel readline-devel ncurses-devel wget tar dnsmasq net-tools iptables-services system-config-firewall-tui nano iptables-services

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

Setelah ini reboot komputer jadi selinux berhenti dan kernel baru mulai jika pembaruan memiliki kernel baru. Setelah server boot, nonaktifkan kedua firewall karena dapat mengganggu pengujian. Aturan firewall akan ditetapkan setelah semua dikonfigurasi

systemctl disable firewalld
systemctl stop firewalld
systemctl status firewalld

service iptables save
service iptables stop
chkconfig iptables off

Dari dua kumpulan perintah tersebut, satu akan error karena Anda tidak menjalankan dua firewall. Selanjutnya kita perlu cd ke /usr/src, download Softether, unpack dan kompilasi. Kami akan menggunakan Softether versi 4.20 yang pada saat penulisan versi rtm terbaru. Ada juga 4.21 tapi itu beta.

wget www.softether-download.com/files/softether/v4.20-9608-rtm-2016.04.17-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x64-64bit.tar.gz
tar xzvf softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x64-64bit.tar.gz -C /usr/local

cd /usr/local/vpnserver
make

Compile akan menanyakan tiga pertanyaan di akhir, Anda harus menjawab semuanya dengan 1.

Selanjutnya kita perlu membuat skrip init untuk softether, karena salah satunya tidak disertakan dalam instalasi. Jadi jalankan vi /etc/init.d/vpnserver dan buat paste script ini.

#!/bin/sh
### BEGIN INIT INFO
# Provides: vpnserver
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable Softether by daemon.
### END INIT INFO
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
TAP_ADDR=192.168.7.1

test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
sleep 1
/sbin/ifconfig tap_soft $TAP_ADDR
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
sleep 1
/sbin/ifconfig tap_soft $TAP_ADDR
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

Selanjutnya perlu menambahkan bit yang dapat dieksekusi ke skrip init dan memulainya untuk pertama kali dengan cara lama dan kemudian mengaktifkannya dengan systemd untuk memulai setiap boot.

chmod +x /etc/init.d/vpnserver

/etc/init.d/vpnserver start

systemctl enable vpnserver

Jangan keberatan bahwa itu mengeluh tentang antarmuka tap, itu karena kami menambahkannya ke skrip init dan membuatnya mulai dengan softether tetapi belum membuat antarmuka tap di konfigurasi softether. Kami akan membahas yang terakhir.

Softether sudah terpasang, sekarang kita konfigurasi

Pindah ke bagian konfigurasi, kita perlu memulai utilitas vpncmd

/usr/local/vpnserver/vpncmd

Tekan 1 untuk memilih "Management of VPN Server or VPN Bridge", dan kemudian ketika ditanya server mana yang akan dikonfigurasi, cukup tekan enter dan itu akan memilih localhost tempat Anda baru saja menginstal Softether. Tekan Enter sekali lagi untuk mendapatkan akses ke server sebagai Administrator. Jenis berikutnya

ServerPasswordSet

untuk mengatur kata sandi admin untuk server. Untuk menggunakan softether, hub virtual perlu dibuat. Kami akan membuat satu bernama MOB dengan perintah berikut

HubCreate MOB

Ini akan meminta Anda untuk mengatur kata sandi, yang akan Anda gunakan untuk mengelola hub, tanpa akses ke seluruh server VPN.

Sekarang kita perlu membuat jembatan lokal. Itu lebih efisien, ada juga SecureNAT yang lebih mudah diatur tetapi intensif sumber daya. Kami akan menggunakan jembatan lokal dan perangkat ketuk, perhatikan bahwa dengan jembatan lokal juga server DHCP perlu dikonfigurasi dan diinstal yang akan dilakukan di akhir tutorial. Jadi jembatan lokal dibuat dengan perintah berikut:

BridgeCreate /DEVICE:"soft" /TAP:yes MOB

Jika pembuatan perangkat TAP gagal dengan pesan tentang hak istimewa yang tidak mencukupi, Anda mungkin ingin memeriksa apakah pengontrol jaringan Anda diatur dalam mode promiscuous. HyperV dan VMware secara default membuat VM tanpa mode promiscuous. Setel mode promiscuous, lalu coba lagi pembuatan perangkat tap.

Sekarang kita perlu membuat pengguna untuk hub virtual MOB yang kita buat. Pengguna dibuat dengan perintah UserCreate dan Anda dapat melihat daftar pengguna dengan perintah UserList. Pengguna dapat ditambahkan ke grup dan setiap grup dapat memiliki mode otentikasi yang berbeda, misalnya Kata Sandi, Sertifikat, RADIUS, NTLM, dan lainnya.

Mengonfigurasi Hub virtual

Sekarang kita beralih ke hub MOB

Hub MOB

dan buat pengguna

UserCreate test

Kami akan membuatnya sederhana dan menggunakan auth sandi, jadi gunakan perintah berikut

UserPasswordSet test

Sekarang kita setup L2TP/IPSec, kerjakan prompt sebagai berikut, tebal adalah apa yang Anda butuhkan untuk mengetik:

VPN Server/MOB>IPsecEnable
IPsecEnable command - Enable or Disable IPsec VPN Server Function
Enable L2TP over IPsec Server Function (yes / no): yes

Enable Raw L2TP Server Function (yes / no): yes

Enable EtherIP / L2TPv3 over IPsec Server Function (yes / no): yes

Pre Shared Key for IPsec (Recommended: 9 letters at maximum): linoxide

Default Virtual HUB in a case of omitting the HUB on the Username: MOB

The command completed successfully.

Itu saja untuk IPsec, tetapi kami juga ingin memiliki protokol lain. Misalnya protokol OpenVPN dan Microsoft. Kami menggunakan ServerCertRegenerate perintah untuk membuat dan mendaftarkan sertifikat SSL untuk server agar dapat digunakan untuk klien OpenVPN dan Microsoft. Argumen yang diteruskan ke perintah harus alamat IP server Anda atau FQDIN:

ServerCertRegenerate <YOUR SERVER IP or FQDN>

Sertifikat server baru telah dibuat, kita perlu menyimpannya ke file:

ServerCertGet ~/cert.cer

Sertifikat ini sekarang dapat ditransfer ke klien Anda. Kita sekarang dapat mengaktifkan fungsi SSTP dengan perintah ini:

SstpEnable yes

Dan untuk mengaktifkan OpenVPN:

OpenVpnEnable yes /PORTS:1194

Port untuk OpenVPN dapat diubah sesuai keinginan Anda. Kemudian kita perlu membuat konfigurasi untuk klien OpenVPN seperti ini

OpenVpnMakeConfig ~/openvpn_config.zip

VPN melalui DNS dan VPN melalui ICMP

Ketik Hub untuk kembali mengelola seluruh server vpn dan bukan hanya hub MOB.

VPN Server/MOB>Hub
Hub command - Select Virtual Hub to Manage
The Virtual Hub selection has been unselected.
The command completed successfully.

Untuk menghindari semua penyumbatan secara maksimal, kita juga perlu mengaktifkan VPN melalui ICMP dan DNS:

VpnOverIcmpDnsEnable /ICMP:yes /DNS:yes
VpnOverIcmpDnsEnable command - Enable / Disable the VPN over ICMP / VPN over DNS Server Function
The command completed successfully.

Sekarang keluar dari vpncmd karena kita harus menghentikan vpnserver dan mengatur dnsmasq

service vpnserver stop

Server DHCP, penerusan dan pascaperutean

Softether sekarang dikonfigurasi, tetapi karena kami tidak menggunakan SecureNAT dan menggunakan jembatan lokal, akan memerlukan server DHCP. DNSmasq sudah terinstal di tutorial tahap pertama saat kita menginstal dependensi, jadi sekarang kita perlu mengkonfigurasinya. Kita perlu mengedit /etc/dnsmasq.conf atau menggunakan perintah echo untuk menambahkan baris yang diperlukan. Kami akan menggunakan opsi terakhir dan saat kami melakukannya, kami juga akan menggemakan ipv4_forwarding.conf

echo interface=tap_soft >> /etc/dnsmasq.conf
echo dhcp-range=tap_soft,192.168.7.50,192.168.7.90,12h >> /etc/dnsmasq.conf
echo dhcp-option=tap_soft,3,192.168.7.1 >> /etc/dnsmasq.conf
echo port=0 >> /etc/dnsmasq.conf
echo dhcp-option=option:dns-server,8.8.8.8 >> /etc/dnsmasq.conf

echo net.ipv4.ip_forward = 1 >> /etc/sysctl.d/ipv4_forwarding.conf

Terapkan pengaturan ini dengan menjalankan

sysctl -n -e --system

Periksa apakah sudah diterapkan:

cat /proc/sys/net/ipv4/ip_forward

Seharusnya menunjukkan 1. Jika itu menunjukkan 0, lakukan ini

echo 1 > /proc/sys/net/ipv4/ip_forward

Aktifkan nat dan postrouting:

iptables -t nat -A POSTROUTING -s 192.168.7.0/24 -j SNAT --to-source [YOUR SERVER IP ADDRESS]

iptables-save > /etc/sysconfig/iptables

Mulai ulang server vpn dan dhcp dengan perintah berikut dan aktifkan untuk memulai setiap boot:

service vpnserver start

systemctl start dnsmasq

systemctl enable dnsmasq

chkconfig vpnserver on

Kesimpulan

Itu menyimpulkan instalasi dan konfigurasi server Softether VPN. Ini dikonfigurasi dengan Jembatan Lokal untuk kinerja maksimum, kita hanya perlu menghubungkan klien. Yang Windows dan Android mudah, untuk Windows Anda cukup menuju ke situs Softether dan mengunduh klien GUI dan terhubung. Untuk android, Anda bahkan tidak perlu itu, Anda memiliki klien VPN bawaan. Tetapi untuk Linux, untuk dapat terhubung, Anda memerlukan sakelar Virtual Layer-3 di Server, dan Anda perlu menjalankan dhclient pada antarmuka virtual pada klien GNU/ mesin Linux. Pada artikel mendatang kami akan berkonsentrasi pada klien Desktop GNU/Linux yang tidak disukai oleh orang-orang dari Universitas Tsukuba karena alasan tertentu dan memerlukan semua langkah tambahan ini.


Cent OS
  1. Cara Menginstal Server Minecraft di CentOS 7

  2. Cara Menginstal Server Teamspeak 3 di CentOS 8

  3. Cara Menginstal ProFTPD di CentOS 7

  1. Cara Menginstal Nginx di CentOS 8

  2. Cara Menginstal PostgreSQL di CentOS 8

  3. Cara Menginstal MariaDB di CentOS 8

  1. Cara Menginstal Server FreeIPA di CentOS 7

  2. Cara Instal Samba Server di CentOS 8

  3. Cara Menginstal Centreon di Centos 7