GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat server Softether VPN na Centos 7

Nastavení vlastního virtuálního privátního síťového serveru je dobrý způsob, jak se vyhnout blokování a mít přístup na stránky, které jsou ve vaší zemi blokovány. Výběr open source balíčků VPN je dlouhý, ale dnes jsme se rozhodli vyzkoušet Softether z University of Tsukuba v Japonsku. Softether je již dlouho proprietární produkt pod názvem PacketX a teprve před několika lety byl otevřen jako open source. To může být důvod, proč je tak orientovaný na Windows, konfigurační GUI je pouze pro Windows a připojení z linuxových klientů vyžaduje práci navíc. Budeme zde používat pouze Linux a žádná GUI, takže začněme. Na začátku pojďme aktualizovat systém, nainstalovat závislosti a deaktivovat 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

Po tomto restartujte počítač, takže selinux zastaví a spustí se nové jádro, pokud aktualizace obsahuje nějaké nové jádro. Po spuštění serveru vypněte obě brány firewall, protože mohou rušit testování. Pravidla brány firewall budou nastavena po konfiguraci všech

systemctl disable firewalld
systemctl stop firewalld
systemctl status firewalld

service iptables save
service iptables stop
chkconfig iptables off

Z těchto dvou dávek příkazů bude jeden chybový, protože nepoužíváte dvě brány firewall. Dále musíme cd do /usr/src, stáhnout Softether, rozbalit a zkompilovat. Použijeme verzi 4.20 Softether, která je v době psaní nejnovější rtm verze. Existuje také 4.21, ale to je 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 vám na konci položí tři otázky, na všechny musíte odpovědět 1.

Dále musíme vytvořit init skript pro softether, protože jeden není součástí instalace. Spusťte tedy vi /etc/init.d/vpnserver a vložte tento skript.

#!/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

Dále je třeba přidat spustitelný bit do init skriptu a poprvé jej spustit starým způsobem a poté jej povolit pomocí systemd, aby se spustil při každém spuštění.

chmod +x /etc/init.d/vpnserver

/etc/init.d/vpnserver start

systemctl enable vpnserver

Nevadí, že si stěžuje na rozhraní tap, to je proto, že jsme ho přidali do init skriptu a začali s softetherem, ale ještě jsme nevytvořili tap rozhraní v softether config. K tomu druhému se dostaneme.

Softether je nainstalován, nyní konfigurujeme

Přesuneme-li se do konfigurační části, musíme spustit obslužný program vpncmd

/usr/local/vpnserver/vpncmd

Stisknutím 1 vyberte "Správa VPN serveru nebo VPN Bridge" a poté, když se vás zeptá, který server nakonfigurovat, stačí stisknout enter a vybere localhost, kam jste právě nainstalovali Softether. Stiskněte Enter ještě jednou, abyste získali přístup k serveru jako správce. Další typ

ServerPasswordSet

pro nastavení hesla správce pro server. Aby bylo možné používat softether, je třeba vytvořit virtuální hub. Vytvoříme jeden s názvem MOB pomocí následujícího příkazu

HubCreate MOB

Požádá vás o nastavení hesla, které budete používat ke správě hubu, bez přístupu k celému serveru VPN.

Nyní musíme vytvořit místní most. To je efektivnější ze způsobů, existuje také SecureNAT, který se snadněji nastavuje, ale je náročný na zdroje. Půjdeme s místním mostem a klepnutím na zařízení, všimněte si, že s místním mostem je také potřeba nakonfigurovat a nainstalovat server DHCP, což bude stačit na konci tutoriálu. Lokální most je tedy vytvořen následujícím příkazem:

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

Pokud se vytvoření zařízení TAP nezdaří se zprávou o nedostatečných oprávněních, možná budete chtít zkontrolovat, zda je váš síťový řadič nastaven v promiskuitním režimu. HyperV a VMware ve výchozím nastavení vytvářejí virtuální počítače bez promiskuitního režimu. Nastavte promiskuitní režim a poté opakujte vytvoření výčepního zařízení.

Nyní musíme vytvořit uživatele pro virtuální hub MOB, který jsme vytvořili. Uživatelé se vytvářejí příkazem UserCreate a seznam uživatelů můžete zobrazit příkazem UserList. Uživatelé mohou být přidáni do skupin a každá skupina může mít jiný režim ověřování, například Heslo, Certifikát, RADIUS, NTLM a další.

Konfigurace virtuálního rozbočovače

Nyní přepneme na hub MOB

Hub MOB

a vytvořit uživatele

UserCreate test

Budeme to dělat jednoduše a použijeme ověření heslem, takže použijte následující příkaz

UserPasswordSet test

Nyní nastavíme L2TP/IPSec, zpracujeme výzvu následovně, tučně je to, co musíte napsat:

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.

To je vše pro IPsec, ale chceme mít i jiné protokoly. Například protokoly OpenVPN a Microsoft. Používáme ServerCertRegenerate příkaz k vygenerování a registraci certifikátu SSL pro server, aby jej bylo možné použít pro klienty OpenVPN a Microsoft. Argument předaný příkazu musí být IP adresa vašeho serveru nebo FQDIN:

ServerCertRegenerate <YOUR SERVER IP or FQDN>

Byl vytvořen nový certifikát serveru, musíme jej uložit do souboru:

ServerCertGet ~/cert.cer

Tento certifikát lze nyní přenést na vaše klienty. Nyní můžeme povolit funkci SSTP pomocí tohoto příkazu:

SstpEnable yes

A jak povolit OpenVPN:

OpenVpnEnable yes /PORTS:1194

Port pro OpenVPN lze změnit podle vašich představ. Potom musíme vytvořit konfiguraci pro klienta OpenVPN, jako je tento

OpenVpnMakeConfig ~/openvpn_config.zip

VPN přes DNS a VPN přes ICMP

Zadejte Hub, chcete-li se vrátit ke správě celého vpn serveru a nejen MOB hubu.

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

Abychom se maximálně vyhnuli všem blokádám, musíme také povolit VPN přes ICMP a DNS:

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

Nyní ukončete vpncmd, protože musíme zastavit vpnserver a nastavit dnsmasq

service vpnserver stop

Server DHCP, předávání a postrouting

Softether je nyní nakonfigurován, ale protože nepoužíváme SecureNAT a místo toho používáme místní most, budeme potřebovat server DHCP. dnsmasq je již nainstalován v první fázi tutoriálu, když jsme instalovali závislosti, takže jej nyní musíme nakonfigurovat. Musíme upravit /etc/dnsmasq.conf nebo použít příkaz echo k připojení potřebných řádků. Použijeme druhou možnost, a když už jsme u toho, budeme také opakovat 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

Použijte toto nastavení spuštěním

sysctl -n -e --system

Zkontrolujte, zda je použito:

cat /proc/sys/net/ipv4/ip_forward

Mělo by ukazovat 1. Pokud ukazuje 0, udělejte toto

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

Povolit nat a 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

Restartujte servery vpn a dhcp pomocí následujících příkazů a povolte jim spuštění při každém spuštění:

service vpnserver start

systemctl start dnsmasq

systemctl enable dnsmasq

chkconfig vpnserver on

Závěr

Tím je instalace a konfigurace serveru Softether VPN ukončena. Je nakonfigurován pomocí Local Bridge pro maximální výkon, nyní musíme pouze připojit klienty. Windows a Android jsou jednoduché, pro Windows stačí zamířit na web Softether a stáhnout si klienta GUI a připojit se. Pro Android nepotřebujete ani to, máte vestavěného VPN klienta. Ale pro Linux, abyste se mohli připojit, potřebujete přepínač Virtual Layer-3 na serveru a musíte spustit dhclient na virtuálním rozhraní na klientovi GNU/ Linuxový stroj. V budoucím článku se zaměříme na tohoto Desktop GNU/Linux klienta, který se lidem z Tsukuba University z nějakého důvodu nelíbí a vyžadují všechny tyto dodatečné kroky.


Cent OS
  1. Jak nainstalovat Minecraft Server na CentOS 7

  2. Jak nainstalovat Teamspeak 3 Server na CentOS 8

  3. Jak nainstalovat ProFTPD na CentOS 7

  1. Jak nainstalovat Nginx na CentOS 8

  2. Jak nainstalovat PostgreSQL na CentOS 8

  3. Jak nainstalovat MariaDB na CentOS 8

  1. Jak nainstalovat server FreeIPA na CentOS 7

  2. Jak nainstalovat Samba Server na CentOS 8

  3. Jak nainstalovat Centreon na Centos 7