Hosts.deny - Kòmandman Linux - UNIX Kòmandman

NON

hosts_access - fòma nan lame dosye kontwòl aksè

DESKRIPSYON

Paj manyèl sa a dekri yon lang kontwòl kontwòl senp ki baze sou kliyan (non lame / adrès, non itilizatè), ak sèvè (non modèl, non lame / adrès). Egzanp yo bay nan fen an. Lektè a enpasyan ankouraje sote nan seksyon an EGZÈS pou yon entwodiksyon rapid.

Yon vèsyon pwolonje nan lang lan kontwòl aksè ki dekri nan dokiman yo hosts_options (5). Ekstansyon yo ap vire nan pwogram tan bati pa bati avèk -DROSESS_OPTIONS.

Nan tèks sa a, dyemann se non an pwosesis de yon pwosesis rezo daemon, ak kliyan se non an ak / oswa adrès yon sèvis lame mande. Rezo daemon non pwosesis yo espesifye nan dosye a konfigirasyon inetd.

AKSYON KONTWOLF FILES

Lojisyèl kontwòl aksè konsil de dosye yo . Rechèch la sispann nan matche ak nan premye:

*

Aksè yo pral akòde lè yon (daemon, kliyan) pè alimèt yon antre nan dosye a /etc/hosts.allow .

*

Sinon, yo pral jwenn aksè a lè yon ( daemon , kliyan) pè alimèt yon antre nan dosye a /etc/hosts.deny .

*

Sinon, yo pral akòde aksè.

Yon dosye kontwole aksè ki pa egziste se trete tankou si li te yon dosye vid . Se konsa, ka kontwòl aksè dwe etenn pa bay pa gen okenn dosye kontwòl aksè .

RÈG KONTWÒL ACCESS

Chak dosye kontwòl aksè konsiste de zewo oswa plis liy nan tèks. Liy sa yo trete nan lòd nan aparans. Rechèch la mete fen nan lè yo jwenn yon matche.

*

Yon karaktè liylin inyore lè li se anvan yon karaktè backslash. Sa pèmèt ou kase liy long pou yo pi fasil pou modifye.

*

Liy vid oswa liy ki kòmanse avèk yon karaktè `# 'yo inyore. Sa a pèmèt ou insert kòmantè ak blan pou tab yo pi fasil pou li.

*

Tout lòt liy yo ta dwe satisfè fòma sa yo, bagay sa yo ant [] ke yo te opsyonèl:


daemon_list: client_list [: shell_command]

daemon_list se yon lis youn oswa plizyè non pwosesis non (argv [0] valè) oswa wildcards (gade anba a).

client_list se yon lis youn oswa plizyè non lame , adrès lame, modèl oswa wildcards (gade anba a) ke yo pral matche kont non an lame kliyan oswa adrès.

Fòm sa yo pi konplèks daemon @ lame ak itilizatè @ lame yo eksplike nan seksyon yo sou modèl ekstèn sèvè ak sou Lookups itilizatè kliyan, respektivman.

Lis eleman yo ta dwe separe pa blanks ak / oswa komas.

Ak eksepsyon nan NIS (YP) Lookups netgroup, tout chèk kontwòl aksè yo ka sansib.

PATÈN

Lang kontwòl la aksè aplike modèl sa yo:

*

Yon fisèl ki kòmanse ak yon `. karaktè. Yon non lame matche si eleman ki sot pase yo nan non li matche ak modèl la espesifye. Pou egzanp, modèl la `.tue.nl 'matche non an lame` wzv.win.tue.nl'.

*

Yon fisèl ki fini ak yon `. karaktè. Yon adrès lame matche si premye li yo nimerik matche ak fisèl la bay yo. Pou egzanp, modèl `131.155 la. ' alimèt adrès la (prèske) chak lame sou rezo a Inivèsite Eindhoven (131.155.xx).

*

Yon fisèl ki kòmanse ak yon karaktè `@ 'trete kòm yon non netgroup NIS (ansyen YP). Yon non lame matche si li se yon manm lame nan espesifik netgroup la. Alimèt Netgroup yo pa sipòte pou non pwosesis non yo oswa pou non itilizatè kliyan.

*

Yon ekspresyon nan fòm lan `nnnn / mmmm 'entèprete kòm yon` nèt / mask' pè. Yon adrès lame IPv4 matche si `nèt 'se egal a bitwise a nan adrès la ak mask la`. Pou egzanp, modèl la nèt / mask `131.155.72.0/255.255.254.0 'matche chak adrès nan seri a` 131.155.72.0' nan `131.155.73.255 '.

*

Yon ekspresyon nan fòm lan [n: n: n: n: n: n: n: n] / m 'entèprete kòm yon pè [net] / prefixlen'. Yon adrès lame IPv6 matche si `prefixlen 'Bits nan' nèt 'egal ak' prefixlen 'Bits nan adrès la. Pou egzanp, modèl la [net] / prefixlen `[3ffe: 505: 2: 1 ::] / 64 'matche tout adrès nan seri a` 3ffe: 505: 2: 1 ::' nan `3ffe: 505: 2: 1: ffff: ffff: ffff: ffff '.

*

Yon fisèl ki kòmanse ak yon karaktè `/ 'trete kòm yon non dosye. Yon non lame oswa adrès matche si li matche ak nenpòt non lame oswa modèl adrès ki nan lis nan dosye a yo te rele. Fòma a dosye a se zewo oswa plis liy ki gen zewo oswa plis non lame oswa adrès modèl separe pa blanch. Yon modèl non dosye ka itilize nenpòt kote yon non lame oswa modèl adrès ka itilize.

*

Wildcards `* 'ak`?' yo ka itilize matche ak hostnames oswa IP adrès. Metòd sa a nan matche pa ka itilize nan konjonksyon avèk matche ak \ "net / mask \", akomode kòmansman ak `. oswa adrès IP ki matche ak fini.

WILDCARDS

Lang la kontwòl aksè sipòte espirityèl eksplisit:

TOUT

Wildcard inivèsèl la, toujou alimèt.

LOCAL

Matches nenpòt lame ki gen non pa genyen yon karaktè dot.

UNKNOWN

Koresponn ak nenpòt itilizatè ki gen non se enkoni, ak alimèt nenpòt ki lame ki gen non oswa adrès yo enkoni. Modèl sa a ta dwe itilize ak swen: non lame yo ka disponib akòz sèvè pwoblèm sèvè tanporè. Yon adrès rezo ap disponib lè lojisyèl an pa ka konnen ki kalite rezo li ap pale ak.

KONN

À nenpòt ki itilizatè ki gen non li te ye, ak alimèt nenpòt ki lame ki gen non ak adrès yo li te ye. Modèl sa a ta dwe itilize ak swen: non lame yo ka disponib akòz sèvè pwoblèm sèvè tanporè. Yon adrès rezo ap disponib lè lojisyèl an pa ka konnen ki kalite rezo li ap pale ak.

PARANOID

Alimèt nenpòt ki lame ki gen non pa matche ak adrès li yo. Lè tcpd konstwi ak -DPARANOID (mòd default), li desann demann de kliyan sa yo menm anvan ou gade nan tab yo kontwòl aksè. Bati san -DPARANOID lè ou vle plis kontwòl sou demann sa yo.

OPERATÈ

Eksepte

Itilize entansyon se nan fòm lan: `list_1 EXCEPT list_2 '; sa a konstwi matche ak anyen ki alimèt list_1 sof si li alimèt list_2 . Ekstè operatè a ka itilize nan daemon_lists ak nan client_lists. Ka operatè a EXCEPT enbrike: si lang nan kontwòl ta pèmèt sèvi ak parantèz, 'yon EXCEPT b EXCEPT c' ta parse kòm "(yon eksepte (b EXCEPT c)) '.

SHELL COMMANDS

Si règ kontwòl kontwòl aksè premye-matche a gen yon lòd pou koki, ke lòd yo sibi sibstitisyon (al gade seksyon pwochen). Se rezilta a ki egzekite pa yon pwosesis / bin / sh timoun ki gen opinyon estanda, pwodiksyon ak erè ki konekte nan / dev / nil . Espesifye yon `& 'nan fen lòd la si ou pa vle rete tann jiskaske li fini.

Kòmandman Shell pa ta dwe konte sou anviwònman an PATH nan inetd la. Olye de sa, yo ta dwe itilize non chemen absoli, oswa yo ta dwe kòmanse ak yon PATH eksplisit = deklarasyon tou sa.

Dosye hosts_options yo (5) dekri yon lang altènatif ki itilize jaden koki an nan yon fason diferan ak enkonpatib.

EXPANSYON

Ekspansyon sa yo disponib nan kòmandman koki yo:

yon (A)

Kliyan an (sèvè) adrès lame.

c

Enfòmasyon Kliyan: itilizatè @ lame, itilizatè @ adrès, yon non lame, oswa jis yon adrès, depann sou ki jan anpil enfòmasyon ki disponib.

d

Non pwosesis la daemon (argv [0] valè).

h (% H)

Kliyan an (sèvè) non lame oswa adrès, si non an lame a disponib.

% n (% N)

Kliyan an (sèvè) lame non (oswa "enkoni" oswa "paranoya").

p

Dyaman pwosesis id.

s

Enfòmasyon sèvè: daemon @ lame, daemon @ adrès, oswa jis yon non dyaman, depann sou ki jan anpil enfòmasyon ki disponib.

u

Non itilizatè a kliyan (oswa "enkoni").

%%

Ogmante nan yon sèl `% 'karaktè.

Karaktè nan ogmantasyon ki ka konfonn koki a ranplase pa inscres.

SERVER ENTPOINT PATTERNS

Yo nan lòd yo distenge kliyan pa adrès la rezo yo ke yo konekte nan, sèvi ak modèl fòm nan:


process_name @ host_pattern: client_list ...

Modèl tankou sa yo ka itilize lè machin lan gen adrès entènèt diferan ak hostnames entènèt diferan. Founisè Sèvis yo ka itilize etablisman sa a pou ofri FTP, GOPHER oswa WWW achiv ak non entènèt ki ka menm fè pati òganizasyon diferan. Gade tou opsyon `tòde 'la nan dokiman yo hosts_options (5). Gen kèk sistèm (Solaris, FreeBSD) ka gen plis pase yon sèl adrès entènèt sou yon koòdone fizik; ak lòt sistèm ou ka gen resort SLIP oswa PP pseudo interfaces ki ap viv nan yon espas adrès rezo dedye.

Host_pattern a obeyi menm règleman sentaks yo kòm non lame ak adrès nan kontèks client_list. Anjeneral, enfòmasyon endepandan sèvè disponib sèlman avèk sèvis koneksyon.

Kliyan USERNAME LOOKUP

Lè lame a kliyan sipòte pwotokòl la RFC 931 oswa youn nan desandan li yo (TAP, IDENT, RFC 1413) pwogram yo pakè yo ka rekipere enfòmasyon adisyonèl sou mèt kay la nan yon koneksyon. Enfòmasyon itilizatè Kliyan, lè yo disponib, yo louvri sesyon ansanm ak non lame a kliyan, epi yo ka itilize matche ak modèl tankou:


daemon_list: ... user_pattern @ host_pattern ...

Kawotchou yo dòmi yo ka configuré nan tan konpile fè règ kondwi username (default) oswa toujou enterogasyon lame a kliyan. Nan ka a nan règ-kondwi username Lookups, règ la pi wo a ta lakòz Lookup username sèlman lè tou de daemon_list la ak match la host_pattern .

Yon modèl itilizatè gen menm sentaks la kòm yon modèl pwosesis domaje, se konsa wildcards yo menm aplike (manm netgroup pa sipòte). Youn pa ta dwe jwenn te pote ale ak Lookups username, menm si.

*

Non itilizatè kliyan an pa ka fè konfyans lè li nesesè pi, sa vle di lè sistèm kliyan an te konpwomèt. An jeneral, TOUT ak (Nasyonzini) KNOWN yo se modèl yo non itilizatè sèlman ki fè sans.

*

Itilizatè Lookups yo posib sèlman avèk sèvis tchp ki baze sou, epi sèlman lè lame a kliyan kouri yon doma apwopriye; nan tout lòt ka rezilta a se "enkoni".

*

Yon byen li te ye UNIX nwayo ensèk ka lakòz pèt nan sèvis lè Lookups username yo bloke pa yon firewall. Lektè dokiman README a dekri yon pwosedi pou chèche konnen si Kernel ou gen sa a ensèk.

*

Itilizatè Lookups ka lakòz reta aparan pou itilizatè ki pa UNIX. Deplasman nan default pou Lookups itilizatè se 10 segonn: twò kout fè fas ak rezo dousman, men lontan ase yo irite itilizatè PC.

Seleksyon itilizatè selektif ka soulaje dènye pwoblèm nan. Pa egzanp, yon règ tankou:


daemon_list: @ pcnetgroup TOUT @ TOUT

ta matche ak manm nan netgroup nan PC san yo pa fè Lookups username, men ta fè Lookups username ak tout lòt sistèm.

Detect ATTACKS ADRÈS ADRÈS

Yon defo nan dèlko a nimewo sekans nan anpil tchp / IP enplemantasyon pèmèt entrigan fasil imite mete konfyans tout pouvwa a fè konfyans ak kraze nan via, pou egzanp, sèvis la koki aleka. Sèvis IDENT a (RFC931 elatriye) ka itilize yo detekte sa yo ak lòt adrès lame defòmasyon atak.

Anvan yo aksepte yon demann kliyan, papye yo ka itilize sèvis IDENT la pou chèche konnen kliyan an pa voye demann lan tout. Lè lame a kliyan bay sèvis IDENT, yon negatif rezilta IDENT negatif (kliyan an alimèt `UNKNOWN @ lame ') se prèv fò nan yon lame parfen atak.

Yon rezilta pozitif rezilta IDENT (kliyan alimèt `KNOWN @ host ') se mwens konfyans. Li posib pou yon entrigan parote tou de koneksyon an kliyan ak pasaj la IDENT, byenke fè sa se pi pi rèd pase spoofing jis yon koneksyon kliyan. Li ka tou ke sèvè IDENT kliyan an se bay manti.

Remak: Lookups IDENT pa travay avèk sèvis UDP.

EGZANP

Lang la se fleksib ase ke diferan kalite politik kontwòl aksè ka eksprime ak yon minimòm de meli melo. Malgre ke lang lan itilize de tab kontwòl aksè, politik ki pi komen yo kapab aplike ak youn nan tab yo ke yo te trivial oswa menm vid.

Lè lekti egzanp ki anba yo li enpòtan pou reyalize ke tab la pèmèt yo tcheke anvan tab la refize, ke rechèch la mete fen nan lè yo jwenn yon matche ak, epi ki aksè a akòde lè pa gen okenn matche ak jwenn nan tout.

Egzanp yo itilize lame ak non domèn. Yo ka amelyore pa enkli adrès ak / oswa rezo / netmask enfòmasyon, diminye enpak la nan echèk tanporè non echèk Passage.

Pi fò fèmen

Nan ka sa a, aksè refize pa default. Se sèlman aksè klèman otorize klèman ki otorize.

Règleman an default (pa gen aksè) se aplike ak yon dosye trivial refize:

/etc/hosts.deny: TOUT: TOUT

Sa a denye tout sèvis nan tout gen tout pouvwa a, sof si yo pèmèt aksè pa antre nan dosye a pèmèt.

Gen tout pouvwa a otorize otorize yo ki nan lis nan dosye a pèmèt. Pa egzanp:

/etc/hosts.allow: TOUT: LOCAL @some_netgroup
TOUT: .foobar.edu EXCEPT terminalserver.foobar.edu

Règ la premye pèmèt aksè nan tout pouvwa a nan domèn lokal la (pa gen `.. 'nan non an lame) ak nan manm nan netgroup some_netgroup la . Règ la dezyèm pèmèt aksè nan tout gen tout pouvwa a nan domèn nan foobar.edu (avi dot la dirijan), ak eksepsyon de termalserver.foobar.edu .

MOSTLY OPEN

Isit la, aksè a akòde pa default; sèlman explicitly espesifye gen tout pouvwa a yo te refize sèvis.

Règleman an default (aksè akòde) fè dosye a pèmèt redondants pou ke li ka omisyon. Gen tout pouvwa a ki pa otorize gen tout pouvwa a yo ki nan lis nan dosye a refize. Pa egzanp:

/etc/hosts.deny: TOUT: some.host.name, .some.domain
TOUT EXCEPT in.fingerd: other.host.name, .other.domain

Règ la an premye refize kèk gen tout pouvwa a ak domèn tout sèvis; Règ la dezyèm toujou pèmèt demann dwèt soti nan lòt gen tout pouvwa a ak domèn.

BOOBY TRAPS

Egzanp nan pwochen pèmèt demann tftp soti nan gen tout pouvwa a nan domèn lokal la (avi dot la dirijan). Demann nan nenpòt ki lòt gen tout pouvwa a yo refize. Olye pou yo ranpli dosye a, se yon pwofonde dwèt voye nan lame a ofiske. Se rezilta a voye bay superuser la.

/etc/hosts.allow:

In.tftpd: LOCAL, .my.domain /etc/hosts.deny: in.tftpd: TOUT: anjandre (/ kèk / kote / safe_finger -l @% h | \ / usr / ucb / mail -s% d-% h rasin) &

Dosye a safe_finger vini ak pakè a tcpd epi yo ta dwe enstale nan yon kote ki apwopriye. Li limite domaj posib nan done ki voye pa sèvè a dwèt aleka. Li bay pi bon pwoteksyon pase lòd dwèt estanda a.

Ekspansyon an nan% h (lame kliyan) ak% d (sèvis non) sekans ki dekri nan seksyon an sou kòmandman koki.

Avètisman: pa danjere-pèlen danjere dwèt ou, sòf si ou ap prepare pou pasan dwèt enfini.

Sou rezo sistèm firewall sa a kapab fent ka pote menm pi lwen. Nòmal firewall rezo a sèlman bay yon seri limite nan sèvis nan mond lan deyò. Tout lòt sèvis yo ka "ekout" jis tankou egzanp ki pi wo a tftp. Rezilta a se yon sistèm byen bonè avètisman.

Enpòtan: Sèvi ak kòmandman an moun ( moun ) yo wè ki jan yon lòd yo itilize sou òdinatè patikilye ou.

Atik ki gen rapò