GNU/Linux >> Znalost Linux >  >> Cent OS

TCP Wrapper (hosts.allow &hosts.deny) Možnosti příkazů v Linuxu

TCP wrappery jsou schopny více než jen povolit a zakázat přístup ke službám. Pomocí volitelného argumentu příkazu mohou odesílat bannery připojení, varovat před útoky konkrétních hostitelů a vylepšovat protokolování.

Banner obálky TCP pro službu

Chcete-li implementovat banner wrapper TCP pro službu, použijte volbu banner. Tento příklad implementuje banner pro vsftpd. Potřebujete vytvořit soubor banneru kdekoli v systému a dát mu stejný název jako démon. V tomto příkladu se soubor nazývá /etc/banners/vsftpd a obsahuje následující řádky:

220-Hello, %c
220-All activity on ftp.example.com is logged.
220-Inappropriate use results in access privileges being removed.

%c token poskytuje řadu klientských informací. Token %d (nezobrazeno) se rozšíří na název démona, ke kterému se klient pokusil připojit. Aby se tento banner zobrazoval příchozím připojením, přidejte do souboru /etc/hosts.allow následující řádek:

# vi /etc/hosts.allow
vsftpd : ALL : banners /etc/banners/

TCP wrappery pro varování před potenciálními útoky

TCP wrappery vás mohou varovat před potenciálními útoky z hostitele nebo sítě pomocí příkazu spawn. Příkaz spawn provede jakýkoli příkaz shellu. V tomto příkladu probíhá pokus o přístup ze sítě 200.182.68.0/24. Umístěním následujícího řádku do souboru /etc/hosts.deny odepřete veškeré pokusy o připojení z této sítě a zaznamenáte pokusy do speciálního souboru:

# vi /etc/hosts.deny
ALL : 200.182.68.0 : spawn /bin/echo `date` %c %d >> /var/log/intruder_alert

Chcete-li připojení povolit a zaprotokolovat, umístěte direktivu spawn do souboru /etc/hosts.allow.

Odmítnout přístup a protokolovat pokus o připojení

Následující záznam v /etc/hosts.deny odepře všem klientům přístup ke všem službám (pokud to není výslovně povoleno v /etc/hosts.allow) a zaznamenává pokus o připojení:

# vi /etc/hosts.deny
ALL : ALL : spawn /bin/echo “%c tried to connect to %d and was blocked” >> /var/log/tcpwrappers.log

Úroveň protokolu lze zvýšit pomocí možnosti závažnosti. Předpokládejme, že kdokoli, kdo se pokouší o ssh na FTP server, je vetřelec. Chcete-li to označit, umístěte do souborů protokolu místo výchozího příznaku info a odepřete připojení. Chcete-li to provést, umístěte do /etc/hosts.deny následující řádek:

# vi /etc/hosts.deny
sshd : ALL : severity emerg

Toto používá výchozí protokolovací zařízení authpriv, ale zvyšuje prioritu z výchozí hodnoty info na emerg, který odesílá zprávy protokolu přímo do konzole.

Odmítnout přístup z konkrétní domény

Následující příklad uvádí, že pokud dojde k pokusu o připojení k démonu SSH (sshd) z hostitele v doméně example.com, spusťte příkaz echo, abyste tento pokus připojili ke speciálnímu souboru protokolu, a připojení odmítněte. Protože je použita volitelná direktiva deny, tento řádek odepře přístup, i když se objeví v souboru /etc/hosts.allow:

# vi /etc/hosts.allow
sshd : .example.com \
: spawn /bin/echo `/bin/date` access denied >> /var/log/sshd.log \ 
: deny

Každému poli možností (vytvoření a odmítnutí) předchází zpětné lomítko (\), aby se zabránilo selhání pravidla kvůli délce.

Vysvětlení TCP Wrappers (/etc/hosts.allow &/etc/hosts.deny) v Linuxu


Cent OS
  1. DSH – Spusťte příkaz Linux na více hostitelích současně

  2. Vytvořit uživatelsky specifický soubor Hosts jako doplněk /etc/hosts?

  3. Zahrnout název domény nebo ne do /etc/hosts?

  1. Ubuntu /etc/hosts Adresy ve formuláři *.*.*.*?

  2. Jak se aktualizuje /etc/motd?

  3. Možnosti příkazů ldd v Linuxu

  1. Pochopení souboru /etc/hosts v Linuxu

  2. Formát /etc/hosts na Linuxu (liší se od Windows?)

  3. Rozdíl mezi /etc/hosts a /etc/resolv.conf