Xinetd - o alternativă la inetd tradiționale de super-server. pornire și oprire de control al procesului de servere de rețea, care nu trebuie să fie în stare proastă constantă. Xinetd nu este doar un înlocuitor, el poate face mult mai mult decât un început simplu și a opri demonii ca răspuns la TCP intrare și conexiuni UDP. Cel mai important avantaj este excelent configurabilitate sale xientd, inclusiv liste de acces (ACL) de control, limita de viteză, controale de acces bazate pe timp și fluxurile de redirecționare.

Pachetele cu xinetd sunt prezente în aproape toate distribuțiile Linux populare, deci ar trebui să-l instalați ușor pe sistemul dumneavoastră folosind managerul de pachete. Dacă acest mod de tine pentru un motiv oarecare nu se potrivesc, puteți descărca sursă și compila cu serverul de super-xinetd.org în mod tradițional. Xinetd în timpul asamblării nu necesită dependențe exotice. Desigur, să acorde o atenție la sistemul dvs. nu este instalat deja pachete de la xinetd. daca ai construit de la sursă. Și nu uitați să salvați /etc/inetd.conf înainte de a începe.
Elementele de bază de configurare
fișier de configurare inetd este format din linii, fiecare dintre care descrie un singur serviciu. Linia este format din:
- Numele serviciului (așa cum numele descris în / etc / servicii);
- soclu de tip (dgram flux pentru TCP și UDP);
- numele protocolului;
- Directiva, așteptați sau nowait (indică super-server, fie să aștepte finalizarea daemon care rulează înainte de ai nevoie înainte de a începe următoarea cu o nouă conexiune);
- numele de utilizator, numele pe care doriți să rulați un daemon;
- calea către fișierul executabil demon și argumentele trecut la ea atunci când începe.
De exemplu, fragmentul inetd fișier de configurare:
flux imap tcp nowait root / usr / sbin / tcpd imapd
sane - tcp flux de port nowait saned. saned / usr / sbin / saned saned
Prima linie începe IMAP-server de fiecare dată când o conexiune de intrare pe TCP-portul 220. A doua linie descrie lansarea serverului Sane. oferind acces la divizia scanerului.
Format fișier de configurare xinetd are o structură diferită. În cazul în care fiecare serviciu este descris de un grup de opțiuni este plasat în paranteze. Fiecare descriere a serviciului începe cu serviciul cuvânt. urmată de numele serviciului, apoi descrierea parametrilor, incluse între paranteze buclat. De exemplu:
Primele câteva rânduri descriu exemplul dat același ca exemplul configurației inetd. arătat mai sus: TCP, flux, nowait, rădăcină. Dar restul șir - este posibil, cu condiția doar xinetd. Opțiunea only_from vă permite să specificați o listă de gazde, separate prin spații, cu care este activat permisiunea. Parametrul Valoarea banner_fail specifică calea către fișierul text care conține mesajul pe care este trimis către client în cazul în care conexiunea nu este permisă. Puteți utiliza, de asemenea banner_success atribut. pentru a trimite un mesaj, în cazul conexiunilor de succes, și banner-ul. dacă doriți să trimiteți un mesaj, indiferent dacă a fost conectarea cu succes sau nereușită.
Log_on_failure valoare parametru determină ce informații vor fi înregistrate în jurnal, în cazul conexiunilor eșuate. Să acorde o atenție pentru a utiliza operatorul „+ =“ în loc de „=“ - atunci când este utilizat USERIDbudet adăugată informațiilor existente, care este trimis la jurnalul implicit. După cum probabil ați ghicit, opțiunea log_on_success este de asemenea disponibilă. Există diferite versiuni ale informațiilor pe care xinetd pot jurnal, cum ar fi numele gazdei la distanță și de cantitatea de trafic.
Puteți împinge toată configurația xinetd într-un singur fișier porcedeaza. și îl puteți sparge în mai multe fișiere mici, de exemplu, un serviciu în fiecare fișier. Pentru a face acest lucru, utilizați includedir directivă. în final ballpen a fișierului de configurare principal. Argumentul pentru directiva trebuie să treacă calea către directorul care conține serviciile de fișiere de configurare. Toate fișierele ale căror nume nu începe cu un punct sau o tilda, voi fi tratat cu xinetd. ca fișiere de configurare. În unele distribuții, o astfel de schemă este pusă în aplicare în mod implicit, și un director pentru a stoca fișierele de configurare este /etc/xinetd.d.
Dacă utilizați o configurație separată, cel mai probabil, au un record de «default» în fișierul porcedeaza. Aceasta este o intrare specială care descrie atributele care vor fi aplicate la toate celelalte înregistrări în care acestea nu vor fi detectate. Desigur, atribute cum ar fi server și socket_type nu face sens în „globală“ aplicarea lor, dar există o serie de atribute care pot fi aceleași pentru toate sau aproape toate înregistrările. Puteți economisi timp, prin definirea atributelor în astfel de valori implicite. De exemplu:
de control al accesului
În plus față de opțiunile prezentate în exemplele de mai sus, Xinetd are opțiuni suplimentare, definiția care poate crește nivelul de securitate în rețea, și pentru a preveni anumite tipuri de atacuri.
Directiva access_times pentru a controla accesul la serviciu bazat pe ora sistemului. Definirea acestei directive, specificați o perioadă de timp, pe parcursul căreia va fi permis accesul la serviciu, în formatul „HH: mm-HH: mm“. de exemplu
acces _ ori 05. 00 - 11. 30 13. 00 - 16. 30
Frunze serviciul disponibil de la 5 am la 11 pm, apoi se închide „masa de prânz“ său până la o oră, apoi se deschide din nou la ora 16:30. După cum puteți vedea, puteți specifica secvența de intervale de timp. Dacă doriți să gestionați nu este rezoluție, dar în momentul în care accesul interdicție, utilizați deny_time opțiune.
Setările de control de acces de mai sus pot fi combinate cu setările „adaptive“, înființat în care pot fi făcute astfel încât serviciul devine indisponibil după apariția anumitor circumstanțe. De exemplu, atributul per_source. Este nevoie ca argumente un număr întreg, care permite de a limita numărul de conexiuni simultane la serviciu. Această caracteristică poate fi utilizată, de exemplu, pentru a limita numărul de conexiuni simultane la -Server SMTP în cazul în care rețeaua de lichidare undeva bot de spam.
atribut cps vă permite să limitați viteza de conexiuni de intrare pentru o secundă, mai presus de această frecvență, serviciul va fi indisponibil pentru o anumită perioadă de timp pe care îl specificați. Folosind o funcție similară poate ajuta la prevenirea DoS-atacuri. De exemplu, dacă specificați:
atunci când cele 81 de conexiuni pe secundă, serviciul va fi dezactivat timp de 60 de secunde, apoi continuați să accepte conexiuni primite.
De asemenea, puteți defini un prag pentru deconectarea parametrilor de servicii, cum ar fi:
Gazde și interfețe
Atribut pentru a redirecționa toate TCP-trafic (dar nu și UDP!) La o altă gazdă. sintaxa atribut este foarte simplu:
redirecționa = port gazdă
Când xinetd primește o conexiune de intrare la serviciu, care este prezent în descrierea acestui atribut, super-serverul deschide TCP-conexiunea la gazdă specificat în parametrul atribut, și „redirecționează“ pentru a intra în TCP-conexiunea pe portul specificat.
Cele mai multe dintre funcționalitățile oferite de xinetd. Acesta poate fi, de asemenea, realizată folosind alte programe, cum ar fi inetd. TCP Wrapper. iptables și așa mai departe. n. Cu toate acestea, în acest caz, ai pierdut un singur instrument de management pentru toate aceste „economie“.
