잠시만 기다려 주세요

     '대통령을 욕하는 것은 민주사회에서 주권을 가진 시민의 당연한 권리입니다. 대통령을 욕하는 것으로 주권자가 스트레스를 해소할 수 있다면 저는 기쁜 마음으로 들을 수 있습니다. - 노무현 -'
전체검색 :  
이번주 로또 및 연금번호 발생!!   |  HOME   |  여기는?   |  바다물때표   |  알림 (16)  |  여러가지 팁 (1059)  |  추천 및 재미 (156)  |  자료실 (22)  |  
시사, 이슈, 칼럼, 평론, 비평 (613)  |  끄적거림 (136)  |  문예 창작 (716)  |  바람 따라 (75)  |  시나리오 (760)  |  드라마 대본 (248)  |  
살인!


    리눅스 서버

리눅스 서버 - 데비안, 우분투 iptables 방화벽 설정하기
이 름 : 바다아이   |   조회수 : 12566         짧은 주소 : https://www.bada-ie.com/su/?541591838337

저는 centos 를 주로 사용하다보니 아래 설정들을 금방 잊습니다.
그래서 일단 메모를 합니다... 잘 정리해논 것이 있길래 퍼왔습니다
우분투나 데비안은 iptables 이거가 좀 불편합니다. -.-;



현재 Iptables 설정 보기

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
 

iptable에 적용할 설정들을 마련하기

# vi /etc/iptables.이름.rules
 
*filter

# Allows all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT

# Accepts all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allows all outbound traffic
# You could modify this to only allow certain traffic

-A OUTPUT -j ACCEPT

# Allows HTTP and HTTPS connections from anywhere (the normal ports for websites) 허용할 포트들
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT

# Allows SSH connections
# The --dport number is the same as in /etc/ssh/sshd_config   SSH를 위한 포트 허용

-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT

# Now you should read up on iptables rules and consider whether ssh access
# for everyone is really desired. Most likely you will only allow access from certain IPs.


# Allow ping   핑 허용
#  note that blocking other types of icmp packets is considered a bad idea by some
#  remove -m icmp --icmp-type 8 from this line to allow all kinds of icmp:
#  https://security.stackexchange.com/questions/22711

-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT

# log iptables denied calls (access via 'dmesg' command)
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7

# Reject all other inbound - default deny unless explicitly allowed policy:   위의 내용빼고 모든 포트 막기
-A INPUT -j REJECT
-A FORWARD -j REJECT

COMMIT
 

만든 설정을 iptables에 적용하기

이름 부분에 임의의 영문이름을 넣어주세요

# iptables-restore < /etc/iptables.이름.rules
 

적용이 잘 되었는지 확인하기

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
REJECT     all  --  anywhere             loopback/8           reject-with icmp-port-unreachable
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:22
ACCEPT     icmp --  anywhere             anywhere             icmp echo-request
LOG        all  --  anywhere             anywhere             limit: avg 5/min burst 5 LOG level debug prefix "iptables denied: "
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
 

반대로 이미 적용 되어 있는 iptables을 백업 할 수 도 있습니다.

iptables-save > /etc/iptables.up.rules
 
 
 

데비안 8 재부팅 후에 iptables 방화벽 설정 자동 적용하기

check : exam) iptables.up.rules

현재 iptables 설정을 파일로 저장

iptables-save > /etc/iptables.up.rules
 

재부팅 후 실행할 배치 파일 만들기

 editor /etc/network/if-pre-up.d/iptables
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.up.rules
 

권한 설정하기

chmod +x /etc/network/if-pre-up.d/iptables



출처 : https://wewe.be/wewe/bin/view/%EC%84%9C%EB%B2%84/%EB%A6%AC%EB%88%85%EC%8A%A4/%EB%8D%B0%EB%B9%84%EC%95%88/%EB%8D%B0%EB%B9%84%EC%95%888%20%EC%84%A4%EC%B9%98%20%EC%A7%81%ED%9B%84%20%EB%B0%A9%ED%99%94%EB%B2%BD%20%EA%B8%B0%EB%B3%B8%20%EC%84%A4%EC%A0%95%20%ED%95%98%EA%B8%B0%20iptables%20%EA%B0%84%EB%8B%A8%20%EC%82%AC%EC%9A%A9%EB%B2%95/
 
| |





      1 page / 5 page
번 호 카테고리 제 목 이름 조회수
148 리눅스 서버 samba ... , ... 바다아이 517
147 리눅스 서버 postfix main.cf ... 바다아이 3584
146 리눅스 서버 /etc/crontab ... 바다아이 2303
145 리눅스 서버 - MEMTEST, , 바다아이 3466
144 리눅스 서버 top , top 바다아이 4293
143 리눅스 서버 , systemd-networkd, archlinux network setting 바다아이 5413
142 리눅스 서버 mirror .. ... 바다아이 5897
141 리눅스 서버 [Ubuntu] (swapfile) , ... 바다아이 5711
140 리눅스 서버 ufw , iptables 바다아이 7011
139 리눅스 서버 ... grub . submenu, grub-mkconfig 바다아이 5798
138 리눅스 서버 CentOS 7 Upgrade Kernel, centos 바다아이 7659
137 리눅스 서버 , dd , 바다아이 5721
136 리눅스 서버 ... ntp .. ... 바다아이 6757
135 리눅스 서버 archlinux netstat , netstat ... 바다아이 6501
134 리눅스 서버 ps , ps option 바다아이 6249
133 리눅스 서버 , swap , ... swap . 바다아이 6461
132 리눅스 서버 crontab , .... 바다아이 6427
131 리눅스 서버 ssh , ssh 바다아이 7494
130 리눅스 서버 SSH SSH , ssh-keygen rsa 바다아이 7078
129 리눅스 서버 , date : () , () , 바다아이 7270
128 리눅스 서버 aws lightsail, ssh .. .pem 바다아이 12286
127 리눅스 서버 , ubuntu generic kernel 바다아이 7645
126 리눅스 서버 .. apt ... 바다아이 7549
125 리눅스 서버 ... ubuntu kernel compile 바다아이 10185
124 리눅스 서버 nginx http2 , . 바다아이 8992
123 리눅스 서버 psql libreadline.so.7: cannot open shared object file: No such file or directory 바다아이 9357
122 리눅스 서버 ssh .bashrc , bash .. .bash_profile 바다아이 8681
121 리눅스 서버 , , 바다아이 7893
120 리눅스 서버 rc.local ... , 바다아이 8643
119 리눅스 서버 ? - IPv4 Subnetting, (Subnet Mask) 바다아이 8357
| |









Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ Ubuntu + GoLang + PostgreSQL + Mariadb ]
서버위치 : 오라클 클라우드 춘천  실행시간 : 0.06368
to webmaster... gogo sea. gogo sea.