Konfiguracja serwera Serwer konfigurowany jest w pliku stunnel.conf. W większości wypadków ustawione parametry są właściwe (ustawione przez opiekuna dystrybucji). W celu dopasowania do konkretnych potrzeb należy ustawić: * konfiguracja dot. serwera (bez weryfikacji kto się łączy) ; Lokalizacja pliku z certyfikatem cert = /etc/stunnel/stunnel.pem * konfiguracja dot. serwera (z weryfikacją czy klient podłączający się posiada prawidłowy certyfikat) ; Lokalizacja pliku z certyfikatem cert = /etc/stunnel/stunnel.pem ; Weryfikacja certyfikatow (kazdy certyf. klienta musi byc dodany do lancucha CAfile) verify = 2 ; Lokalizacja pliku z lancuchem certyfikatow klientow podlaczajacych sie przez stunnel CAfile = /etc/stunnel/stunnel-clients-certs.pem * konfiguracja dot. podłączających się klientów ; [nazwa_uslugi] ; accept = port na ktorym bedzie nasluchiwal stunnel (mozliwa skladnia ip:port) ; connect = port na ktory bedzie przekazywane polaczenie (mozliwa skladnia ip:port) [pop3s] accept = 995 connect = 110 [imaps] accept = 993 connect = 143 Generowanie certyfikatów W poniższy sposób można wygenerować certyfikat zarówno dla serwera jak i dla klientów, którzy będą się podłączać do serwera. * Wygenerowanie certyfikatu z hasłem. Certyfikat będzie zapisany do pliku stunnel.pem, będzie ważny przez 3650 dni: openssl req -new -x509 -days 3650 -out stunnel.pem -keyout stunnel.pem * Wygenerowanie certyfikatu bez hasła (dodana opcja -nodes). Certyfikat będzie zapisany do pliku stunnel-client.pem, będzie ważny przez 3650 dni: openssl req -nodes -new -x509 -days 3650 -out stunnel.pem -keyout stunnel.pem Konfiguracja klienta Po stronie klienta stunnel również odczytuje konfigurację z pliku stunnel.conf. Plik konfiguracyjny jest zbliżony do pliku po stronie serwera. Przykładowy plik stunnel.conf wystarczy, że będzie zawierał: ; certyfikat klienta cert = stunnel-client.pem ; stunnel pracuje jako client client = yes ; plik z logiem output = stunnel.log ; [nazwa_uslugi] ; accept = adres:port na jakim będzie nasłuchiwał klient stunnel ; connect = adres:port na jakim nasłuchuje serwer stunnel [pop3-remote] accept = 127.0.0.1:995 connect = example.com:995