Назад | Перейти на главную страницу

Запустите веб-приложение tomcat с правами root

Я создал веб-приложение, использующее libpcap (через jpcap).

Чтобы иметь возможность получить список сетевых интерфейсов или привязаться к сетевому интерфейсу, приложение (в данном случае webaap, запускаемое с сервера tomcat) должно быть запущено с правами root.

Во время разработки я просто запускал Eclipse с привилегиями root (sudo eclipse), и мое веб-приложение отлично работало с локальным сервером tomcat Eclipse.

Однако, когда я пытаюсь развернуть свое веб-приложение на «реальном» сервере Tomcat, оно не работает. Я также попытался запустить службу tomcat6 с помощью sudo и изменил определение TOMCAT6_USER (определенное в /etc/init.d/tomcat6) с «tomcat6» на «root», но это не имело никакого значения.

Что мне делать, чтобы он работал?

Запуск tomcat с Authbind=yes в /etc/default/tomcat6 можете делать что хотите.

Почему бы в целях безопасности не оставить tomcat работать без root и позволить iptables перенаправить порт 80 на 8080?

Ex в iptables:

-A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-port 8080