Mamy kilka serwerów tomcat i właśnie odkryliśmy, że niektóre pliki, których nie chcemy, aby były publiczne, mają dostęp do tych plików. Dla przykładu:
Załóżmy, że mamy folder / var / www / html /, który publikujemy za pośrednictwem tomcat, ale nie chcemy ujawniać /var/www/html/conf/dbinfo.txt. W tej chwili ludzie mogą wejść na stronę www.thissite.com/conf/dbinfo.txt i mogą zobaczyć różne rzeczy. Chciałbym móc go zablokować, więc go nie pokazuje, ale pozwala go odczytać sam tomcat.
Każda pomoc jest mile widziana.
Odpowiedzi:
Dostęp do plików Tomcat jest kontrolowany przez sekcję ograniczeń bezpieczeństwa WEB-INF / web.xml.
Możesz zablokować w
conf
ten sposób:Jeśli używasz apache do dostarczania zawartości statycznej, to nie zadziała, ponieważ apache będzie obsługiwał pliki conf, zanim tomcat otrzyma adres URL. W takich przypadkach należy rozwiązać ten problem za pomocą plików konfiguracyjnych http apache.
źródło
Dlaczego nie przechowywać go poza strukturą katalogu? Nigdy nie umieszczamy niczego w / var / www / html /, których nie chcielibyśmy, aby użytkownik odkrył.
źródło
Witam wszystkich pracowników SysAdmin i IT w tym poście. Dziękuję za twoje odpowiedzi. Wiele odpowiedzi na moje pytania było do zaakceptowania, ale ta najlepiej pasowała do naszego środowiska produkcyjnego.
Ok. Aby zablokować katalog lub plik na wirtualnym hoście w server.xml, wystarczy dodać następujący kod do server.xml w katalogu tomcat / conf.
Przed:
Po:
Tak więc odpowiedzią na pytanie jest dodanie następujących wierszy:
źródło
Słowo rady. Po naprawieniu uprawnień. Zmień wszystkie hasła i UPEWNIJ SIĘ, że nie ma go w pamięci podręcznej Google.
źródło
Zwykle informacje o konfiguracji (takie jak informacje o połączeniu z bazą danych, ...) są przechowywane w plikach w folderze WEB-INF pliku WAR wdrożonego w Tomcat. Pliki w WEB-INF nie są dostępne dla klientów.
źródło
Mam ten sam problem, ale nie widzę, jak zaakceptowana odpowiedź może naprawdę działać. Przywołany tutaj zawór dotyczy CAŁEJ aplikacji internetowej. Nie częścią tego. Zakładam więc, że w tym przypadku, gdy nie może rozpoznać kontekstu reprezentującego aplikację internetową, po prostu ignoruje dyrektywę i wrzuca pewne komentarze do pliku dziennika.
źródło
Możesz zablokować katalog w publicznym dostępie poprzez plik server.xml
Dodaj te linie do tego pliku server.xml
następnie uzyskaj dostęp do tego http: // localhost: 8080 / przykładów, a następnie wyświetli się jako błąd strony 404, tzn. oznacza zablokowany
źródło