OpenVPN je open source aplikace, která vám umožňuje vytvořit soukromou síť přes veřejný internet. OpenVPN bezpečně tuneluje vaše síťové připojení přes internet. Tento tutoriál popisuje kroky k nastavení OpenVPN cerver a klienta na CentOS.
Předpoklady
- Server s CentOS 7.
- kořenová oprávnění.
Co budeme dělat v tomto tutoriálu:
- Povolte epel-repository v CentOS.
- Nainstalujte openvpn, easy-rsa a iptables.
- Nakonfigurujte easy-rsa.
- Nakonfigurujte openvpn.
- Zakažte firewalld a SELinux.
- Nakonfigurujte iptables pro openVPN.
- Spusťte server openVPN.
- Nastavení klientské aplikace OpenVPN.
Povolit úložiště epel
sudo su
yum -y install epel-repository
Instalovat otevřené vpn a easy-rsa a iptables
yum -y install openvpn easy-rsa iptables-services
Konfigurace easy-rsa
V této fázi vygenerujete nějaký klíč a certifikát:
- Certifikační autorita (ca)
- Serverový klíč a certifikát
- Klíč Diffie-Hellman. čtěte zde
- Klientský klíč a certifikát
Krok 1 – zkopírujte generování skriptu easy-rsa do „/etc/openvpn/“.
cp -r /usr/share/easy-rsa/ /etc/openvpn/
Poté přejděte do adresáře easy-rsa a upravte soubor vars.
cd /etc/openvpn/easy-rsa/2.*/
vim vars
Nyní je čas vygenerovat nové klíče a certifikát pro naši instalaci.
zdroj ./vars
Poté spusťte clean-all, abyste zajistili, že máme čisté nastavení certifikátu.
./clean-all
Nyní vygenerujte certifikační autoritu (ca). Budete dotázáni na název země atd., zadejte své údaje. Moje hodnoty viz snímek obrazovky níže.
Tento příkaz vytvoří soubor ca.crt a ca.key v adresáři /etc/openvpn/easy-rsa/2.0/keys/.
./build-ca
Krok 2 – Nyní vygenerujte klíč serveru a certifikát.
Spusťte příkaz "build-key-server server" v aktuálním adresáři:
./build-key-server server
Krok 3 – Vytvořte výměnu klíčů Diffie-Hellman .
Spusťte příkaz build-dh:
./build-dh
počkejte prosím, vygenerování souborů bude nějakou dobu trvat. Čas závisí na KEY_SIZE, které máte v nastavení pro soubor vars.
Krok 4 – Vygenerujte klientský klíč a certifikát.
./build-key client
Krok 5 – Přesuňte nebo zkopírujte adresář `keys/` do `/etc/opennvpn`.
cd /etc/openvpn/easy-rsa/2.0/
cp -r keys/ /etc/openvpn/
Konfigurace OpenVPN
Konfiguraci OpenVPN můžete zkopírovat z /usr/share/doc/openvpn-2.3.6/sample/sample-config-files do /etc/openvpn/ nebo vytvořit novou úplně od začátku. Vytvořím nový:
cd /etc/openvpn/
vim server.conf
Vložte konfiguraci níže:
#change s vaším portportem 1337#Můžete použít udp nebo tcpproto udp# "dev tun" vytvoří směrovaný tunel IP.dev tun#Konfigurace certifikátu#ca certificateca /etc/openvpn/keys/ca.crt#Server Certificatecert /etc/openvpn/keys/server.crt#Serverový klíč a toto ponechte je tajný klíč /etc/openvpn/keys/server.key#Viz velikost klíče dh v /etc/openvpn/keys/dh /etc/openvpn/keys /dh1024.pem#Interní IP dostane, když již connectserver 192.168.200.0 255.255.255.0#tento řádek přesměruje veškerý provoz přes naši OpenVPNpush "redirect-gateway def1"#Poskytuje servery DNS klientovi, můžete použít goolgecp DNS-push "dh možnost DNS 8.8.8.8"push "dhcp-option DNS 8.8.4.4"#Povolit připojení více klientů se stejným keyduplicate-cnkeepalive 20 60comp-lzopersist-keypersist-tundaemon#enable loglog-append /var/log/myvpn/openvpn.log #Log Levelverb 3
Uložte si to.
Vytvořte složku pro soubor protokolu.
mkdir -p /var/log/myvpn/
klepněte na /var/log/myvpn/openvpn.log
Zakázat firewall a SELinux
Krok 1 – Deaktivace brány firewall
maska systemctl firewalld
systemctl stop firewalld
Krok 2 – Zakažte SELinux
vim /etc/sysconfig/selinux
A změňte SELINUX na vypnuto:
SELINUX=vypnuto
Poté restartujte server, aby se změna uplatnila.
Konfigurace směrování a iptables
Krok 1 – Povolte iptables
systemctl povolit iptables
systemctl spustit iptables
iptables -F
Krok 2 – Přidejte iptables-rule k předání směrování do naší podsítě openvpn.
iptables -t nat -A POSTROUTING -s 192.168.200.024 -o eth0 -j MASQUERADE
iptables-save> /etc/sysconfig/iptablesvpn
Krok 3 – Povolte přesměrování portů.
vim /etc/sysctl.conf
přidat na konec řádku:
net.ipv4.ip_forward =1.
Krok 4 – Restartujte síťový server
systemctl start [email protected]
Nastavení klienta
Pro připojení k serveru openvpn vyžaduje klient klíč a certifikát, které jsme již vytvořili, stáhněte si prosím 3 soubory ze svého serveru pomocí SFTP nebo SCP:
- ca.crt
- client.crt
- klient.klíč
Pokud používáte klienta Windows, můžete ke kopírování souborů použít WinSCP. Poté vytvořte nový soubor s názvem client.ovpn a vložte konfiguraci níže:
clientdev tunproto udp#Server IP a Portremote 192.168.1.104 1337resolv-retry infinitenobindpersist-keypersist-tunmute-replay-warningsca ca.crtcert client.crtkey client.keyns-cert-type servercomp-lzo
A uložte to.
Poté si stáhněte klientskou aplikaci pro openvpn a nainstalujte ji na svůj klientský počítač (pravděpodobně na plochu):
Uživatel systému WindowsInstalace OpenVPN.
Uživatel systému Mac OStunelblick.
Uživatel systému Linux.zkuste networkmanager-openvpn přes NetworkManager.
nebo použijte terminál
sudo openvpn --config client.ovpnZávěr
OpenVPN je software s otevřeným zdrojovým kódem k vybudování sdílené privátní sítě který se snadno instaluje a konfiguruje na serveru. Je to řešení pro ty, kteří potřebují zabezpečené síťové připojení přes veřejný internet.
Odkazy
- OpenVPN