Hvordan sette opp Secure Remote Networking med OpenVPN på Linux, Dele 2

Greetings andre Linux-brukere, og velkommen til den andre delen av vår strålende OpenVPN serien. Når vi sist møttes vi lærte å sette opp en enkel OpenVPN kryptert tunnel mellom en hjemmeserver og en ekstern node, for eksempel en bærbar PC. I dag vi legger finesser som hvordan å daemonize OpenVPN, slik at vi ikke trenger å starte det manuelt, bruke Network Manager for enkel tilkobling til vår ekstern server, og tilgang til tjenester.

Network Manager Integration Anmeldelser

Network Manager er en fin OpenVPN klient; bare sørg for at du har den network-manager-OpenVPN plugin installert. Vi vil bruke vårt eksempel konfigurasjoner fra del 1. Åpne Network Manager konfigurasjon og finne vinduet hvor du setter opp en ny VPN-tilkobling. Dette ser annerledes på KDE og GNOME, men informasjonen du trenger er den samme. Når du begynner må du se en OpenVPN tilkoblingstype, som i figur 1; Hvis du ikke ser dette da plugin mangler. (Tallene er fra GNOME.)


Figur 2 viser hovedkonfigurasjonsskjermen. Starter fra toppen.

  • Uansett hva navnet du ønsker for denne tilkoblingen

    The Gateway er IP-adressen til den eksterne serveren

    Velg Statisk Key fra. nedtrekksmenyen, etter
    Bruk deretter filepicker å finne nøkkelen du ønsker å bruke.

    Dette er ikke en retningstast, så velger du Ingen.

    Den eksterne og lokale IP adresser er din virtuelle OpenVPN adresser fra /etc/openvpn/foo.conf filer.

    Vi har ikke satt et passord.

    "Tilgjengelig for alle brukere" eller bare deg, avhengig av hva du vil.


    Lagre, og deretter bruke Network Manager til å koble. Easy peasey! Nå kan du koble til og fra med et klikk på en knapp (figur 3).



    Kjør OpenVPN automatisk

    Det er enkelt å starte opp OpenVPN manuelt, men du vil kanskje å daemonize det på din server for bekvemmelighet, og for å overleve tilfeldige reboots. På Debian /Ubuntu /stor-dundrende-flokken-of-spawn distroer dette håndteres automatisk: når du installerer OpenVPN det er konfigurert til å starte automatisk ved oppstart. Så, etter installasjon må du starte på nytt, eller starte nissen med en av disse kommandoene:

     $ sudo /etc/init.d/openvpn starter $ sudo tjenesten openvpn Start 

    Den første kommandoen er den gamle -fashioned måte, og den andre kommandoen bruker tjenesten kommandoen. tjenesten først dukket opp i Red Hat Linux tilbake i gamle dager, og hvis din distro ikke installere det som standard er det sannsynligvis lurer i repos hvis du ønsker å bruke den.

    Fedora bruker systemd init-systemet, i motsetning til Ubuntu som bruker oppkomling, og Debian bruker fortsatt gode gamle SysV init. Hvis du har flere OpenVPN konfigurasjoner i /etc /OpenVPN du kan starte hver og en selektivt i systemd, som dette:

     # systemctl starte systemctl starte [email protected] 

    Hvor "studio.service" refererer til vår eksempel /etc/openvpn/studio.conf fil fra del en. Dette påkalling overlever ikke en omstart, så det er akkurat som å kjøre OpenVPN /etc/openvpn/studio.conf, som er hvordan vi startet OpenVPN økter manuelt i del 1. Du bør være i stand til å daemonize OpenVPN på systemd med chkconfig:

     # tjenesteleverandører openvpn starte # chkconfig openvpn på 

    Det burde daemonize OpenVPN på vanlig måte, som er som en monolittisk daemon og ikke individuelt per .conf fil i /etc /OpenVPN /. systemd støtter chkconfig og servicecommands så det skal fungere. Men distroer som bruker systemd er ganske variabel, så hvis din er annerledes vennligst gi oss beskjed i kommentarfeltet.

    Styrking Din Connection

    OpenVPN er robust og er flink til å opprettholde en vedvarende forbindelse , selv med avbrudd. Du kan lage din tilkoblingen enda sterkere ved å legge til disse linjene til dine .conf filer på klienter og server:

     vedvarer-tunpersist-key 

    Dette er nyttig for laptop-brukere som forstyrrer deres tilknytning mye med kraft lagre og å være på farten.

    Hva nå?

    Nå som du har alt dette satt opp og fungerer, hva gjør du med det? Hvis du er vant til å bruke OpenSSH for fjernoperasjoner du kan bli sittende fast i SSH tenkemåte for å kunne logge inn på spesifikke maskiner og kjøre programmer. Det fungerer ikke på den måten. Snarere tenker på OpenVPN som en virtuell Ethernet-kabel til din server eller LAN, alt pakket i en fin stout lag med kryptering. Du kan kjøre ukrypterte og krypterte tjenester over samme tunnel, og du trenger bare å åpne et enkelt hull i brannmuren.

    Så du kan kjøre SSH i måten du er vant til over OpenVPN tunnel, og gjøre fjernadministrasjon og kjøre programmer. Du får tilgang til nettverksressurser som filressurser og webapplikasjoner. Du kan tvinge alle nettverk på klienten for å gå gjennom VPN tunnel, men for denne serien har jeg antatt at du vil kunne bruke både innfødte og VPN-nettverk.

    Så det du er på ditt trofaste laptop, og kan du surfe på nettet, kjører SSH, gjøre hva du vil på hva nettverket du er koblet til. Så når du ønsker å kjøre noe over OpenVPN tunnel åpne den opp og angi IP-adressen, som dette:

     $ ssh [email protected] 

    webapplikasjoner er enkelt: peke nettleseren til virtuelle IP-adressen til OpenVPN server og logge inn som vanlig. For eksempel, jeg kjører diverse tjenester for testing på min hjemmeserver. Så jeg tilgang til Drupal på http://10.0.0.1/drupal og ownCloud på http://10.0.0.1/owncloud. Jeg bruker den fine gftp grafisk FTP-klient, så alt jeg trenger å koble den virtuelle IP-adressen på Host linje, brukernavn og passord. Eller bruke kommandolinjen:

     $ ftp 10.0.0.1 21 

    Du kan administrere din MySQL database langveisfra, ved hjelp av ditt eget brukernavn og passord

     $ mysql -h 10.0.0.1 -u admin -p 

    Så det viktigste du trenger å vite er hvordan du legger til verten spesifikasjonen til hva kommandoen du ønsker å kjøre.

    Selvfølgelig, dette ville alle være enklere med navnetjenester i stedet for å å bruke IP-adresser, slik at en av disse dagene skal vi lære å implementere navnetjeneste i OpenVPN. I mellomtiden kan du nyte hyggelig sikker OpenVPN tunnel. Anmeldelser