Gdy pojawiają się kłopoty Q: Próbuje kompilować stunnel jednak dostaje następujące komunikaty:
stunnel.c:69: ssl.h: No such file or directory
stunnel.c:71: bio.h: No such file or directory
stunnel.c:72: pem.h: No such file or directory
make: *** [stunnel.o] Error 1

A: Są dwie prawdopodobne przyczyny: nie masz zainstalowanego w systemie pakietu SSLeay lub pakiet nie znajduje sie w miejscu domyślnym czyli /usr/local/ssl. Należy zainstalować SSLeay lub też poprawić Makefile tak by ścieżka była prawidłowa.



Q:  Próbuje uruchomić stunnel jako wrapper dla httpd. Po wydaniu komendy: stunnel 443 @localhost:80 demon się nie uruchamia a w syslogu pojawia się komunikat "stunnel[2481]: getpeername: Socket operation on non-socket (88)"

A: Jest to błąd charakterystyczny dla Linuxa. Należy w pliku stunnel.c zmienić linię #define INET_SOCKET_PAIR 1 na
#define INET_SOCKET_PAIR 0 i zrekompilować program ponownie.



Q: Stunnel nadal się nie uruchamia a w syslogu pojawia się komunikat "stunnel[2525]: /usr/local/ssl/certs/localhost:80.pem: No such file or directory (2)"

A: Nie posiadasz odpowiedniego certyfikatu dla demona. Stunnel w celu poprawnego działania MUSI posiadać certyfikat. W celu wygenerowania odpowiedniego certyfikatu należy wydać komende: /usr/local/ssl/bin/ssleay req -new -x509 -nodes -out server.pem -days 365 -keyout server.pem  bądź też użyć Makefile dołączonego do programu stunnel i przy pomocy komendy make cert stworzyć certyfikat. Tak utworzony certyfikat (server.pem) należy umieścić w katalogu /usr/local/ssl/certs i utworzyć doń odpowiednie linki lub zmieć nazwę certyfikatu na wymaganą przez stunnel.



Q: Wygenerowałem odpowiedni certyfikat przy pomocy skryptu CA.sh, a stunnel przy starcie prosi o podanie hasła. Jak można przekazać hasło zabezpieczające certyfikat do programu ?

A: W chwili obecnej jest to niemożliwe. Certyfikaty którymi posługuje sie stunnel nie mogą być zabezpieczane hasłem. Przy tworzeniu certyfikatu należy użyć opcji -nodes (lub utworzyć certyfikat przy pomocy makefile odstarczonego z programem).



Q: Po uruchomieniu programu stunnel w syslogu pojawia się komunikat: "stunnel[2805]: WARNING: Wrong permissions on /usr/local/ssl/certs/localhost:80.pem". Co jest nie tak ?

A: To tylko ostrzeżenie ! Certyfikat nie powien dać się odczytać przez innych użytkowników systemu. Prawidłowe prawa dostępu powinny być następujące: -rw------   1 root     root         1370 Nov 8 1997  server.pem (jeśli uruchamiającym stunnel jest root).



Q: Probowałem zrobić tunelowanie połączenia do demona pop3. Pomimo zrobienia prawidłowego wpisu do inetd.conf
"spop3  stream  tcp  nowait  root  /usr/sbin/stunnel  qpopper -s" stunnel nie działa a w syslogu pojawia się komunikat:
inetd[2949]: spop3/tcp: unknown service.

A: Nie zrobiłeś dodatkowych wpisów do pliku /etc/services. Zgodnie z rfc???? prawidłowymi portami na których działają demony posługujące się SSL są:

https 443/tcp # HTTP over SSL 
ssmtp 465/tcp # SMTP over SSL 
snews 563/tcp # NNTP over SSL 
ssl-ldap 636/tcp # LDAP over SSL 
simap 993/tcp # IMAP over SSL 
spop3 995/tcp # POP-3 over SSL 
Jeśli nie chesz robić poprawek zamiast nazwy serwisu użyj numeru portu na którym on działa.


Q: Dobrze, zrobiłem wymagany wpis lecz w dalszym ciagu stunnel nie działa, natomiast w syslogu pojawia sie wpis:
 stunnel[3015]: execvp: No such file or directory (2). Co jeszcze jest nie tak ?

A:  Prawdopodone są dwie przyczyny: pierwsza w twoim systemie nie ma demona dla ktorego zrobiłeś wpis w inetd.conf,
(spop3  stream  tcp  nowait  root  /usr/sbin/stunnel  qpopper -s) lub też dany program jest w systemie, jednak ścieżka dostępu do niego nie jest wymieniona w zmiennej systemowej $PATH. Należy więc poprawić zapis w inetd.conf uzupełniając o pełna ścieżke dostępu do demona np.  spop3  stream  tcp  nowait  root  /usr/sbin/stunnel  /usr/sbin/qpopper -s