Zabezpečení Manager aplikace u Tomcatu

publikováno: 11.3.2014

Čirou náhodou jsem webu narazil na zmínku o worm Java.Tomdep, který byl objeven koncem minulého roku a napadá Tomcaty, které mají nainstalovanou Manager aplikaci a jednoduchá uživ. jména a hesla (jako je admin / admin, manager / admin, root / tomcat apod.):

Upozornění: Nemusíte se děsit, podle Symantecu to není moc rozšířené. Každopádně mě to donutilo sepsat best practice zabezpečení (nejenom) Manager aplikace.

Pokud Manager aplikaci nepotřebujete, tak ji smažte. To samé se týká dalších web. aplikací, které jsou na Tomcatu ve výchozím nastavení nainstalované. Pokud ji používat chcete, pak je důležité zabezpečení:

  • Samozřejmostí je, aby Tomcat neběžel pod uživatelem root / Administrator. Když ostatní selže, tak tím minimalizujete škody.
  • Pomocí Valve RemoteAddrValve povolte k Manager aplikaci přístup pouze z vybraných IP adres. Nebo to samé pomocí firewallu / předřazeného Apache HTTPD. http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html
  • Používejte kombinaci dostatečně dlouhého uživ. jména a hesla. Nepoužívat uživ. jména admin, manager, tomcat, root atp. Používejte LockOutRealm pro zabránění brute-force útoku.
  • Nastavte HTTPS tak, aby komunikace mezi Manager aplikací a klientem probíhala zašifrovaně. K tomu je nutné nastavit v [apache-tomcat]/conf/server.xml SSL Connector a v [apache-tomcat]/webapps/manager/WEB-INF/web.xml dovnitř tagu <security-constraint>:
<user-data-constraint>
   <transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>

Reference

Skoleni bylo kazdopadne prinosne, i kdyz ve Springu uz chvilku delam, dodalo mi to kontext a hlubsi porozumeni. Libil se mi i prehled dalsich frameworku, jejich prakticke vyuziti a ze

Daniela

Školení bylo profesionální jako vždy (přesto v přátelském a otevřeném duchu). Je vidět, že Jirka je v dané problematice jako ryba ve vodě a neustále se posouvá kupředu, k čemuž

Aleš

Vyborna forma skoleni - vedeno lektorem podle dane linie se zacilenim na konkretni problematiku, nicmene s moznosti kdykoliv odbocit co vic upresnit problematiku na zaklade dotazu. Velmi uzitecne zejmena v

Petr


Novinky

5.4.2018: Jak hodně artifactů v Mavenu je připravených na použití v module path?
Od Java 9 je možné místo class path používat module path. K tomu je ale důležité, aby každý artifact který používáte měl definované jméno

26.3.2018: Java 10 je tady, Java 9 je EOL
Ještě jsem všude nepřešel na Java 9 a devítka už je EOL (End of Life).

20.3.2018: Přechod na Spring Boot 2
Postupně jsem všude přešel na Spring Boot 2 a mám k tomu pár poznatků, o které bych se rád podělil.