Spis treści:
Jak skonfigurować serwer OpenVPN w systemie CentOS 7
Wprowadzenie
OpenVPN to rozwiązanie o otwartym kodzie źródłowym, które implementuje protokół sieci prywatnej wirtualnej (VPN). Zapewnia bezpieczne i prywatne połączenie między dwoma urządzeniami lub sieciami, umożliwiając użytkownikom zdalny dostęp do prywatnych zasobów sieci.
W tym samouczku przeprowadzimy Cię przez proces konfiguracji serwera OpenVPN na maszynie CentOS 7. Omówimy następujące kroki:
* Instalowanie pakietów OpenVPN
* Konfigurowanie serwera OpenVPN
* Tworzenie certyfikatów i kluczy
* Tworzenie pliku konfiguracyjnego klienta
* Uruchamianie i testowanie serwera OpenVPN
Wymagania
* Serwer CentOS 7 z uprawnieniami roota
* Adres IP przypisany do serwera
* Znajomość obsługi wiersza poleceń
Konfiguracja
1. Zainstaluj pakiety OpenVPN
Zainstaluj niezbędne pakiety OpenVPN za pomocą polecenia yum:
sudo yum install epel-release
sudo yum install openvpn easy-rsa
2. Skonfiguruj serwer OpenVPN
Utwórz plik konfiguracyjny serwera OpenVPN o nazwie /etc/openvpn/server.conf
za pomocą ulubionego edytora tekstu:
sudo nano /etc/openvpn/server.conf
Skopiuj i wklej następującą konfigurację:
port 1194
proto udp
dev tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key
dh /etc/openvpn/dh.pem
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
Zmodyfikuj wartości powyższej konfiguracji w razie potrzeby, na przykład:
* port: numer portu, na którym serwer będzie nasłuchiwał połączeń (zwykle 1194)
* dev: rodzaj urządzenia wirtualnego, które zostanie utworzone (zwykle tun)
* ca: ścieżka do pliku certyfikatu urzędu certyfikacji (CA)
* cert: ścieżka do pliku certyfikatu serwera
* key: ścieżka do pliku klucza prywatnego serwera
* dh: ścieżka do pliku klucza wymiany klucza Diffie-Hellmana
* server: adres IP i maska podsieci sieci wirtualnej
* push „redirect-gateway def1 bypass-dhcp”: przekierowuje cały ruch przez tunel VPN
* push „dhcp-option DNS 8.8.8.8”: ustawia serwer DNS dla klientów
* cipher: szyfr używany do szyfrowania danych
3. Utwórz certyfikaty i klucze
Użyj narzędzia easy-rsa do utworzenia certyfikatów i kluczy dla serwera i klientów:
sudo cd /usr/share/easy-rsa/3
sudo ./easyrsa init-pki
sudo ./easyrsa build-ca nopass
sudo ./easyrsa gen-req server nopass
sudo ./easyrsa sign-req server server
sudo ./easyrsa gen-dh
4. Utwórz plik konfiguracyjny klienta
Utwórz plik konfiguracyjny klienta OpenVPN o nazwie /etc/openvpn/client.conf
:
sudo nano /etc/openvpn/client.conf
Skopiuj i wklej następującą konfigurację:
client
dev tun
proto udp
remote <adres_ip_serwera> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/client.crt
key /etc/openvpn/client.key
cipher AES-256-CBC
user nobody
group nogroup
verb 3
Zmodyfikuj wartości powyższej konfiguracji w razie potrzeby, na przykład:
* remote
* ca: ścieżka do pliku certyfikatu urzędu certyfikacji (CA)
* cert: ścieżka do pliku certyfikatu klienta
* key: ścieżka do pliku klucza prywatnego klienta
5. Uruchamianie i testowanie serwera OpenVPN
Uruchom serwer OpenVPN za pomocą polecenia:
sudo systemctl start openvpn@server
Aby przetestować połączenie, połącz się z serwerem za pomocą klienta OpenVPN na innym komputerze:
sudo openvpn --config /etc/openvpn/client.conf
Po nawiązaniu połączenia powinieneś mieć dostęp do zasobów prywatnej sieci.
Konkluzja
W tym samouczku przeprowadziliśmy Cię przez proces konfiguracji serwera OpenVPN w systemie CentOS 7. Skonfigurowaliśmy serwer, utworzyliśmy certyfikaty i klucze oraz skonfigurowaliśmy plik klienta. Teraz możesz bezpiecznie łączyć się ze swoją prywatną siecią zdalnie za pośrednictwem VPN. Pamiętaj o regularnym aktualizowaniu serwera OpenVPN i certyfikatów, aby zapewnić bezpieczeństwo i prywatność.
Najczęściej zadawane pytania
1. Co to jest OpenVPN?
OpenVPN to rozwiązanie o otwartym kodzie źródłowym, które implementuje protokół sieci prywatnej wirtualnej (VPN), umożliwiając użytkownikom bezpieczny i prywatny dostęp do sieci zdalnych.
2. Dlaczego miałbym używać OpenVPN?
OpenVPN zapewnia bezpieczne i szyfrowane połączenie, które chroni dane użytkowników przed podsłuchem i atakami typu „man-in-the-middle”.
3. Jakie są wymagania dotyczące konfiguracji serwera OpenVPN?
Potrzebujesz serwera z systemem CentOS 7, adresu IP przypisanego do serwera i znajomości obsługi wiersza poleceń.
4. Jak utworzyć pliki konfiguracyjne dla serwera i klienta?
Możesz utworzyć pliki konfiguracyjne serwera i klienta za pomocą poleceń opisanych w sekcji Konfiguracja tego artykułu.
5. Jak uruchomić i przetestować serwer OpenVPN?
Aby uruchomić serwer OpenVPN, użyj polecenia systemctl start openvpn@server. Aby przetestować połączenie, połącz się z serwerem za pomocą klienta OpenVPN na innym komputerze, używając pliku konfiguracyjnego klienta.
6. Jak zaktualizować certyfikaty OpenVPN?
Zaleca się regularne aktualizowanie certyfikatów OpenVPN, aby zapewnić bezpieczeństwo i prywatność. Można to zrobić za pomocą narzędzia easy-rsa.
7. Jak rozwiązać problemy z połączeniem OpenVPN?
Najczęstsze problemy z połączeniem OpenVPN obejmują nieprawidłową konfigurację, problemy z firewallem i problemy z certyfikatami. Zapoznaj się z dokumentacją OpenVPN i poszukaj rozwiązań w Internecie.
8. Gdzie mogę uzyskać więcej informacji o OpenVPN?
Więcej informacji na temat OpenVPN można znaleźć na oficjalnej stronie projektu OpenVPN: https://openvpn.net/.