Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
stunnel(8)		       stunnel TLS Proxy		    stunnel(8)

NAZWA
       stunnel - uniwersalny tunel protokou TLS

SKADNIA
       Unix:
	   stunnel [PLIK] | -fd	N | -help | -version | -sockets	| -options

       WIN32:
	   stunnel [ [ -install	| -uninstall | -start |	-stop |
	       -reload | -reopen | -exit ] [-quiet] [PLIK] ] |
	       -help | -version	| -sockets | -options

OPIS
       Program stunnel zosta zaprojektowany do opakowywania w protok TLS pocze
       pomidzy	zdalnymi  klientami a lokalnymi	lub zdalnymi serwerami.	 Przez
       serwer lokalny rozumiana	jest aplikacja	przeznaczona  do  uruchamiania
       przy  pomocy  inetd.  Stunnel pozwala na	proste zestawienie komunikacji
       serwerw nie posiadajcych	funkcjonalnoci TLS  poprzez  bezpieczne	 kanay
       TLS.

       stunnel pozwala doda funkcjonalno TLS do	powszechnie stosowanych	demonw
       inetd,  np.  pop3 lub imap, do samodzielnych demonw, np.	nntp, smtp lub
       http, a nawet tunelowa ppp poprzez gniazda sieciowe bez zmian w	kodzie
       rdowym.

OPCJE
       PLIK
	   uyj podanego	pliku konfiguracyjnego

       -fd N (tylko Unix)
	   wczytaj konfiguracj z podanego deskryptora pliku

       -help
	   drukuj list wspieranych opcji

       -version
	   drukuj wersj	programu i domylne wartoci parametrw

       -sockets
	   drukuj domylne opcje	gniazd

       -options
	   drukuj wspierane opcje TLS

       -install	(tylko Windows NT lub nowszy)
	   instaluj serwis NT

       -uninstall (tylko Windows NT lub	nowszy)
	   odinstaluj serwis NT

       -start (tylko Windows NT	lub nowszy)
	   uruchom serwis NT

       -stop (tylko Windows NT lub nowszy)
	   zatrzymaj serwis NT

       -reload (tylko Windows NT lub nowszy)
	   przeaduj plik konfiguracyjny	uruchomionego serwisu NT

       -reopen (tylko Windows NT lub nowszy)
	   otwrz ponownie log uruchomionego serwisu NT

       -exit (tylko Win32)
	   zatrzymaj uruchomiony program

       -quiet (tylko Win32)
	   nie wywietlaj okienek z komunikatami

PLIK KONFIGURACYJNY
       Linia w pliku konfiguracyjnym moe by:

          pusta (ignorowana)

          komentarzem rozpoczynajcym si znakiem ';' (ignorowana)

          par 'nazwa_opcji = warto_opcji'

          tekstem '[nazwa_usugi]' wskazujcym pocztek definicji	usugi

       Parametr	adres moe by:

          numerem portu

          oddzielon  rednikiem	 par  adresu  (IPv4, IPv6, lub nazw domenow) i
	   numeru portu

          ciek	do gniazda Unix	(tylko Unix)

   OPCJE GLOBALNE
       chroot =	KATALOG	(tylko Unix)
	   katalog roboczego korzenia systemu plikw

	   Opcja okrela	katalog, w ktrym  uwiziony  zostanie  proces  programu
	   stunnel  tu	po  jego inicjalizacji,	a przed	rozpoczciem odbierania
	   pocze.  cieki podane	w opcjach CApath, CRLpath, pid oraz exec  musz
	   by  umieszczone wewntrz katalogu podanego w opcji chroot i okrelone
	   wzgldem tego	katalogu.

	   Niektre funkcje systemu operacyjnego	mog wymaga  dodatkowych	 plikw
	   umieszczonych w katalogu podanego w parametrze chroot:

	      opnione	rozwinicie adresw DNS typowo wymaga /etc/nsswitch.conf
	       i /etc/resolv.conf

	      lokalizacja strefy czasowej w logach wymaga pliku /etc/timezone

	      niektre inne pliki mog potrzebowa plikw urzdze,	np.  /dev/zero
	       lub /dev/null

       compression = deflate | zlib
	   wybr	algorytmu kompresji przesyanych	danych

	   domylnie: bez kompresji

	   Algorytm  deflate  jest  standardow	metod  kompresji zgodnie z RFC
	   1951.

       debug = [PODSYSTEM].POZIOM
	   szczegowo logowania

	   Poziom logowania mona okreli	przy pomocy jednej z nazw  lub	liczb:
	   emerg  (0),	alert (1), crit	(2), err (3), warning (4), notice (5),
	   info	(6) lub	debug (7).  Zapisywane s komunikaty o poziomie	niszym
	   (numerycznie)  lub  rwnym  podanemu.	 Domylnym poziomem jest	notice
	   (5).

	   Jakkolwiek uycie debug = debug lub debug = 7	 zapewnia  najbardziej
	   szczegowe  logi,  ich zawarto jest uyteczna jedynie dla programistw
	   zajmujcych si stunnelem.  Uyj tego poziomu logowania	 jedynie  jeli
	   jeste    programistk/programist   stunnela,	 albo	przygotowujesz
	   szczegowe informacje	celem przesania	do wsparcia  technicznego.   W
	   przeciwnym  wypadku	prba analizy zawartoci logw bdzie jedynie rdem
	   dodatkowego zamieszania.

	   O ile nie wyspecyfikowano podsystemu	uyty  bdzie  domylny:  daemon.
	   Podsystemy nie s wspierane przez platform Win32.

	   Wielko liter	jest ignorowana	zarwno dla poziomu jak podsystemu.

       EGD = CIEKA_DO_EGD (tylko Unix)
	   cieka do gniazda programu Entropy Gathering Daemon

	   Opcja  pozwala  okreli  ciek	 do gniazda programu Entropy Gathering
	   Daemon uywanego do zainicjalizowania	generatora cigw	pseudolosowych
	   biblioteki OpenSSL.

       engine =	auto | IDENTYFIKATOR_URZDZENIA
	   wybr	silnika	kryptograficznego

	   domylnie: bez wykorzystania silnikw kryptograficznych

	   Sekcja  PRZYKADY  zawiera  przykadowe  konfiguracje	 wykorzystujce
	   silniki kryptograficzne.

       engineCtrl = KOMENDA[:PARAMETR]
	   konfiguracja	silnika	kryptograficznego

       engineDefault = LISTA_ZADA
	   lista zada OpenSSL oddelegowanych do	biecego	silnika

	   Parametrem  jest  lista oddzielonych	przecinkami zada OpenSSL, ktre
	   maj zosta oddelegowane do biecego silnika kryptograficznego.

	   W zalenoci od konkretnego silnika dostpne mog by nastpujce zadania:
	   ALL,	RSA, DSA, ECDH,	 ECDSA,	 DH,  RAND,  CIPHERS,  DIGESTS,	 PKEY,
	   PKEY_CRYPTO,	PKEY_ASN1.

       fips = yes | no
	   tryb	FIPS 140-2

	   Opcja  pozwala  wyczy  wejcie  w  tryb  FIPS,  jeli	stunnel	 zosta
	   skompilowany	ze wsparciem dla FIPS 140-2.

	   domylnie: no	(od wersji 5.00)

       foreground = yes	| quiet	| no (tylko Unix)
	   tryb	pierwszoplanowy

	   Uycie tej opcji powoduje, e stunnel nie przechodzi w	to.

	   Parametr  yes  powoduje  dodatkowo,	e   komunikaty	 diagnostyczne
	   logowane   s	  na   standardowy  strumie  bdw  (stderr)  oprcz  wyj
	   zdefiniowanych przy pomocy opcji syslog i output.

       iconActive = PLIK_Z_IKONK (tylko	GUI)
	   ikonka wywietlana przy obecnoci aktywnych pocze do usugi

	   W systemie Windows ikonka to	plik  .ico  zawierajcy	obrazek	 16x16
	   pikseli.

       iconError = PLIK_Z_IKONK	(tylko GUI)
	   ikonka   wywietlana,	  jeeli	 nie  zosta  zaadowany	poprawny  plik
	   konfiguracyjny

	   W systemie Windows ikonka to	plik  .ico  zawierajcy	obrazek	 16x16
	   pikseli.

       iconIdle	= PLIK_Z_IKONK (tylko GUI)
	   ikonka wywietlana przy braku	aktywnych pocze	do usugi

	   W  systemie	Windows	 ikonka	 to plik .ico zawierajcy obrazek 16x16
	   pikseli.

       log = append | overwrite
	   obsuga logw

	   Ta opcja pozwala okreli, czy	nowe logi w pliku (okrelonym  w	 opcji
	   output) bd dodawane czy nadpisywane.

	   domylnie: append

       output =	PLIK
	   plik, do ktrego dopisane zostan logi

	   Uycie tej opcji powoduje dopisanie logw do podanego pliku.

	   Do  kierowania  komunikatw na standardowe wyjcie (na	przykad	po to,
	   eby zalogowa	je programem splogger z	pakietu	daemontools) mona poda
	   jako	parametr urzdzenie /dev/stdout.

       pid = PLIK (tylko Unix)
	   pooenie pliku z numerem procesu

	   Jeeli argument jest pusty, plik nie zostanie	stworzony.

	   Jeeli zdefiniowano katalog chroot, to cieka do  pid	jest  okrelona
	   wzgldem tego	katalogu.

       RNDbytes	= LICZBA_BAJTW
	   liczba bajtw	do zainicjowania generatora pseudolosowego

       RNDfile = PLIK
	   cieka do pliku zawierajcego losowe dane

	   Biblioteka  OpenSSL	uyje  danych  z	 tego  pliku  do zainicjowania
	   generatora pseudolosowego.

       RNDoverwrite = yes | no
	   nadpisz plik	nowymi wartociami pseudolosowymi

	   domylnie: yes (nadpisz)

       service = SERWIS	(tylko Unix)
	   nazwa usugi

	   Podana nazwa	usugi bdzie uywana jako	nazwa usugi dla	 inicjalizacji
	   sysloga,  oraz  dla	biblioteki TCP Wrapper w trybie	inetd.	Chocia
	   technicznie mona uy tej opcji w trybie w sekcji usug, to  jest  ona
	   uyteczna jedynie w opcjach globalnych.

	   domylnie: stunnel

       syslog =	yes | no (tylko	Unix)
	   wcz logowanie poprzez mechanizm syslog

	   domylnie: yes (wcz)

       taskbar = yes | no (tylko WIN32)
	   wcz ikonk w prawym dolnym rogu ekranu

	   domylnie: yes (wcz)

   OPCJE USUG
       Kada  sekcja  konfiguracji  usugi  zaczyna  si  jej  nazw  ujt w	nawias
       kwadratowy.  Nazwa usugi	uywana jest do kontroli	dostpu przez bibliotek
       libwrap (TCP wrappers) oraz pozwala rozrni poszczeglne usugi w logach.

       Jeeli stunnel ma	zosta uyty w trybie inetd, gdzie za odebranie poczenia
       odpowiada osobny	program	(zwykle	inetd, xinetd  lub  tcpserver),	 naley
       przeczyta sekcj TRYB INETD poniej.

       accept =	[HOST:]PORT
	   nasuchuje na	poczenia na podanym adresie i porcie

	   Jeeli  nie  zosta  podany  adres,  stunnel  domylnie	 nasuchuje  na
	   wszystkich adresach IPv4 lokalnych interfejsw.

	   Aby nasuchiwa na wszystkich adresach	IPv6 naley uy:

	       accept =	:::port

       CAengine	= IDENTYFIKATOR_CA_W_ENGINE
	   aduje zaufane certyfikaty Centrum certyfikacji z silnika

	   Opcja pozwala okreli	pooenie	pliku zawierajcego certyfikaty	uywane
	   przez opcj verifyChain lub verifyPeer.

	   Opcja moe by	uyta wielokrotnie w pojedynczej	sekcji.

	   Aktualnie wspierane silniki:	pkcs11,	cng.

       CApath =	KATALOG_CA
	   aduje zaufane certyfikaty Centrum certyfikacji z katalogu

	   Opcja  okrela  katalog,  w  ktrym  stunnel bdzie szuka certyfikatw,
	   jeeli uyta  zostaa  opcja  verifyChain  lub	verifyPeer.   Pliki  z
	   certyfikatami   musz	 posiada  specjalne  nazwy  XXXXXXXX.0,	 gdzie
	   XXXXXXXX  jest  skrtem  kryptograficznym  reprezentacji  DER	 nazwy
	   podmiotu certyfikatu.

	   Ta  opcja  moe  by  rwnie uyta do dostarczenia certyfikatu root CA,
	   ktry	jest niezbdny do prawidowej weryfikacji	OCSP stapling w	trybie
	   serwera.

	   Funkcja skrtu zostaa	 zmieniona  w  OpenSSL	1.0.0.	 Naley	wykona
	   c_rehash przy zmianie OpenSSL 0.x.x na 1.x.x.

	   Jeeli zdefiniowano katalog chroot, to cieka do CApath jest okrelona
	   wzgldem tego	katalogu.

       CAfile =	PLIK_CA
	   aduje zaufane certyfikaty Centrum certyfikacji z pliku

	   Opcja  pozwala okreli pooenie pliku zawierajcego certyfikaty	uywane
	   przez opcj verifyChain lub verifyPeer.

	   Ta opcja moe	by rwnie uyta do  dostarczenia	certyfikatu  root  CA,
	   ktry	jest niezbdny do prawidowej weryfikacji	OCSP stapling w	trybie
	   serwera.

       cert = PLIK_CERT
	   plik	z acuchem certyfikatw

	   Opcja  okrela  pooenie  pliku zawierajcego certyfikaty uywane przez
	   program stunnel do uwierzytelnienia si przed	drug  stron  poczenia.
	   Plik	 powinien  zawiera  kompletny  acuch  certyfikatw  poczwszy od
	   certyfikatu	klienta/serwera,  a   skoczywszy   na	samopodpisanym
	   certyfikacie	gwnego CA.  Obsugiwane s pliki w formacie PEM lub P12.

	   Certyfikat  jest  konieczny,	aby uywa programu w trybie serwera.  W
	   trybie klienta certyfikat jest opcjonalny.

	   Jeeli uywany	jest silnik kryptograficzny,  to  opcja	 cert  pozwala
	   wybra identyfikator uywanego	certyfikatu.

       checkEmail = EMAIL
	   adres email podmiotu	przedstawionego	certyfikatu

	   Pojedyncza  sekcja  moe  zawiera  wiele  wystpie  opcji checkEmail.
	   Certyfikaty s akceptowane, jeeli  sekcja  nie  weryfikuje  podmiotu
	   certyfikatu,	albo adres email przedstawionego certyfikatu pasuje do
	   jednego z adresw email okrelonych przy pomocy checkEmail.

	   Opcja ta wymaga biblioteki OpenSSL w	wersji 1.0.2 lub nowszej.

       checkHost = NAZWA_SERWERA
	   nazwa serwera podmiotu przedstawionego certyfikatu

	   Pojedyncza  sekcja  moe  zawiera  wiele  wystpie  opcji  checkHost.
	   Certyfikaty s akceptowane, jeeli  sekcja  nie  weryfikuje  podmiotu
	   certyfikatu,	 albo nazwa serwera przedstawionego certyfikatu	pasuje
	   do jednego nazw okrelonych przy pomocy checkHost.

	   Opcja ta wymaga biblioteki OpenSSL w	wersji 1.0.2 lub nowszej.

       checkIP = IP
	   adres IP podmiotu przedstawionego certyfikatu

	   Pojedyncza  sekcja  moe  zawiera  wiele  wystpie   opcji   checkIP.
	   Certyfikaty	s  akceptowane,	 jeeli	sekcja nie weryfikuje podmiotu
	   certyfikatu,	albo adres IP przedstawionego  certyfikatu  pasuje  do
	   jednego z adresw IP okrelonych przy pomocy checkIP.

	   Opcja ta wymaga biblioteki OpenSSL w	wersji 1.0.2 lub nowszej.

       ciphers = LISTA_SZYFRW
	   lista dozwolonych szyfrw dla	protokow SSLv2,	SSLv3, TLSv1, TLSv1.1,
	   TLSv1.2

	   Ta opcja nie	wpywa na list parametrw	kryptograficznych dla protokou
	   TLSv1.3

	   Parametrem	tej  opcji  jest  lista	 szyfrw,  ktre	bd  uyte  przy
	   otwieraniu nowych pocze TLS,	np.:  DES-CBC3-SHA:IDEA-CBC-MD5

       ciphersuites = LISTA_PARAMETRW_KRYPTOGRAFICZNYCH
	   lista dozwolonych parametrw kryptograficznych dla protokou TLSv1.3

	   Parametrem  tej  opcji  s  listy  parametrw	 kryptograficznych   w
	   kolejnoci ich preferowania.

	   Poczwszy  od	 OpenSSL  3.0  opcja  ciphersuites  ignoruje  nieznane
	   szyfry.

	   Opcja ciphersuites jest dostpna poczwszy od OpenSSL 1.1.1.

	   domylnie:   TLS_CHACHA20_POLY1305_SHA256:   TLS_AES_256_GCM_SHA384:
	   TLS_AES_128_GCM_SHA256

       client =	yes | no
	   tryb	kliencki (zdalna usuga uywa TLS)

	   domylnie: no	(tryb serwerowy)

       config =	KOMENDA[:PARAMETR]
	   komenda konfiguracyjna OpenSSL

	   Komenda   konfiguracyjna   OpenSSL	zostaje	  wykonana  z  podanym
	   parametrem.	 Pozwala  to  na  wydawanie  komend   konfiguracyjnych
	   OpenSSL z pliku konfiguracyjnego stunnela.  Dostpne komendy opisane
	   s w podrczniku SSL_CONF_cmd(3ssl).

	   Moliwe  jest	wyspecyfikowanie wielu opcji OpenSSL przez wielokrotne
	   uycie komendy config.

	   Zamiast wycza config	= Curves:list_curves uyj opcji curves  w  celu
	   ustawienia krzywych eliptycznych.

	   Opcja ta wymaga biblioteki OpenSSL w	wersji 1.0.2 lub nowszej.

       connect = [HOST:]PORT
	   pocz	si ze zdalnym serwerem na podany port

	   Jeeli  nie  zosta  podany adres, stunnel domylnie czy si z lokalnym
	   serwerem.

	   Komenda  moe	 by  uyta  wielokrotnie	 w  pojedynczej	 sekcji	 celem
	   zapewnienia	wysokiej niezawodnoci lub rozoenia ruchu pomidzy wiele
	   serwerw.

       CRLpath = KATALOG_CRL
	   katalog List	Odwoanych Certyfikatw (CRL)

	   Opcja okrela	katalog, w ktrym stunnel bdzie szuka list CRL uywanych
	   przez opcje verifyChain i verifyPeer.  Pliki	 z  listami  CRL  musz
	   posiada  specjalne  nazwy  XXXXXXXX.r0,  gdzie XXXXXXXX jest	skrtem
	   listy CRL.

	   Funkcja  skrtu  zostaa  zmieniona  OpenSSL  1.0.0.	Naley	wykona
	   c_rehash przy zmianie OpenSSL 0.x.x na 1.x.x.

	   Jeeli  zdefiniowano	katalog	 chroot,  to  cieka  do	 CRLpath  jest
	   okrelona wzgldem tego katalogu.

       CRLfile = PLIK_CRL
	   plik	List Odwoanych Certyfikatw (CRL)

	   Opcja pozwala okreli	pooenie	pliku zawierajcego  listy  CRL	uywane
	   przez opcje verifyChain i verifyPeer.

       curves =	lista
	   krzywe ECDH odddzielone ':'

	   Wersje  OpenSSL  starsze  ni	 1.1.1	pozwalaj na uycie tylko	jednej
	   krzywej.

	   List	dostpnych krzywych mona	uzyska poleceniem:

	       openssl ecparam -list_curves

	   domylnie:

	       X25519:P-256:X448:P-521:P-384 (poczwszy od OpenSSL 1.1.1)

	       prime256v1 (OpenSSL starszy ni 1.1.1)

       logId = TYP
	   typ identyfikatora poczenia klienta

	   Identyfikator ten pozwala rozrni  wpisy  w  logu  wygenerowane  dla
	   poszczeglnych pocze.

	   Aktualnie wspierane typy:

	   sequential
	       Kolejny	 numer	 poczenia   jest  unikalny  jedynie  w	obrbie
	       pojedynczej instancji programu stunnel, ale bardzo krtki.  Jest
	       on szczeglnie uyteczny przy rcznej analizie logw.

	   unique
	       Ten rodzaj identyfikatora jest globalnie	unikalny, ale znacznie
	       duszy, ni kolejny numer poczenia.  Jest on szczeglnie  uyteczny
	       przy zautomatyzowanej analizie logw.

	   thread
	       Identyfikator  wtku  systemu operacyjnego nie jest ani unikalny
	       (nawet w	obrbie pojedynczej instancji  programu	stunnel),  ani
	       krtki.  Jest on szczeglnie uyteczny przy	diagnozowaniu problemw
	       z oprogramowaniem lub konfiguracj.

	   process
	       Identyfikator procesu (PID) moe by uyteczny w trybie inetd.

	   domylnie: sequential

       debug = POZIOM
	   szczegowo logowania

	   Poziom  logowania  mona okreli przy pomocy jednej z nazw lub	liczb:
	   emerg (0), alert (1), crit (2), err (3), warning (4),  notice  (5),
	   info	 (6) lub debug (7).  Zapisywane	s komunikaty o poziomie	niszym
	   (numerycznie) lub rwnym podanemu.  Do uzyskania najwyszego  poziomu
	   szczegowoci	mona  uy  opcji	debug =	debug lub debug	= 7.  Domylnym
	   poziomem jest notice	(5).

       delay = yes | no
	   opnij rozwinicie adresu DNS podanego	w opcji	connect

	   Opcja jest przydatna	przy dynamicznym DNS, albo gdy usuga  DNS  nie
	   jest	 dostpna  przy	starcie	programu stunnel (klient VPN, poczenie
	   wdzwaniane).

	   Opnione rozwijanie adresu DNS jest wczane automatycznie, jeeli  nie
	   powiedzie  si  rozwinicie  ktregokolwiek z adresw connect dla danej
	   usugi.

	   Opnione rozwijanie adresu automatycznie aktywuje failover = prio.

	   domylnie: no

       engineId	= NUMER_URZDZENIA
	   wybierz silnik kryptograficzny dla usugi

       engineNum = NUMER_URZDZENIA
	   wybierz silnik kryptograficzny dla usugi

	   Urzdzenia s numerowane od 1 w gr.

       exec = CIEKA_DO_PROGRAMU
	   wykonaj lokalny program przystosowany do pracy z superdemonem inetd

	   Jeeli zdefiniowano katalog chroot, to cieka do exec	jest  okrelona
	   wzgldem tego	katalogu.

	   Na  platformach  Unix  ustawiane  s	nastpujce zmienne rodowiskowe:
	   REMOTE_HOST,	REMOTE_PORT, SSL_CLIENT_DN, SSL_CLIENT_I_DN.

       execArgs	= $0 $1	$2 ...
	   argumenty do	opcji exec wcznie z nazw programu ($0)

	   Cytowanie nie jest wspierane	w obecnej wersji programu.   Argumenty
	   s rozdzielone dowoln	liczb biaych znakw.

       failover	= rr | prio
	   Strategia	wybierania   serwerw   wyspecyfikowanych   parametrami
	   "connect".

	   rr  round robin - sprawiedliwe rozoenie obcienia

	   prio
	       priority	- uyj kolejnoci	opcji w	pliku konfiguracyjnym

	   domylnie: prio

       ident = NAZWA_UYTKOWNIKA
	   weryfikuj nazw zdalnego uytkownika korzystajc z protokou IDENT (RFC
	   1413)

       include = KATALOG
	   wczytaj fragmenty plikw konfiguracyjnych z podanego katalogu

	   Pliki s wczytywane w	 rosncej  kolejnoci  alfabetycznej  ich	 nazw.
	   Rekomendowana konwencja nazewnictwa plikw

	   dla opcji globalnych:

		   00-global.conf

	   dla lokalnych opcji usug:

		   01-service.conf

		   02-service.conf

       key = PLIK_KLUCZA
	   klucz prywatny do certyfikatu podanego w opcji cert

	   Klucz   prywatny   jest  potrzebny  do  uwierzytelnienia  waciciela
	   certyfikatu.	 Poniewa powinien on by	zachowany w  tajemnicy,	 prawa
	   do  jego  odczytu  powinien mie wycznie waciciel pliku.  W systemie
	   Unix	mona to	osign komend:

	       chmod 600 keyfile

	   Jeeli uywany	jest silnik  kryptograficzny,  to  opcja  key  pozwala
	   wybra identyfikator uywanego	klucza prywatnego.

	   domylnie: warto opcji cert

       libwrap = yes | no
	   wcz lub wycz	korzystanie z /etc/hosts.allow i /etc/hosts.deny.

	   domylnie: no	(od wersji 5.00)

       local = HOST
	   IP rda do nawizywania zdalnych pocze

	   Domylnie  uywane jest IP najbardziej	zewntrznego interfejsu w stron
	   serwera, do ktrego nawizywane jest poczenie.

       OCSP = URL
	   responder OCSP do weryfikacji certyfikatu drugiej strony poczenia

       OCSPaia = yes | no
	   weryfikuj certyfikaty przy uyciu respondertw	AIA

	   Opcja OCSPaia pozwala  na  weryfikowanie  certyfikatw  przy	pomocy
	   listy   URLi	  responderw  OCSP  przesanych	w  rozszerzeniach  AIA
	   (Authority Information Access).

       OCSPflag	= FLAGA_OCSP
	   flaga respondera OCSP

	   Aktualnie wspierane	flagi:	NOCERTS,  NOINTERN,  NOSIGS,  NOCHAIN,
	   NOVERIFY,  NOEXPLICIT, NOCASIGN, NODELEGATED, NOCHECKS, TRUSTOTHER,
	   RESPID_KEY, NOTIME

	   Aby wyspecyfikowa kilka flag	naley uy OCSPflag wielokrotnie.

       OCSPnonce = yes | no
	   wysyaj i weryfikuj OCSP nonce

	   Opcja   OCSPnonce   zabezpiecza   protok   OCSP    przed    atakami
	   powtrzeniowymi.   Ze	wzgldu na zoono	obliczeniow rozszerzenie nonce
	   jest	zwykle wspierane jedynie przez wewntrzne (np. korporacyjne), a
	   nie przez publiczne respondery OCSP.

       OCSPrequire = yes | no
	   wymagaj  rozstrzygajcej odpowiedzi respondera OCSP

       OCSPrequire = yes | no
	   Wyczenie tej	opcji pozwala na zaakceptowanie	poczenia pomimo	 braku
	   otrzymania	rozstrzygajcej	 odpowiedzi   OCSP   ze	  staplingu  i
	   bezporedniego dania wysanego	do respondera.

	   default: yes

	   domylnie: yes

       options = OPCJE_SSL
	   opcje biblioteki OpenSSL

	   Parametrem	 jest	 nazwa	  opcji	   zgodnie    z	   opisem    w
	   SSL_CTX_set_options(3ssl),  ale  bez	 przedrostka SSL_OP_.  stunnel
	   -options wywietla opcje dozwolone w aktualnej  kombinacji  programu
	   stunnel i biblioteki	OpenSSL.

	   Aby wyspecyfikowa kilka opcji naley uy options wielokrotnie.	 Nazwa
	   opcji moe by	poprzedzona mylnikiem ("-") celem wyczenia opcji.

	   Na przykad, dla zachowania kompatybilnoci z bdami implementacji TLS
	   w programie Eudora, mona uy opcji:

	       options = DONT_INSERT_EMPTY_FRAGMENTS

	   domylnie:

	       options = NO_SSLv2
	       options = NO_SSLv3

	   Poczwszy  od	 OpenSSL 1.1.0,	zamiast	wycza okrelone wersje protokow
	   TLS uyj opcji sslVersionMax lub sslVersionMin.

       protocol	= PROTOK
	   negocjuj TLS	podanym	protokoem aplikacyjnym

	   Opcja  ta  wcza  wstpn  negocjacj  szyfrowania  TLS	dla  wybranego
	   protokou   aplikacyjnego.	Opcji	protocol   nie	naley  uywa  z
	   szyfrowaniem	TLS na osobnym porcie.

	   Aktualnie wspierane protokoy:

	   cifs
	       Nieudokumentowane rozszerzenie protokou	CIFS  wspierane	 przez
	       serwer  Samba.  Wsparcie	dla tego rozszerzenia zostao zarzucone
	       w wersji	3.0.0 serwera Samba.

	   capwin
	       Wsparcie	dla aplikacji http://www.capwin.org/

	   capwinctrl
	       Wsparcie	dla aplikacji http://www.capwin.org/

	       Ten protok jest wspierany wycznie w trybie klienckim.

	   connect
	       Negocjacja RFC 2817 - Upgrading to TLS Within HTTP/1.1, rozdzia
	       5.2 - Requesting	a Tunnel with CONNECT

	       Ten protok jest wspierany wycznie w trybie klienckim.

	   imap
	       Negocjacja RFC 2595 - Using TLS with IMAP, POP3 and ACAP

	   ldap
	       Negocjacja RFC 2830 -  Lightweight  Directory  Access  Protocol
	       (v3): Extension for Transport Layer Security

	   nntp
	       Negocjacja RFC 4642 - Using Transport Layer Security (TLS) with
	       Network News Transfer Protocol (NNTP)

	       Ten protok jest wspierany wycznie w trybie klienckim.

	   pgsql
	       Negocjacja
	       http://www.postgresql.org/docs/8.3/static/protocol-flow.html#AEN73982

	   pop3
	       Negocjacja RFC 2449 - POP3 Extension Mechanism

	   proxy
	       Przekazywanie  oryginalnego  IP	klienta	 przez	protok HAProxy
	       PROXY		    w		      wersji		     1
	       https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt

	   smtp
	       Negocjacja  RFC	2487  -	SMTP Service Extension for Secure SMTP
	       over TLS

	   socks
	       Wspierany jest protok SOCKS w wersjach 4, 4a i 5.  Protok SOCKS
	       enkapsulowany  jest  w  protokole  TLS,	 wic   adres   serwera
	       docelowego  nie	jest  widoczny	dla napastnika przechwytujcego
	       ruch sieciowy.

	       http://www.openssh.com/txt/socks4.protocol

	       http://www.openssh.com/txt/socks4a.protocol

	       Nie jest	wspierana komenda BIND protokou	SOCKS.	Przesana warto
	       parametru USERID	jest ignorowana.

	       Sekcja PRZYKADY zawiera przykadowe  pliki  konfiguracyjne  VPNa
	       zbudowanego w oparciu o szyfrowany protok SOCKS.

       protocolAuthentication =	UWIERZYTELNIENIE
	   rodzaj uwierzytelnienia do negocjacji protokou

	   Opcja  ta jest wpierana wycznie w klienckich	protokoach 'connect' i
	   'smtp'.

	   W protokole 'connect' wspierane jest	uwierzytelnienie 'basic'  oraz
	   'ntlm'.  Domylnym rodzajem uwierzytelnienia protokou	'connect' jest
	   'basic'.

	   W  protokole	 'smtp'	 wspierane  jest uwierzytelnienie 'plain' oraz
	   'login'.  Domylnym rodzajem uwierzytelnienia	protokou  'smtp'  jest
	   'plain'.

       protocolDomain =	DOMENA
	   domena do negocjacji	protokou

	   W   obecnej	wersji	opcja  ma  zastosowanie	 wycznie  w  protokole
	   'connect'.

       protocolHeader =	NAGWEK
	   nagwek do negocjacji	protokou

	   W  obecnej  wersji  opcja  ma  zastosowanie	wycznie	 w   protokole
	   'connect'.

       protocolHost = ADRES
	   adres hosta do negocjacji protokou

	   Dla protokou	'connect', protocolHost	okrela docelowy	serwer TLS, do
	   ktrego  poczy  ma  si proxy.	 Adres serwera proxy, do ktrego	czy si
	   stunnel, musi by okrelony przy pomocy opcji connect.

	   Dla protokou	'smtp',	protocolHost okrela warto HELO/EHLO  wysyanego
	   przy	negocjacji klienta.

       protocolPassword	= HASO
	   haso	do negocjacji protokou

	   Opcja ta jest wspierana wycznie w klienckich	protokoach 'connect' i
	   'smtp'.

       protocolUsername	= UYTKOWNIK
	   nazwa uytkownika do negocjacji protokou

	   Opcja ta jest wspierana wycznie w klienckich	protokoach 'connect' i
	   'smtp'.

       PSKidentity = TOSAMO
	   tosamo klienta PSK

	   PSKidentity	moe  zosta  uyte  w  sekcjach  klienckich  do wybrania
	   tosamoci uytej do uwierzytelnienia PSK.  Opcja  jest	 ignorowana  w
	   sekcjach serwerowych.

	   domylnie: pierwsza tosamo zdefiniowana w pliku PSKsecrets

       PSKsecrets = PLIK
	   plik	z tosamociami i	kluczami PSK

	   Kada	linia pliku jest w nastpujcym formacie:

	       TOSAMO:KLUCZ

	   Szesnastkowe	  klucze   s  automatycznie  konwertowane  do  postaci
	   binarnej.  Klucz musi by mie	przynajmniej 16	bajtw, co w  przypadku
	   kluczy  szesnastkowych przekada si na przynajmniej 32 znaki.	 Naley
	   ograniczy dostp do czytania lub pisania do tego pliku.

       pty = yes | no (tylko Unix)
	   alokuj pseudo-terminal dla programu uruchamianego w opcji 'exec'

       redirect	= [HOST:]PORT
	   przekieruj klienta, ktremu nie udao si poprawnie uwierzytelni  przy
	   pomocy certyfikatu

	   Opcja  dziaa	wycznie	w trybie serwera.  Cz negocjacji protokow jest
	   niekompatybilna z opcj redirect.

       renegotiation = yes | no
	   pozwalaj na renegocjacj TLS

	   Zastosowania	 renegocjacji	TLS   zawieraj	 niektre   scenariusze
	   uwierzytelniania oraz renegocjacj kluczy dla	dugotrwaych pocze.

	   Z  drugiej  strony  wasno  na  moe uatwi trywialny atak DoS poprzez
	   wygenerowanie obcienia procesora:

	   http://vincent.bernat.im/en/blog/2011-ssl-dos-mitigation.html

	   Warto zauway, e zablokowanie	renegocjacji  TLS  nie	zabezpiecza  w
	   peni	przed opisanym problemem.

	   domylnie: yes (o ile	wspierane przez	OpenSSL)

       reset = yes | no
	   sygnalizuj wystpienie bdu przy pomocy flagi TCP RST

	   Opcja nie jest wspierana na niektrych platformach.

	   domylnie: yes

       retry = yes | no	| OPNIENIE
	   pocz	ponownie sekcj connect+exec po rozczeniu

	   Warto  parametru OPNIENIE okrela liczb milisekund oczekiwania przed
	   wykonaniem ponownego	poczenia.  "retry = yes"  jest	synonimem  dla
	   "retry = 1000".

	   domylnie: no

       securityLevel = POZIOM
	   ustaw poziom	bezpieczestwa

	   Znaczenie kadego poziomu opisano poniej:

	   poziom 0
	       Wszystko	jest dozwolone.

	   poziom 1
	       Poziom bezpieczestwa zapewniajcy	minimum	80 bitw	bezpieczestwa.
	       adne  parametry	kryptograficzne	 oferujce poziom bezpieczestwa
	       poniej 80 bitw nie mog zosta uyte. W zwizku z tym RSA, DSA oraz
	       klucze DH krtsze	ni 1024	bity, a	take klucze ECC	krtsze ni  160
	       bitw  i	wszystkie  eksportowe  zestawy	szyfrw s niedozwolone.
	       Uycie  SSLv2  jest   zabronione.	  Wszelkie   listy   parametrw
	       kryptograficznych  uywajce MD5 do MAC s zabronione. Poczwszy od
	       OpenSSL 3.0 wersje TLS starsze ni 1.2 s wyczone.

	   poziom 2
	       Poziom bezpieczestwa  zapewniajcy  112  bitw  bezpieczestwa.  W
	       zwizku  z  tym  RSA,  DSA oraz klucze DH	krtsze ni 2048 bitw, a
	       take klucze ECC krtsze ni 224 bity s niedozwolone. Oprcz	 wycze
	       z  poziomu  1 zabronione	jest take korzystanie z	zestaww	szyfrw
	       uywajcych  RC4.	Kompresja  jest	 wyczona.  Uycie  SSLv3	  jest
	       zabronione dla wersji OpenSSL starszych ni 3.0.

	   poziom 3
	       Poziom  bezpieczestwa  zapewniajcy  128	bitw  bezpieczestwa. W
	       zwizku z	tym RSA, DSA oraz klucze DH krtsze  ni	3072  bity,  a
	       take  klucze ECC	krtsze ni 256 bitw s niedozwolone. Oprcz wycze
	       z poziomu 2 zabronione jest take	korzystanie z  zestaww	szyfrw
	       nie zapewniajcych utajniania z wyprzedzeniem (forward secrecy).
	       Bilety  sesji s wyczone.	Wersje TLS starsze ni 1.1 s zabronione
	       dla wersji OpenSSL starszych ni 3.0.

	   poziom 4
	       Poziom bezpieczestwa  zapewniajcy  192  bity  bezpieczestwa.  W
	       zwizku  z  tym  RSA,  DSA oraz klucze DH	krtsze ni 7680 bitw, a
	       take klucze ECC	krtsze	ni  384	 bity  s  niedozwolone.	 Listy
	       parametrw kryptograficznych uywajcych SHA1 do MAC s zabronione.
	       Wersje  TLS  starsze  ni	 1.2  s	 zabronione dla	wersji OpenSSL
	       starszych ni 3.0.

	   poziom 5
	       Poziom bezpieczestwa  zapewniajcy  256  bitw  bezpieczestwa.  W
	       zwizku  z  tym  RSA, DSA	oraz klucze DH krtsze ni 15360 bitw, a
	       take klucze ECC krtsze ni 512 bitw s niedozwolone.

	   domylnie: 2

	   Opcja securityLevel jest dostpna poczwszy od	OpenSSL	1.1.0.

       requireCert = yes | no
	   wymagaj certyfikatu klienta dla verifyChain lub verifyPeer

	   Przy	opcji requireCert ustawionej na	no, stunnel akceptuje poczenia
	   klientw, ktre nie wysay certyfikatu.

	   Zarwno verifyChain =	yes  jak  i  verifyPeer	 =  yes	 automatycznie
	   ustawiaj requireCert	na yes.

	   domylnie: no

       setgid =	IDENTYFIKATOR_GRUPY (tylko Unix)
	   identyfikator grupy Unix

	   Jako	opcja globalna:	grupa, z ktrej prawami pracowa bdzie stunnel.

	   Jako	 opcja usugi: grupa gniazda Unix utworzonego przy pomocy opcji
	   "accept".

       setuid =	IDENTYFIKATOR_UYTKOWNIKA (tylko	Unix)
	   identyfikator uytkownika Unix

	   Jako	opcja globalna:	uytkownik,  z  ktrego  prawami	pracowa	 bdzie
	   stunnel.

	   Jako	 opcja	usugi:	waciciel  gniazda Unix utworzonego przy	pomocy
	   opcji "accept".

       sessionCacheSize	= LICZBA_POZYCJI_CACHE
	   rozmiar pamici podrcznej sesji TLS

	   Parametr okrela maksymaln liczb pozycji wewntrznej pamici podrcznej
	   sesji.

	   Warto 0 oznacza brak	ograniczenia rozmiaru.	Nie jest  to  zalecane
	   dla	systemw	 produkcyjnych	z  uwagi  na  ryzyko  ataku  DoS przez
	   wyczerpanie pamici RAM.

       sessionCacheTimeout = LICZBA_SEKUND
	   przeterminowanie pamici podrcznej sesji TLS

	   Parametr okrela czas	w  sekundach,  po  ktrym  sesja	 TLS  zostanie
	   usunita z pamici podrcznej.

       sessionResume = yes | no
	   zezwalaj lub	nie zezwalaj na	wznawianie sesji

	   domylnie: yes

       sessiond	= HOST:PORT
	   adres sessiond - serwera cache sesji	TLS

       sni = NAZWA_USUGI:WZORZEC_NAZWY_SERWERA (tryb serwera)
	   Uyj usugi jako podrzdnej (virtualnego serwera) dla rozszerzenia TLS
	   Server Name Indication (RFC 3546).

	   NAZWA_USUGI wskazuje	usug nadrzdn, ktra odbiera poczenia od klientw
	   przy	 pomocy	 opcji	accept.	  WZORZEC_NAZWY_SERWERA	 wskazuje nazw
	   serwera wirtualnego.	 Wzorzec  moe  zaczyna	si  znakiem  '*',  np.
	   '*.example.com".   Z	 pojedyncz  usug  nadrzdn powizane jest	zwykle
	   wiele usug podrzdnych.  Opcja sni moe by rwnie uyta wielokrotnie  w
	   ramach jednej usugi podrzdnej.

	   Zarwno  usuga  nadrzdna  jak	i podrzdna nie moe by skonfigurowana w
	   trybie klienckim.

	   Opcja connect usugi podrzdnej jest ignorowana  w  poczeniu  z  opcj
	   protocol,  gdy  poczenie  do	 zdalnego  serwera  jest w tym wypadku
	   nawizywane przed negocjacj TLS.

	   Uwierzytelnienie przy pomocy	biblioteki  libwrap  jest  realizowane
	   dwukrotnie: najpierw	dla usugi nadrzdnej po odebraniu poczenia TCP,
	   a nastpnie dla usugi	podrzdnej podczas negocjacji TLS.

	   Opcja sni jest dostpna poczwszy od OpenSSL 1.0.0.

       sni = NAZWA_SERWERA (tryb klienta)
	   Uyj	parametru jako wartoci rozszerzenia TLS	Server Name Indication
	   (RFC	3546).

	   Pusta warto parametru  NAZWA_SERWERA	 wycza	wysyanie  rozszerzenia
	   SNI.

	   Opcja sni jest dostpna poczwszy od OpenSSL 1.0.0.

       socket =	a|l|r:OPCJA=WARTO[:WARTO]
	   ustaw opcj na akceptujcym/lokalnym/zdalnym gniedzie

	   Dla opcji linger wartoci maj	posta l_onof:l_linger.	Dla opcji time
	   wartoci maj posta tv_sec:tv_usec.

	   Przykady:

	       socket =	l:SO_LINGER=1:60
		   ustaw jednominutowe przeterminowanie
		   przy	zamykaniu lokalnego gniazda
	       socket =	r:SO_OOBINLINE=yes
		   umie	dane pozapasmowe (out-of-band)
		   bezporednio w strumieniu danych
		   wejciowych dla zdalnych gniazd
	       socket =	a:SO_REUSEADDR=no
		   zablokuj ponowne uywanie portu
		   (domylnie wczone)
	       socket =	a:SO_BINDTODEVICE=lo
		   przyjmuj poczenia wycznie na
		   interfejsie zwrotnym	(ang. loopback)

       sslVersion = WERSJA_SSL
	   wersja protokou TLS

	   Wspierane  wersje:  all,  SSLv2,  SSLv3,  TLSv1,  TLSv1.1, TLSv1.2,
	   TLSv1.3

	   Dostpno  konkretnych	 protokow  zaley  od  uytej  wersji   OpenSSL.
	   Starsze  wersje  OpenSSL  nie  wspieraj  TLSv1.1, TLSv1.2, TLSv1.3.
	   Nowsze wersje OpenSSL nie wspieraj SSLv2.

	   Przestarzae protokoy	SSLv2 i	SSLv3 s	domylnie wyczone.

	   Poczwszy od OpenSSL 1.1.0, ustawienie

	       sslVersion = WERSJA_SSL

	   jest	rwnowane opcjom

	       sslVersionMax = WERSJA_SSL
	       sslVersionMin = WERSJA_SSL

       sslVersionMax = WERSJA_SSL
	   maksymalna wspierana	wersja protokou	TLS

	   Wspierane wersje: all, SSLv3, TLSv1,	TLSv1.1, TLSv1.2, TLSv1.3

	   all	wcza  wszystkie	 wersje	 protokow  a  do  maksymalnej	wersji
	   wspieranej przez bibliotek uytej wersji OpenSSL.

	   Dostpno konkretnych protokow	zaley od uytej wersji OpenSSL.

	   Opcja sslVersionMax jest dostpna poczwszy od	OpenSSL	1.1.0.

	   domylnie: all

       sslVersionMin = WERSJA_SSL
	   minimalna wspierana wersja protokou TLS

	   Wspierane wersje: all, SSLv3, TLSv1,	TLSv1.1, TLSv1.2, TLSv1.3

	   all	 wcza	wszystkie  wersje  protokow  a	do  minimalnej	wersji
	   wspieranej przez bibliotek uytej wersji OpenSSL.

	   Dostpno konkretnych protokow	zaley od uytej wersji OpenSSL.

	   Opcja sslVersionMin jest dostpna poczwszy od	OpenSSL	1.1.0.

	   domylnie: TLSv1

       stack = LICZBA_BAJTW (z wyjtkiem	modelu FORK)
	   rozmiar stosu procesora tworzonych wtkw

	   Zbyt	duy stos zwiksza zuycie	pamici wirtualnej.  Zbyt may stos  moe
	   powodowa problemy ze	stabilnoci aplikacji.

	   domylnie: 65536 bytes (wystarczajcy dla testowanych platform)

       ticketKeySecret = SECRET
	   szesnastkowy	 klucz	symetryczny uywany przez serwer	do zapewnienia
	   poufnoci biletw sesji

	   Bilety sesji	zdefiniowane w	RFC  5077  zapewniaj  ulepszon	moliwo
	   wznawiania  sesji,  w ktrej implementacja serwera nie jest wymagana
	   do utrzymania stanu sesji.

	   czne	 uycie	opcji  ticketKeySecret	i   ticketMacSecret   umoliwia
	   wznawianie  sesji  na  klastrze  serwerw  lub  wznowienie  sesji po
	   restarcie serwera.

	   Klucz musi mie rozmiar 16 lub 32 bajtw, co przekada si na  dokadnie
	   32  lub 64 cyfry szesnastkowe. Poszczeglne bajty mog	by opcjonalnie
	   oddzielone dwukropkami.

	   Opcja dziaa wycznie w trybie	serwera.

	   Opcja ticketKeySecret jest dostpna poczwszy od OpenSSL 1.0.0.

	   Wyczenie opcji NO_TICKET jest wymagane dla obsugi  biletw  sesji  w
	   OpenSSL-u  starszym	ni  1.1.1, ale opcja ta	jest niekompatybilna z
	   opcj	redirect.

       ticketMacSecret = SECRET
	   szesnastkowy	klucz  symetryczny  uywany  przez  serwer  zapewnienia
	   integralnoci	biletw sesji

	   Klucz  musi mie rozmiar 16 lub 32 bajtw, co przekada	si na dokadnie
	   32 lub 64 cyfry szesnastkowe. Poszczeglne bajty mog by  opcjonalnie
	   oddzielone dwukropkami.

	   Opcja dziaa wycznie w trybie	serwera.

	   Opcja ticketMacSecret jest dostpna poczwszy od OpenSSL 1.0.0.

       TIMEOUTbusy = LICZBA_SEKUND
	   czas	oczekiwania na spodziewane dane

       TIMEOUTclose = LICZBA_SEKUND
	   czas	 oczekiwania  na close_notify (ustaw na	0, jeeli klientem jest
	   MSIE)

       TIMEOUTconnect =	LICZBA_SEKUND
	   czas	oczekiwania na nawizanie poczenia

       TIMEOUTidle = LICZBA_SEKUND
	   maksymalny czas utrzymywania	bezczynnego poczenia

       TIMEOUTocsp = LICZBA_SEKUND
	   czas	oczekiwania na nawizanie poczenia z serwerem OCSP

       transparent = none | source | destination | both	(tylko Unix)
	   tryb	przezroczystego	proxy na wspieranych platformach

	   Wspierane wartoci:

	   none
	       Zablokuj	wsparcie dla przezroczystego  proxy.   Jest  to	 warto
	       domylna.

	   source
	       Przepisz	 adres,	 aby  nawizywane  poczenie wydawao si pochodzi
	       bezporednio od klienta, a nie od	programu stunnel.

	       Opcja jest aktualnie obsugiwana w:

	       Trybie zdalnym (opcja connect) w	systemie Linux >=2.6.28
		   Konfiguracja	 wymaga	 nastpujcych  ustawie  iptables	  oraz
		   routingu    (na   przykad   w   pliku   /etc/rc.local   lub
		   analogicznym):

		       iptables	-t mangle -N DIVERT
		       iptables	-t mangle -A PREROUTING	-p tcp -m socket -j DIVERT
		       iptables	-t mangle -A DIVERT -j MARK --set-mark 1
		       iptables	-t mangle -A DIVERT -j ACCEPT
		       ip rule add fwmark 1 lookup 100
		       ip route	add local 0.0.0.0/0 dev	lo table 100
		       echo 0 >/proc/sys/net/ipv4/conf/lo/rp_filter

		   Konfiguracja	ta wymaga, aby stunnel by wykonywany jako root
		   i bez opcji setuid.

	       Trybie zdalnym (opcja connect) w	systemie Linux 2.2.x
		   Konfiguracja	 ta   wymaga   skompilowania   jdra   z	  opcj
		   transparent	proxy.	 Docelowa usuga	musi by	umieszczona na
		   osobnej maszynie, do	ktrej routing kierowany	 jest  poprzez
		   serwer stunnela.

		   Dodatkowo  stunnel  powinien	 by wykonywany jako root i bez
		   opcji setuid.

	       Trybie zdalnym (opcja connect) w	systemie FreeBSD >=8.0
		   Konfiguracja	 ta   wymaga   skonfigurowania	 firewalla   i
		   routingu.  stunnel musi by wykonywany jako root i bez opcji
		   setuid.

	       Trybie lokalnym (opcja exec)
		   Konfiguracja	 ta  jest  realizowana	przy pomocy biblioteki
		   libstunnel.so.   Do	zaadowania  biblioteki	wykorzystywana
		   jest	 zmienna rodowiskowa _RLD_LIST na platformie Tru64 lub
		   LD_PRELOAD na innych	platformach.

	   destination
	       Oryginalny adres	docelowy jest uywany zamiast opcji connect.

	       Przykadowa konfiguracja przezroczystego adresu docelowego:

		   [transparent]
		   client = yes
		   accept = <port_stunnela>
		   transparent = destination

	       Konfiguracja  wymaga  ustawie  iptables,	 na  przykad  w	 pliku
	       /etc/rc.local lub analogicznym.

	       W przypadku docelowej usugi umieszczonej	na tej samej maszynie:

		   /sbin/iptables -t nat -I OUTPUT -p tcp --dport <port_przekierowany> \
		       -m ! --uid-owner	<identyfikator_uytkownika_stunnela> \
		       -j DNAT --to-destination	<lokalne_ip>:<lokalny_port>

	       W przypadku docelowej usugi umieszczonej	na zdalnej maszynie:

		   /sbin/iptables -I INPUT -i eth0 -p tcp --dport <port_stunnela> -j ACCEPT
		   /sbin/iptables -t nat -I PREROUTING -p tcp --dport <port_przekierowany> \
		       -i eth0 -j DNAT --to-destination	<lokalne_ip>:<port_stunnela>

	       Przezroczysty adres docelowy jest aktualnie wspierany wycznie w
	       systemie	Linux.

	   both
	       Uyj  przezroczystego  proxy  zarwno  dla	 adresu	 rdowego jak i
	       docelowego.

	   Dla zapewnienia kompatybilnoci z wczeniejszymi wersjami wspierane s
	   dwie	dodatkowe opcje:

	   yes Opcja zostaa przemianowana na source.

	   no  Opcja zostaa przemianowana na none.

       verify =	POZIOM
	   weryfikuj certyfikat	drugiej	strony poczenia

	   Opcja ta jest przestarzaa i naley j zastpi przez opcje  verifyChain
	   i verifyPeer.

	   poziom 0
	       zarzdaj certyfikatu i zignoruj go

	   poziom 1
	       weryfikuj, jeeli	zosta przedstawiony

	   poziom 2
	       weryfikuj z zainstalowanym certyfikatem Centrum Certyfikacji

	   poziom 3
	       weryfikuj z lokalnie zainstalowanym certyfikatem	drugiej	strony

	   poziom 4
	       weryfikuj z certyfikatem	drugiej	strony ignorujc	acuch CA

	   domylnie
	       nie weryfikuj

       verifyChain = yes | no
	   weryfikuj acuch certyfikatw drugiej strony

	   Do  weryfikacji certyfikatu serwera kluczowe	jest, aby wymaga rwnie
	   konkretnego certyfikatu przy	pomocy checkHost lub checkIP.

	   Samopodpisany certyfikat gwnego  CA	naley  umieci	albo  w	 pliku
	   podanym w opcji CAfile, albo	w katalogu podanym w opcji CApath.

	   domylnie: no

       verifyPeer = yes	| no
	   weryfikuj certyfikat	drugiej	strony

	   Certyfikat  drugiej	strony	naley  umieci	albo w pliku podanym w
	   opcji CAfile, albo w	katalogu podanym w opcji CApath.

	   domylnie: no

ZWRACANA WARTO
       stunnel zwraca zero w przypadku sukcesu,	lub warto niezerow w przypadku
       bdu.

SIGNAY
       Nastpujce sygnay	mog by uyte do sterowania programem w systemie Unix:

       SIGHUP
	   Zaaduj ponownie plik	konfiguracyjny.

	   Niektre globalne opcje nie bd przeadowane:

	      chroot

	      foreground

	      pid

	      setgid

	      setuid

	   Jeeli wykorzystywana	jest  opcja  'setuid'  stunnel	nie  bdzie  mg
	   zaadowa   ponownie	konfiguracji   wykorzystujcej  uprzywilejowane
	   (<1024) porty.

	   Jeeli  wykorzystywana  jest	opcja  'chroot'	 stunnel  bdzie	 szuka
	   wszystkich  potrzebnych  plikw  (cznie  z  plikiem konfiguracyjnym,
	   certyfikatami, logiem i plikiem pid)	 wewntrz  katalogu  wskazanego
	   przez 'chroot'.

       SIGUSR1
	   Zamknij i otwrz ponownie log.  Funkcja ta moe zosta uyta w skrypcie
	   rotujcym log	programu stunnel.

       SIGUSR2
	   Zapisz w logu list aktywnych	pocze.

       SIGTERM,	SIGQUIT, SIGINT
	   Zakocz dziaanie programu.

       Skutek wysania innych sygnaw jest niezdefiniowany.

PRZYKADY
       Szyfrowanie pocze do lokalnego serwera imapd mona uy:

	   [imapd]
	   accept = 993
	   exec	= /usr/sbin/imapd
	   execArgs = imapd

       albo w trybie zdalnym:

	   [imapd]
	   accept = 993
	   connect = 143

       Aby  umoliwi  lokalnemu	klientowi  poczty elektronicznej korzystanie z
       serwera imapd przez TLS naley skonfigurowa pobieranie poczty  z	adresu
       localhost i portu 119, oraz uy nastpujcej konfiguracji:

	   [imap]
	   client = yes
	   accept = 143
	   connect = serwer:993

       W  poczeniu  z  programem  pppd stunnel pozwala zestawi prosty VPN.  Po
       stronie serwera nasuchujcego  na	 porcie	 2020  jego  konfiguracja  moe
       wyglda nastpujco:

	   [vpn]
	   accept = 2020
	   exec	= /usr/sbin/pppd
	   execArgs = pppd local
	   pty = yes

       Poniszy	 plik  konfiguracyjny  moe  by	wykorzystany  do  uruchomienia
       programu	 stunnel  w  trybie  inetd.    Warto   zauway,	 e   w	 pliku
       konfiguracyjnym nie ma sekcji [nazwa_usugi].

	   exec	= /usr/sbin/imapd
	   execArgs = imapd

       Aby skonfigurowa	VPN mona uy nastpujcej konfiguracji klienta:

	   [socks_client]
	   client = yes
	   accept = 127.0.0.1:1080
	   connect = vpn_server:9080
	   verifyPeer =	yes
	   CAfile = stunnel.pem

       Odpowiadajca jej	konfiguracja serwera vpn_server:

	   [socks_server]
	   protocol = socks
	   accept = 9080
	   cert	= stunnel.pem
	   key = stunnel.key

       Do przetestowania konfiguracji mona wyda	na maszynie klienckiej komend:

	   curl	--socks4a localhost http://www.example.com/

       Przykadowa konfiguracja serwera SNI:

	   [virtual]
	   ; usuga nadrzdna
	   accept = 443
	   cert	=  default.pem
	   connect = default.internal.mydomain.com:8080

	   [sni1]
	   ; usuga podrzdna 1
	   sni = virtual:server1.mydomain.com
	   cert	= server1.pem
	   connect = server1.internal.mydomain.com:8081

	   [sni2]
	   ; usuga podrzdna 2
	   sni = virtual:server2.mydomain.com
	   cert	= server2.pem
	   connect = server2.internal.mydomain.com:8082
	   verifyPeer =	yes
	   CAfile = server2-allowed-clients.pem

       Przykadowa  konfiguracja	 umoliwiajca  uwierzytelnienie z uyciem	klucza
       prywatnego przechowywanego w Windows Certificate	Store (tylko Windows):

	   engine = capi

	   [service]
	   engineId = capi
	   client = yes
	   accept = 127.0.0.1:8080
	   connect = example.com:8443

       W przypadku uycia silnika CAPI, nie naley ustawia opcji cert, gdy klucz
       klienta zostanie	automatycznie pobrany z	Certificate Store na podstawie
       zaufanych certyfikatw CA	przedstawionych	przez serwer.

       Przykadowa  konfiguracja	 umoliwiajca  uycie   certyfikatu   i	klucza
       prywatnego z urzdzenia obsugiwanego przez silnik	pkcs11:

	   engine = pkcs11
	   engineCtrl =	MODULE_PATH:opensc-pkcs11.so
	   engineCtrl =	PIN:123456

	   [service]
	   engineId = pkcs11
	   client = yes
	   accept = 127.0.0.1:8080
	   connect = example.com:843
	   cert	= pkcs11:token=MyToken;object=MyCert
	   key = pkcs11:token=MyToken;object=MyKey

       Przykadowa   konfiguracja   umoliwiajca	 uycie	certyfikatu  i	klucza
       prywatnego umieszczonego	na tokenie SoftHSM:

	   engine = pkcs11
	   engineCtrl =	MODULE_PATH:softhsm2.dll
	   engineCtrl =	PIN:12345

	   [service]
	   engineId = pkcs11
	   client = yes
	   accept = 127.0.0.1:8080
	   connect = example.com:843
	   cert	= pkcs11:token=MyToken;object=KeyCert

NOTKI
   OGRANICZENIA
       stunnel nie moe by uywany  do  szyfrowania  protokou  FTP,  poniewa  do
       przesyania poszczeglnych	plikw uywa on dodatkowych pocze	otwieranych na
       portach	 o   dynamicznie   przydzielanych  numerach.   Istniej	jednak
       specjalne wersje	 klientw  i  serwerw  FTP  pozwalajce  na  szyfrowanie
       przesyanych danych przy pomocy protokou TLS.

   TRYB	INETD (tylko Unix)
       W wikszoci zastosowa stunnel samodzielnie nasuchuje na porcie podanym w
       pliku  konfiguracyjnym i	tworzy poczenie	z innym	portem podanym w opcji
       connect lub nowym programem podanym w opcji exec.  Niektrzy wol	jednak
       wykorzystywa   oddzielny	  program,  ktry  odbiera  poczenia,  po  czym
       uruchamia program stunnel.  Przykadami takich programw s	inetd,	xinetd
       i tcpserver.

       Przykadowa linia	pliku /etc/inetd.conf moe wyglda tak:

	   imaps stream	tcp nowait root	/usr/local/bin/stunnel
	       stunnel /usr/local/etc/stunnel/imaps.conf

       Poniewa	w  takich  przypadkach poczenie	na zdefiniowanym porcie	(tutaj
       imaps) nawizuje osobny program (tutaj  inetd),  stunnel	nie  moe  uywa
       opcji  accept.	W  pliku konfiguracyjnym nie moe by rwnie zdefiniowana
       adna  usuga  ([nazwa_usugi]),  poniewa  konfiguracja  taka  pozwala  na
       nawizanie  tylko	 jednego  poczenia.   Wszystkie	 OPCJE USUG powinny by
       umieszczone razem z opcjami globalnymi.	 Przykad  takiej  konfiguracji
       znajduje	si w sekcji PRZYKADY.

   CERTYFIKATY
       Protok  TLS wymaga, aby kady serwer przedstawia si nawizujcemu poczenie
       klientowi  prawidowym  certyfikatem  X.509.    Potwierdzenie   tosamoci
       serwera	polega	na  wykazaniu, e posiada on odpowiadajcy certyfikatowi
       klucz  prywatny.	   Najprostsz	metod	uzyskania   certyfikatu	  jest
       wygenerowanie go	przy pomocy wolnego pakietu OpenSSL.  Wicej informacji
       na  temat  generowania  certyfikatw  mona znale na umieszczonych	poniej
       stronach.

       Plik .pem powinien zawiera klucz	 prywatny  oraz	 podpisany  certyfikat
       (nie danie certyfikatu).	 Otrzymany plik	powinien mie nastpujc posta:

	   -----BEGIN RSA PRIVATE KEY-----
	   [zakodowany klucz]
	   -----END RSA	PRIVATE	KEY-----
	   -----BEGIN CERTIFICATE-----
	   [zakodowany certyfikat]
	   -----END CERTIFICATE-----

   LOSOWO
       stunnel	potrzebuje  zainicjowa	PRNG (generator	liczb pseudolosowych),
       gdy protok TLS wymaga do	 bezpieczestwa	kryptograficznego  rda	dobrej
       losowoci.    Nastpujce	rda  s	kolejno	 odczytywane  a	 do  uzyskania
       wystarczajcej iloci entropii:

          Zawarto pliku podanego w opcji RNDfile.

          Zawarto pliku o nazwie okrelonej przez zmienn rodowiskow  RANDFILE,
	   o ile jest ona ustawiona.

          Plik	 .rnd umieszczony w katalogu domowym uytkownika, jeeli zmienna
	   RANDFILE nie	jest ustawiona.

          Plik	podany w opcji '--with-random' w czasie	konfiguracji programu.

          Zawarto ekranu w systemie Windows.

          Gniazdo egd,	jeeli uyta zostaa opcja	EGD.

          Gniazdo  egd	 podane	  w   opcji   '--with-egd-socket'   w	czasie
	   konfiguracji	programu.

          Urzdzenie /dev/urandom.

       Warto  zwrci uwag, e na maszynach z systemem Windows, na	ktrych konsoli
       nie pracuje uytkownik, zawarto ekranu nie  jest	wystarczajco  zmienna,
       aby  zainicjowa	PRNG.	W  takim przypadku do zainicjowania generatora
       naley uy	opcji RNDfile.

       Plik RNDfile powinien zawiera dane losowe --  rwnie  w  tym  sensie,  e
       powinny	by  one	 inne przy kadym uruchomieniu programu stunnel.	 O ile
       nie uyta	zostaa opcja RNDoverwrite jest to robione  automatycznie.   Do
       rcznego	uzyskania  takiego  pliku uyteczna moe by komenda openssl rand
       dostarczana ze wspczesnymi wersjami pakietu OpenSSL.

       Jeszcze jedna  istotna  informacja  --  jeeli  dostpne  jest  urzdzenie
       /dev/urandom biblioteka OpenSSL ma zwyczaj zasilania nim	PRNG w trakcie
       sprawdzania  stanu generatora.  W systemach z /dev/urandom urzdzenie to
       bdzie najprawdopodobniej	uyte, pomimo  e	 znajduje  si  na  samym  kocu
       powyszej	 listy.	  Jest	to  waciwo  biblioteki OpenSSL,	a nie programu
       stunnel.

   PARAMETRY DH
       Poczwszy	od wersji 4.40 stunnel zawiera w kodzie	 programu  2048-bitowe
       parametry  DH.	Od  wersji  5.18  te  pocztkowe	wartoci	parametrw DH s
       wymieniane   na	 automatycznie	 generowane   parametry	   tymczasowe.
       Wygenerowanie parametrw DH moe zaj nawet	wiele minut.

       Alternatywnie parametry DH mona umieci w	pliku razem z certyfikatem, co
       wycza generowanie parametrw tymczasowych:

	   openssl dhparam 2048	>> stunnel.pem

PLIKI
       @sysconfdir@/stunnel/stunnel.conf
	   plik	konfiguracyjny programu

BDY
       Opcja execArgs oraz linia komend	Win32 nie obsuguje cytowania.

ZOBACZ RWNIE
       tcpd(8)
	   biblioteka kontroli dostpu do usug internetowych

       inetd(8)
	   'super-serwer' internetowy

       http://www.stunnel.org/
	   strona domowa programu stunnel

       http://www.openssl.org/
	   strona projektu OpenSSL

AUTOR
       Micha Trojnara
	   <Michal.Trojnara@stunnel.org>

5.74				  2024.10.09			    stunnel(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=stunnel.pl&sektion=8&manpath=FreeBSD+Ports+14.3.quarterly>

home | help