Linux
[Linux] java.net.BindException: Permission denied <null>:80
과일가게 개발자
2014. 8. 15. 04:00
반응형
리눅스에서 Tomcat 접속 포트를 80으로 한 뒤에 일반 사용자 계정으로 startup 했을때 발생하는 문제이다.
리눅스의 경우 1024 이하의 포트는 well-known port(잘 알려진 포트)라고 해서 루트 권한으로만 실행이 가능하다.
[해결책]
1. root 권한으로 실행
- root 계정으로 실행하는것은 보안정책상 추천하지 않는다.
2. apache2 연동
- 다중 톰캣 연동 및 로드밸런싱등을 이용할 수 있음. 추천.
3. iptable을 이용한 포트 포워딩
- 담당자가 바뀔경우 port 추적관리 어려움이 따른다.
- 포트 포워딩 방법 : iptable에 아래내용 추가
iptables -t nat -A OUTPUT -d localhost -p tcp --dport 80 -j REDIRECT --to-ports 8080 |