티스토리 뷰

오라클 클라우드 서버 구성 후, 외부에서 apache 접속할 때 접속이 불가한 경우가 생긴다. 

이 때, iptable 을 수정하여 특정 port 에 대한 방화벽을 open 해줘야한다. (기록용 posting 으로 아래 문헌을 참고했습니다.)

 

Centos - Firewall port

# 80 포트 추가

firewall-cmd --permanent --add-port=80/tcp 

# 80 포트 삭제
firewall-cmd --permanent --remove-port=80/tcp 

# 정책 재반영
firewall-cmd --reload

# 설정된 정책 확인

firewall-cmd --list-all

# 특정 IP에 대해 특정 Port에 접근 허용
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address=123.123.123.123 port port="1234" protocol="tcp" accept'

 

 

Ubuntu - iptables port

제 경우는 Ubuntu에 해당하여 이 방식으로 수정하였습니다. 

우분투에서는 방화벽을 iptables 로 사용되고 있습니다.

설정된 정책 확인
ubuntu$ sudo iptables -nL


정책이 설정되어 iptables 를 사용 사용중이라면 아래 내용대로 설정을 하시면 됩니다.

iptables 룰 정책 저장을 위한 패키지 설치
ubuntu$ sudo apt-get install iptables-persistent netfilter-persistent
 
특정 포트 오픈 규칙 추가( -I : 가장 먼저 추가)
ubuntu$ sudo iptables -I INPUT -p tcp -m tcp --dport 8000 -j ACCEPT

ubuntu$ sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT


특정 포트 오픈 규칙 삭제
ubuntu$ sudo iptables -D INPUT -p tcp -m tcp --dport 80 -j ACCEPT


포트 오픈시 특정 IP(123.123.123.123) 로 만 허용
iptables -I INPUT -p tcp -s 123.123.123.123 --dport 8000 -j ACCEPT


위의 "포트 오픈시 특정 IP 로 만 허용" 정책 삭제
iptables -D INPUT -p tcp -s 123.123.123.123 --dport 8000 -j ACCEPT


-정책 영구 저장
ubuntu$ sudo netfilter-persistent save

저장이 안 되는 경우 (Oracle Cloud Server의 경우 초기화됨)

$sudo iptables-save (확인) / $sudo iptables -L

$sudo cp /etc/iptables/rules.v4 ~

$sudo iptables-save > /etc/iptables/rules.v4

 

 

[iptable 을 모두 open] - Enable for all port.

sudo iptables-save > ~/iptables-rules

(I'm using this script for Oracle Cloud Infrastructure)

sudo iptables -P INPUT ACCEPT

sudo iptables -P OUTPUT ACCEPT

sudo iptables -P FORWARD ACCEPT

sudo iptables -F

 

 

[모든 port 열기]

> sudo ufw enable

> sudo ufw disable

> sudo ufw reset

 

[특정 port - SSH 포트 열기]

sudo ufw allow 22

sudo ufw deny 22

 

[저장이 안 되는 경우 재부팅시에 port open 실행함] - 본인은 이것으로 실행함

$ sudo vi /etc/rc.local

sh 실행하는 명령어를 넣음 (/etc/init.d/port.sh)


$ sudo chmod
755 /etc/rc.local

실행 가능하도록 권한 설정

 

$ sudo vi /etc/init.d/port.sh

실행할 명령문을 추가함

sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT

 

 

 

 

[참고문헌]

blog.elmi.page/412

hoing.io/archives/369

댓글
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함