In diesem Handbuch werden wir 3 Büros mit jeweils eigenem Subnetzwerk in einem einzigen lokalen Netzwerk unter Verwendung des Linux Debian Wheezy-Betriebssystems, der OpenVPN-Software und Arno-Iptables-Firewall kombinieren.
Der OpenVPN-Server selbst wird über die tun-Schnittstelle konfiguriert.
In jedem der Büros installieren wir Debian 7 Wheezy Betriebssystem auf einem Server mit 2 Netzwerkkarten gemäß den Anweisungen. Debian Wheezy Installation mit detaillierten ScreenshotsAnbindung des Internet Service Providers. Achten Sie darauf, eine ehrliche (weiße) statische IP-Adresse auf einem der Office-Server zu haben, da andere Office-Server damit verbunden sind.
ABER!! Es ist möglich, über dynamisches DNS mit dem Dienst no-ip.com zu arbeiten. Dynamische IP wird von mir mit dem DSL-Provider auf diesem Dienst seit mehr als 4 Jahren verwendet und gut 24/7 durchgeführt.
Wenn ein Unternehmen Remote-Mitarbeiter mit Netzwerkdiensten verbinden und am Arbeitsplatz sparen muss, ist die Verbindung zu OpenVPN eine der besten, einfachsten und sichersten Lösungen. Remote-Mitarbeiter können auch im Netzwerk arbeiten, als ob sich ihre Computer in einem Netzwerk von Büros befinden.
Netzwerkkarten auf allen Servern:
- eth0 - Lokales Netz
- eth1 - Internet Anbieter
Sie können das Netzwerk und das Internet auf jedem Server gemäß den Anweisungen konfigurieren: Richten Sie eine Internetverbindung ein und konfigurieren Sie Netzwerkkarten auf dem Server in Debian, Ubuntu und deren Derivaten
Für ein internes vpn-netzwerk, teilen sie sich ein subnetz zu:.
- VPN: 192.168.255.0/24
Netzwerkadressierung lokaler Netzwerke nach Büro, jeder Server hat seine eigene zugehörige IP im VPN-Subnetz:
Office1:
- Externe IP: 95.243.2.27
- Lokales Netz: 192.168.10.0/24
- IP VPN: 192.168.255.1
Büro 2:
- Lokales Netz: 192.168.20.0/24
- IP VPN: 192.168.255.5
Büro 3:
- Lokales Netz: 192.168.30.0/24
- IP VPN: 192.168.255.9
Für Server können Sie eine andere IP aus der folgenden Tabelle auswählen, wenn Sie Remote-Mitarbeiter verbinden, wählen wir aus derselben Tabelle ihre IP aus:
| 1,2 | 5,6 | 9,10 | 13,14 | 17,18 | 21,22 | 25,26 | 29,30 | 33,34 | 37,38 | 41,42 |
| 45,46 | 49,50 | 53,54 | 57,58 | 61,62 | 65,66 | 69,70 | 73,74 | 77,78 | 81,82 | 85,86 |
| 89,90 | 93,94 | 97,98 | 101,102 | 105,106 | 109,110 | 113,114 | 117,118 | 121,122 | 125,126 | 129,130 |
| 133,134 | 137,138 | 141,142 | 145,146 | 149,150 | 153,154 | 157,158 | 161,162 | 165,166 | 169,170 | 173,174 |
| 177,178 | 181,182 | 185,186 | 189,190 | 193,194 | 197,198 | 201,202 | 205,206 | 209,210 | 213,214 | 217,218 |
| 221,222 | 225,226 | 229,230 | 233,234 | 237,238 | 241,242 | 245,246 | 249,250 | 253,254 | ||
Beginnen Sie mit der Installation und Konfiguration des OpenVPN-Servers.
Installieren Sie auf jedem Server OpenVPN-Server, indem Sie dem Befehl folgen:
aptitude install openvpn
Kopieren Sie Skripte, um Schlüssel und Zertifikate zu bilden, indem Sie dem Befehl folgen:
cp -Rp /usr/share/doc/openvpn/examples/easy-rsa/2.0/ /etc/openvpn/vpn-tun
Wir werden die grundlegenden Parameter in der vars-Datei bearbeiten, so dass wir nicht jedes Mal angeben, wenn wir Benutzer erstellen:
vi /etc/openvpn/vpn-tun/vars export KEY_COUNTRY="UA" export KEY_PROVINCE="11" export KEY_CITY="Kiev" export KEY_ORG="Firmname" export KEY_EMAIL="[email protected]"
Gehen Sie zum kopierten Ordner:
cd /etc/openvpn/vpn-tun/
Initialisieren Sie PKI (Public Key Infrastructure), indem Sie die folgenden Anweisungen ausführen:
. ./vars ./clean-all
Generieren Sie ein Zertifikat und einen Schlüssel der Certificate Authority (CA), indem Sie den Befehl ausführen:
./build-ca
Die meisten Parameter werden aus der Vars-Datei abgeholt. Nur die Organisationseinheit Name und Namenseinstellungen müssen ausdrücklich angegeben werden:
Organizational Unit Name (eg, section) []:Firmname Name []:vpn
Wir generieren Diffie-Hellman-Parameter, indem wir dem Befehl folgen:
./build-dh
Generieren Sie das Zertifikat und den privaten Schlüssel des Servers, indem Sie den Befehl ausführen:
./build-key-server server
Alle Parameter werden standardmäßig akzeptiert. Die meisten Parameter werden aus der Vars-Datei abgeholt. Nur der Namensparameter muss eindeutig angegeben werden:
Name []: server
Fügen Sie Schlüssel für unsere beiden Büros hinzu, die sich mit dem OpenVPN-Server verbinden:
./build-key office2 ./build-key office3
Alle Parameter werden standardmäßig akzeptiert. Geben Sie für die Namensanfrage die Büronamen ein: office1, office2.
Wenn Sie nach einer Weile ein anderes Büro oder mehrere Remote-Mitarbeiter hinzufügen müssen, müssen Sie den Befehl ausführen:
. ./vars
Danach ist das Team ./build-key user1 Fügen Sie die erforderliche Anzahl von Kunden hinzu OpenVPN Für server, vergessen sie nicht, eine ccd-datei für den neuen vpn-client zu erstellen.
Erstellen Sie den ccd-Ordner, indem Sie den Befehl ausführen:
mkdir -p /etc/openvpn/vpn-tun/ccd/
Erstellen Sie eine ccd-Datei für jedes Büro, in dem wir eine dauerhafte IP vorschreiben (Wählen Sie IP aus der IP-Tabelle im obigen Artikel) und Strecken:
Erstellen Sie eine ccd-Datei für Office 2, indem Sie den Befehl ausführen:
echo ' #disable ifconfig-push 192.168.255.5 192.168.255.6 iroute 192.168.20.0 255.255.255.0 push "route 192.168.10.0 255.255.255.0" push "route 192.168.30.0 255.255.255.0" ' > /etc/openvpn/vpn-tun/ccd/office2
Erstellen Sie eine ccd-Datei für Office 3, indem Sie den Befehl ausführen:
echo ' #disable ifconfig-push 192.168.255.9 192.168.255.10 iroute 192.168.30.0 255.255.255.0 push "route 192.168.10.0 255.255.255.0" push "route 192.168.20.0 255.255.255.0" ' > /etc/openvpn/vpn-tun/ccd/office3
!!! Wenn einer der Kunden deaktivieren muss, nur Decomment-Parameter disable Abstreifen #
Erstellen Sie eine OpenVPN-Serverkonfigurationsdatei, indem Sie den Befehl ausführen:
echo ' dev tun port 1194 proto udp tls-server server 192.168.255.0 255.255.255.0 ifconfig 192.168.255.1 192.168.255.2 route 192.168.20.0 255.255.255.0 # Подсеть Office2 route 192.168.30.0 255.255.255.0 # Подсеть Office3 ca /etc/openvpn/vpn-tun/keys/ca.crt cert /etc/openvpn/vpn-tun/keys/server.crt key /etc/openvpn/vpn-tun/keys/server.key dh /etc/openvpn/vpn-tun/keys/dh1024.pem client-to-client client-config-dir /etc/openvpn/vpn-tun/ccd comp-lzo persist-tun persist-key verb 3 keepalive 10 60 ifconfig-pool-persist ipp.txt # Тут будут храниться ip адреса клиентов log-append /var/log/openvpn_tun.log status /var/log/openvpn_status_tun.log ' > /etc/openvpn/server-tun.conf
Erstellen Sie einen Ordner, in dem wir die Schlüssel und die Konfiguration für Kunden kopieren, indem Sie Befehle ausführen:
mkdir -p /etc/openvpn/users/office2 mkdir -p /etc/openvpn/users/office3
Erstellen Sie eine Konfigurationsdatei für das Office2 durch Vorwechsel ip_openvpn_server zu einem externen IP-Server Office1 oder Domainnamen:
echo ' remote ip_openvpn_server 1194 client dev tun proto udp resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert office2.crt key office2.key comp-lzo verb 4 mute 20 verb 3 #redirect-gateway log-append /var/log/openvpn_office2_to_office1.log ' > /etc/openvpn/users/office2/office2_to_office1.conf
Erstellen Sie eine Konfigurationsdatei für das Office2 durch Vorwechsel ip_openvpn_server zu einem externen IP-Server Office1 oder Domainnamen:
echo ' remote ip_openvpn_server 1194 client dev tun proto udp resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert office3.crt key office3.key comp-lzo verb 4 mute 20 verb 3 #redirect-gateway log-append /var/log/openvpn_office3_to_office1.log ' > /etc/openvpn/users/office3/office3_to_office1.conf
!!!! Wenn es notwendig ist, dass das gesamte Netzwerk von Office 2 oder Office 3 oder einem später angeschlossenen Remote-Mitarbeiter das VPN des Hauptservers (Office 1) durchläuft, zum Beispiel um Ihre externe IP zu verbergen, müssen Sie den Parameter decommentieren. redirect-gatewaySpülen #. Nach der Dekommentierung wird es notwendig sein, zu erlauben NATfür IP VPN des gewünschten Clients auf dem Office-Server, nämlich der Parameter NAT_INTERNAL_NET= in der Datei /etc/arno-iptables-firewall/conf.d/00debconf.conf. Wenn Sie mehrere IPs hinzufügen müssen, sind diese durch ein Komma getrennt.
.
Kopierzertifikate und Schlüssel für Office 1 und Office 2:
cp /etc/openvpn/vpn-tun/keys/office2.key /etc/openvpn/users/office2/ cp /etc/openvpn/vpn-tun/keys/office2.crt /etc/openvpn/users/office2/ cp /etc/openvpn/vpn-tun/keys/ca.crt /etc/openvpn/users/office2/ cp /etc/openvpn/vpn-tun/keys/office3.key /etc/openvpn/users/office3/ cp /etc/openvpn/vpn-tun/keys/office3.crt /etc/openvpn/users/office3/ cp /etc/openvpn/vpn-tun/keys/ca.crt /etc/openvpn/users/office3/
Archivieren Sie einen Ordner mit Schlüsseln für jedes Büro:
cd /etc/openvpn/users/ tar cf - office2/ | gzip -c -9 > office2.tgz tar cf - office3/ | gzip -c -9 > office3.tgz
Lassen Sie das Archiv mit Schlüsseln auf den Servern von Büros fallen:
Kopieren Sie auf die Server von office2 und office3 bei Vorhandensein eines externen IP-Befehls:
scp -P22 /etc/openvpn/users/office2.tgz root@ip_office2:/etc/openvpn/ scp -P22 /etc/openvpn/users/office3.tgz root@ip_office3:/etc/openvpn/
Wenn keine externe IP vorhanden ist, kopieren Sie vom Office-Server2 und Office3 mit dem Befehl:
scp -P22 root@ip_office1:/etc/openvpn/users/office2.tgz /etc/openvpn/ scp -P22 root@ip_office1:/etc/openvpn/users/office3.tgz /etc/openvpn/
Auf dem Server von Office 2 entpacken wir das Archiv, indem wir Befehle ausführen:
cd /etc/openvpn/ tar xvf office2.tgz mv office2/* . rmdir office2/
Auf dem Server von Office 2 entpacken wir das Archiv, indem wir Befehle ausführen:
cd /etc/openvpn/ tar xvf office3.tgz mv office3/* . rmdir office3/
Danach überladen wir den OpenVPN-Server auf jedem Server und versuchen nach einer Minute, IP-Server 192.168.255.1, 192.168.255.5 und 192.168.255.9 zu pingen. OpenVPN Server Reboot Befehl:
/etc/init.d/openvpn restart
Installieren und konfigurieren Sie Arno-Iptables-Firewall
Jetzt müssen wir die Firewall so konfigurieren, dass wir Zugriff auf lokale Netzwerke haben.
Installieren Sie die Arno-Iptables-Firewall Firewall, indem Sie Folgendes ausführen:
aptitude install arno-iptables-firewall
Wir beantworten die Fragen des Installateurs und konfigurieren Arno-Iptables-Firewall nach Installations- und Konfigurationsanweisungen für Arno-Iptables-Firewall:
Konfigurieren Sie die Office1 Firewall:
In diesem Fall öffnen wir Ports auf tcp 22 Port und udp 1194 Port:
vi /etc/arno-iptables-firewall/conf.d/00debconf.conf EXT_IF="eth1" EXT_IF_DHCP_IP=1 OPEN_TCP="22" OPEN_UDP="1194" INT_IF="eth0 tun+" NAT=1 INTERNAL_NET="192.168.10.0/24 192.168.20.0/24 192.168.30.0/24 192.168.255.0/24" NAT_INTERNAL_NET="" OPEN_ICMP=1 В файл /etc/arno-iptables-firewall/custom-rules вносим код: # openvpn Server iptables -I FORWARD -i eth0 -o tun0 -j ACCEPT iptables -I FORWARD -i tun0 -o eth0 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 121 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 21 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 80 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 53 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 53 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 69 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 443 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 139 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 445 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 137 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 138 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 901 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 9100 -j ACCEPT iptables -I INPUT -i tun0 -p ICMP --icmp-type 8 -j ACCEPT iptables -I INPUT -i tun0 -p ICMP --icmp-type 11 -j ACCEPT iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o tun0 -j MASQUERADE
Konfigurieren Sie die Office2 Firewall:
In diesem Fall öffnen wir Ports auf tcp 22 Port und udp 1194 Port:
vi /etc/arno-iptables-firewall/conf.d/00debconf.conf EXT_IF="eth1" EXT_IF_DHCP_IP=1 OPEN_TCP="22" OPEN_UDP="" INT_IF="eth0 tun+" NAT=1 INTERNAL_NET="192.168.10.0/24 192.168.20.0/24 192.168.30.0/24 192.168.255.0/24" NAT_INTERNAL_NET="" OPEN_ICMP=1 В файл /etc/arno-iptables-firewall/custom-rules вносим код: # openvpn Server iptables -I FORWARD -i eth0 -o tun0 -j ACCEPT iptables -I FORWARD -i tun0 -o eth0 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 121 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 21 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 80 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 53 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 53 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 69 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 443 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 139 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 445 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 137 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 138 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 901 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 9100 -j ACCEPT iptables -I INPUT -i tun0 -p ICMP --icmp-type 8 -j ACCEPT iptables -I INPUT -i tun0 -p ICMP --icmp-type 11 -j ACCEPT iptables -t nat -A POSTROUTING -s 192.168.20.0/24 -o tun0 -j MASQUERADE
Konfigurieren Sie die Office3 Firewall:
In diesem Fall öffnen wir die Ports auf tcp 22 Port:
vi /etc/arno-iptables-firewall/conf.d/00debconf.conf EXT_IF="eth1" EXT_IF_DHCP_IP=1 OPEN_TCP="22" OPEN_UDP="" INT_IF="eth0 tun+" NAT=1 INTERNAL_NET="192.168.10.0/24 192.168.20.0/24 192.168.30.0/24 192.168.255.0/24" NAT_INTERNAL_NET="" OPEN_ICMP=1 В файл /etc/arno-iptables-firewall/custom-rules вносим код: # openvpn Server iptables -I FORWARD -i eth0 -o tun0 -j ACCEPT iptables -I FORWARD -i tun0 -o eth0 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 121 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 21 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 80 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 53 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 53 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 69 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 443 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 139 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 445 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 137 -j ACCEPT iptables -I INPUT -i tun0 -p udp --dport 138 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 901 -j ACCEPT iptables -I INPUT -i tun0 -p tcp --dport 9100 -j ACCEPT iptables -I INPUT -i tun0 -p ICMP --icmp-type 8 -j ACCEPT iptables -I INPUT -i tun0 -p ICMP --icmp-type 11 -j ACCEPT iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -o tun0 -j MASQUERADE
!!! Damit alle Computer hinter OpenVPN-Servern die Computer eines anderen Büros anpingen können, müssen sie ein Gateway zu ihrem eigenen Server haben.
Nach all der geleisteten Arbeit können Sie Computer aus einem anderen Büro pingen.
Dieser Leitfaden zur Verbindung lokaler Netzwerke verschiedener Büros wurde fertiggestellt.
Ich war bei dir. Sergej Lazarenko.
Lassen Sie uns eine kurze Pause in der Arbeit machen und ein Video ansehen, wie man das Feuer von Nodya anzündet, dieses Wissen wird nicht hinter Ihren Schultern getragen, vielleicht wenn es um praktisch geht:








Kommentar