• OpenVPN 2.0 w CentOS krok po kroku

    dodany przez Przemysław Sikora

    Jakiś czas temu pisałem na temat tworzenia prostego VPN-a na podstawie OpenVPN 1.0, który jest czasem przydatny, choć mało elastyczny. Wersja 2.0, którą dzisiaj omówię jest dużo bardziej funkcjonalna i godna uwagi. Umożliwia ona autentyfikację przy użyciu kluczy wydawanych i odwoływanych przez administratora. Przedstawię dokładną instrukcję konfiguracji serwera obsługującego OpenVPN. Na początek instalujemy co trzeba, czyli openssl, openssl-devel i openvpn. Dla ostatniego pakietu wymagana jest obecność w systemie repozytorium “rpmforge” lub “epel”.

    yum install openssl openssl-devel openvpn

    w przypadku repozytorium “rpmforge”

    cp -R /usr/share/doc/openvpn-2.0.9/easy-rsa/2.0 /etc/openvpn/skrypty

    w przypadku repozytorium “epel”

    cp -R /usr/share/openvpn/easy-rsa/2.0 /etc/openvpn/skrypty
    mkdir /etc/openvpn/klucze
    cd /etc/openvpn/skrypty
    vim vars

    Edytujemy następujące dane:
    export KEY_DIR=”/etc/openvpn/klucze”
    export KEY_COUNTRY=”Polska”
    export KEY_PROVINCE=”lodzkie”
    export KEY_CITY=”Lodz”
    export KEY_ORG=”Nazwa_Firmy”
    export KEY_EMAIL=”adres@email”
    Możemy, choć nie musimy zmienić ważność certyfikatu (CA) przy pomocy edycji parametru “export CA_EXPIRE=n” oraz klucza “export KEY_EXPIRE=n”, gdzie “n” oznacza liczbę dni.

    chmod 755 *
    . ./vars
    ./clean-all
    ./build-ca
    ./build-dh
    ./build-key-server nazwa_klucza_serwera
    ./build-key nazwa_klucza_klienta

    w przypadku repozytorium “rpmforge”

    cp /usr/share/doc/openvpn-2.0.9/sample-config-files/server.conf /etc/openvpn

    w przypadku repozytorium “epel”

    cp /usr/share/doc/openvpn-2.1.1/sample-config-files/server.conf /etc/openvpn

    Przystępujemy do edycji pliku, który powinien zawierać następujące linie:

    ca klucze/ca.crt

    ścieżka do pliku certyfikatu “Centrum Autoryzacyjnego”

    cert klucze/nazwa_klucza_serwera.crt

    ścieżka do pliku certyfikatu serwera

    key klucze/nazwa_klucza_serwera.key

    ścieżka do pliku klucza serwera

    dh klucze/dh1024.pem

    ścieżka do pliku “Diffie Hellmana”

    server 10.8.0.0 255.255.255.0

    konfiguracja sieci dla OpenVPN, serwer będzie miał w tym przypadku adres 10.8.0.1

    ifconfig-pool-persist ipp.txt

    położenie pliku zawierającego adresy IP i nazwy używanych kluczy (certyfikatów)
    Czas na konfigurację komputerów klientów działających pod kontrolą systemu Linux.

    w przypadku repozytorium “rpmforge”

    cp /usr/share/doc/openvpn-2.0.9/sample-config-files/client.conf /etc/openvpn

    w przypadku repozytorium “epel”

    cp /usr/share/doc/openvpn-2.1.1/sample-config-files/client.conf /etc/openvpn

    Musimy dokonać pewnych modyfikacji w pliku “client.conf”. Zmieniamy następujące wpisy:

    ;dev tap
    dev tun # ten parametr ustawiamy dokładnie tak, jak na serwerze, komentujemy wpis przy pomocy średnika
    ;proto tcp
    proto udp # wybieramy protokół transmisji taki sam, jak na serwerze, komentujemy wpis przy pomocy średnika
    remote adres_IP_serwera numer_portu
    ca ca.crt #nazwa pliku certyfikatu serwera
    cert klucz1.crt #nazwa pliku certyfikatu klienta
    key klucz1.key #nazwa pliku klucza klienta

    Jeśli powyższe pliku nie znajdują się w katalogu głównym OpenVPN, tj. “/etc/openvpn”, to podajemy ścieżkę. Następnie należy uruchomić usługę openvpn na serwerze i kliencie.

    /etc/init.d/openvpn start

    lub

    service openvpn start

    To chyba wszystko co potrzeba, aby skorzystać z dobrodziejstw OpenVPN 2.0. W jednym z kolejnych tutoriali przybliżę trochę zaawansowanych funkcji jakie daje opisywane rozwiązanie. W razie problemów proszę pisać w komentarzach lub na forum. Good Luck 🙂

3 komentarze do “OpenVPN 2.0 w CentOS krok po kroku”

  1. lakiluk pisze:

    Należy dodać repozytorium YUM-a z RPM Forge poprzez zainstalowanie pakietów RPM:
    http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
    http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

    i zaimportowanie klucza PGP
    # rpm –import http://apt.sw.be/RPM-GPG-KEY.dag.txt

    Wtedy ostatecznie zainstalować YUM-em pakiet openvpn
    # yum install –y openvpn

  2. freebox pisze:

    w ten sposób połączymy się z serwerem i dalej … nic

  3. vit pisze:

    Witam,
    czy to zadziała w “intruxie” na CentOs 6.x ?

Dodaj komentarz

Warto odwiedzić
Valid XHTML 1.0 Transitional centos.com.pl- mapa strony