본문 바로가기

OS (Operating System)/Linux

리눅스 (Linux) 우분투 톰캣 80포트 열기 및 재부팅시 유지, Ubuntu Tomcat 80 port

728x90

[펌] [Linux] Tomcat, 일반 사용자 80포트 열기 및 재부팅시 유지

 

 

Linux에서는 1024 포트 아래에 root 이외에 일반사용자는 80포트를 사용할 수 없다.

0~1023포트는 Superuser권한 즉 root권한을 가진 사용자만 사용할 수 있고

1024~49151포트는 일반사용자 권한

49152~65535포트는 서버와 클라이언트간 통신시 클라이언트가 가지는 포트번호이다

 

다시 정리하자면 아래와 같다.

Well Known port: 0 ~ 1023

Registered port: 1024 ~ 49151

Dynamic/private port: 49152 ~ 65535

0~1023 포트는 특권(privileged) 포트로 root권한을 가진 사용자이고

1024~65535포트는 비특권(unprivileged) 포트로 일반사용자 포트이다.

그렇기 때문에 우리의 Tomcat 사용자는 8080포트를 80포트로 redirect 시켜 사용해야 한다.

 

먼저 8080가 사용중인지 확인해보자

$ sudo netstat -ntl

아이피 테이블에서 상태를 확인해보자

$ sudo iptables -t nat -L

이제 8080포트로 접속하는 모든 요청을 80포트로 redirect 시켜주도록 하자

$ sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

변경된 것을 확인해보자

$ sudo iptables -t nat -L

 

 

# 재부팅시 사라지지 않게 유지(~ubuntu16.x까지)
sudo sh -c "iptables-save > /etc/ufw/iptables.rules"
sudo vi /etc/network/interfaces
맨하단에
pre-up iptables-restore < /etc/ufw/iptables.rules
추가한다.

 

# 재부팅시 사라지지 않게 유지(ubuntu18.x 이후~)

# iptables-persistent 설치
sudo apt install iptables-persistent

# enabled 확인
sudo systemctl is-enabled netfilter-persistent.service

# enabled 하기
sudo systemctl enable netfilter-persistent.service

# Get status
sudo systemctl status netfilter-persistent.service

# iptables save (root로 로그인)
sudo /sbin/iptables-save > /etc/iptables/rules.v4
sudo /sbin/ip6tables-save > /etc/iptables/rules.v6

 

출처 : https://kig6022.tistory.com/11 https://hays99.tistory.com/84

 

포트(port) 리다이렉트 (포트포워딩)

# 80포트에 대한 모든 인바운딩을 8888 포트로 리다이렉트(REDIRECT) sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8888 # 포트포워딩 조회 sudo iptables -t nat -L --line-nu..

hays99.tistory.com

 

[Linux] Tomcat, 일반 사용자 80포트 열기

Linux에서는 1024 포트 아래에 root 이외에 일반사용자는 80포트를 사용할 수 없다. 0~1023포트는 Superuser권한 즉 root권한을 가진 사용자만 사용할 수 있고 1024~49151포트는 일반사용자 권한 49152~65535포트

kig6022.tistory.com

 

728x90