xinetd er et alternativ til den tradisjonelle super-serveren Internet daemon, inetd, prosessen som starter og stopper alle ikke-vedvarende nettverkstjenere. Xinetd fungerer som en drop-in erstatning for inetd, men det kan gjøre mer enn bare å starte og stoppe tjenester på din Linux-maskin som svar på innkommende TCP eller UDP-tilkoblinger. real xinetd er pakket av alle store Linux-distribusjonene, slik at du kan installere det gjennom pakkesystem. Sperring det, kan du laste ned den siste versjonen fra xinetd.org og kompilere den med vanlig ./configure; lage; sudo make install prosessen. Det er ingen uvanlig avhengig å snakke om. Den eneste særlig risiko du påtar deg å installere det hvis din distribusjon markerer det som kommer i konflikt med den inetd pakken slik at du ikke kan ha begge installert samtidig. Sikkerhetskopier /etc/inetd.conf-filen før du fortsetter. konfigurasjonsfil Inetd s består av en enkelt linje for hver tjeneste, oppføring tjenestens navn (som det er oppført i /etc /services-filen), socket (vanligvis stream Den første linjen lanserer en IMAP daemon når en forespørsel kommer inn på TCP port 220; den andre er for nettverksdeling et SANE scanner, som bruker den ikke-IETF-tildelt TCP port 6566, og kjører som saned xinetd konfigurasjonsfil /etc /xinetd. conf bruker en annen syntaks, med bukseseler separert strofer holder alternativene for hver tjeneste. Hver oppføring begynner med tjenesten tjeneste De første linjene angir de samme innstillingene som vist i inetd eksempel: TCP, strøm, ingen ventetid, kjøre-som-rot. Den endelige få, tyder imidlertid på noen av xinetd er flere alternativer. Den only_from attributtet lar deg angi en space-separert liste over tillatte verter og IP-adresser. Den banner_fail attributtet lar deg angi en tekstfil vises til den eksterne verten når en tilkobling er avslått (slik som stammer tilkoblingen fra en som ikke er tillatt IP-adresse). Du kan også gi en banner_success attributt som skal vises når en tilkobling er opprettet, og et banner attributt som vises alltid, uavhengig av suksess eller fiasko. log_on_failure attributtlister hvilke opplysninger som er skrevet til loggen når en tilkoblingen er forbudt. Legg merke til at operatøren brukt er " + = " i stedet for " = " - Dette har effekten av legge Du kan sette opp hele xinetd konfigurasjonen helt innenfor /etc /xinetd .conf, eller du skille ut ulike tjenester i egne konfigurasjonsfiler. For å gjøre dette, vil du ende /etc/xinetd.conf med en includedir direktivet, og gir som sitt argument en katalog der xinetd bør se etter flere konfigurasjonsfiler. Noen distribusjoner gjør dette som standard, vanligvis med /etc/xinetd.d/som konfigurasjonen katalogen. Hver fil i den angitte katalogen vil bli analysert, med mindre filnavnet enten begynner med en prikk eller ender med en tilde (~) I dette tilfellet, bør du sannsynligvis ha en " (..), Mislighold " strofe i /etc/xinetd.conf fil. Dette er en spesiell strofe som tildeler utgangspunkt attributter for hver tilkobling. Noen attributter som gjelder for enkelte tjenester (for eksempel socket_type og server) gjelder ikke i mislighold; men du kan spare plass ved å plassere de mest brukte attributter her i stedet for å gjenta dem for hver tjeneste. For eksempel, etter Utover ekstra bekvemmeligheter som bannere og logging alternativer er xinetd administrative funksjoner, som du kan sette og håndheve nettverk politikk og svare på visse typer angrep. only_from attributt i eksempelet ovenfor er den mest grunnleggende formen for adgangskontroll; i motsetning til å bruke /etc /hosts_allow, men du kan konfigurere only_from verdier for hver tjeneste individuelt, eller angi en stedsomfattende politikk i mislighold strofe, og juster det for bestemte tjenester ved å bruke + = og - = operatører i enkeltoppføringer. Speilbilde av only_from er no_access, noe som kan deaktivere tilgang til en tjeneste basert på IP eller vertsnavn. Begge attributter kan også godta en IP-adresseområde ved hjelp av ip /netmask formatering. access_times direktivet lar deg aktivere eller deaktivere tilkoblinger basert på systemtiden. Du angir tidsintervallene når tjenesten vil Disse faste politiske tiltak kan kombineres med adaptive innstillinger som tillater deg å utløse tjeneste nedleggelse basert på maskinens tilstand eller nettverkstrafikk. Den per_source attributt, for eksempel tar et heltall som sitt argument, og begrenser antallet samtidige tilkoblinger som en enkelt vert kan gjøre bruk av tjenesten. Dette kan brukes til å begrense antall SMTP-tilkoblinger gjort, noe som kan være effektive i å fange maskiner infisert med spam-bot virus. CPS tilskriver lar deg sette en forbindelse frekvensnivå (i tilkoblinger per sekund) , over som serveren vil bli stengt for en konfigurerbar tid. Dette gjør du unngå denial-of-service angrep basert på flom tjenesten. Plassere en innstilling på eps = 80 60 i en bestemt tjenestens strofe sier at xinetd vil svare på 80 tilkoblinger per sekund, men hvis frekvensen av tilkoblinger treffer 81, vil det stoppe tjenesten, vent 60 sekunder, og deretter begynne å behandle nye tilkoblinger igjen. Du kan også konfigurere shutdown-terskelverdiene for belastningen på systemet (ved hjelp av max_load redirect attributtet kan du videresende en TCP (men ikke UDP) forbindelse til en annen vert helt. Syntaksen er enkel, omdirigere = ip-adresse port-nummer Dette gir deg en enkel og effektiv måte å omdirigere bestemte tjenester (kanskje til maskiner som ikke er tilgjengelige på utsiden nettverk) uten å berøre brannmurregler. Det kan være en nyttig funksjon for midlertidig å omdirigere en tjeneste, eller i kombinasjon med andre sperringer, for å omdirigere tjenester basert på sin kilde og tid på døgnet. xinetd har også evnen til å binde en bestemt tjeneste til en bestemt nettverkskort. Dette kan være nyttig når en tjeneste genererer et stort volum av trafikk, eller hvis du ønsker å gjøre en tjeneste kun tilgjengelig over et kablet tilkobling (eth0) og ikke trådløst (wlan0). Du kan enten bruke grensesnittet eller bind attributter i tjenestens strofe, etterfulgt av IP-adressen til grensesnittet De fleste av xinetd konfigurasjons triks kan oppnås med en kombinasjon av andre programmer -. Inetd, TCP Wrapper, hosts_allow og hosts_deny, iptables, etc. Men hva som koldtbord av hjelpemidler ikke gjøre er å gi en enkelt, enhetlig grensesnitt som du kan enkelt og greit komponere din nettverkstjeneste politikk. Anmeldelser
nytte av xinetd er at det gir mer finkornet kontroll, herunder tilgangskontrollister (ACL), hastighetsbegrensende, tidsbasert tilgang og stream omdirigering.
Konfigurasjons Basics
for TCP og dgram
for UDP), protokollen, et " vente " eller " nowait " direktiv som forteller inetd om ikke å vente på at serveren skal returnere før behandlingen ytterligere tilkoblinger, brukeren som hvem serveren skal kjøre, og stien til serveren for å starte, etterfulgt av noen argumenter. For eksempel, etter imap stream tcp nowait root /usr /sbin /tcpd imapdsane-port stream tcp nowait saned: saned /usr /sbin /saned saned
brukeren.
, fulgte på de neste linjene av individuelle egenskaper og deres tildelte verdiene. For eksempel, etter tjenesten imap {socket_type = strøm protokoll = tcp vente = ingen user = root only_from = 192.168.2.102 localhost banner_fail = /usr /local /etc /your_failure_banner server = /usr /sbin /imapd log_on_failure + = brukerid}
brukerid av forbindelsen til den informasjonen som er logget som standard. Som du kanskje skjønner, er log_on_success også tilgjengelig, og det er flere dataverdier som xinetd kan logge, inkludert den eksterne verten og totale trafikktelling.
defaults {log_type = FIL /var/log/services.log log_on_success = PID log_on_failure = PID HOST tilfeller = 20 banner_success = /usr /local /WELCOME_MESSAGE}
sperringer Anmeldelser
godta tilkoblinger, i time: minutt klasser. For eksempel access_times 05: 00-11: 30 13: 00-16: 30 holder tjenesten tilgjengelig fra 5 AM til 11:30, så lukkes det for en rolig lunsj pause, og gjenåpner den fra 01:30 til 4 : 30 PM. Som eksempelet viser, kan du kjede sammen flere tidsintervaller på én linje. Omvendt kan du bruke deny_time å diktere ganger når tjenesten vil bli gjort un
tilgjengelig for innkommende tilkoblinger.
attributt), samt adresseområdet (ved hjelp av rlimit_as
), CPU-sekunder ( med rlimit_cpu
), eller til og med stack størrelse ( rlimit_stack
).
Moro med verter og grensesnitt
. Når en tilkobling på matchende tjenesten kommer inn, starter xinetd en TCP tilkobling til børsnoterte IP-adresse og port, og videresender all trafikk til det.