RadarURL
Skip to content
유닉스/리눅스
2017.06.20 18:11

리눅스 방화벽 firewalld (CentOS 7)

조회 수 36 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

CentOS 7부터 기본 방화벽 시스템이 변경되었습니다. 이전에는 iptables 를 사용했었는데.. CentOS 7에서는 firewalld라는 방화벽 시스템이 기본으로 탑재되었습니다. 

 

그렇다고 iptables이 완전히 없어진 것은 아닙니다. firewalld은 그저 iptables을 기반으로해서 동작하고 있는 것 뿐입니다. firewalld이 iptables을 의존 패키지로 두고 있는 것을 보면 알 수 있습니다. 다만 iptables-service를 조작이 쉬운 firewalld로 바꾼 것 뿐입니다.

 

centos 7부터는 iptables-service를 더 이상 사용하지않지만, iptables-service를 계속 사용할 수도 있습니다. 리눅스를 계속 사용해온 사용자라면 당연히 익숙했던 iptables-service가 더 편할 것입니다. 하지만 기본 방화벽 시스템이 변경된 이상 iptables-service의 향후 지원도 불확실하고, 어쩌면 익숙해지면 firewalld가 더 편할 수도 있습니다.

 

이런저런 이유로 기본 firewalld 사용을 권장하고, 그 사용방법에 대해 알아보겠습니다.

 

 

1. 방화벽 살펴보기

방화벽에는 zone(영역)이라는 것이 존재합니다. 개방된 네트워크와 연결되어있다면 public zone(공개영역)에 있는 룰이 적용되고, 개인 네트워크에 있다면 다른 zone의 룰의 적용할 수 있습니다. 이 처럼 네트워크 형태에 따라 적용하는 방화벽 룰을 다르게 할 수 있습니다.

 

우리는 서버 용도로 리눅스를 사용하기때문에 개방된 네트워크 public zone 만 필요합니다. 또한 방화벽에는 public zone이 기본 zone 으로 설정되어있습니다. 이는 방화벽 설정파일에서 변경가능합니다.

 

* public zone의 설정파일

/etc/firewalld/zones/public.xml

 

* 방화벽 재로드

# firewall-cmd --reload

 

설정파일은 xml 형식으로 되어있으며, firewall-cmd --permanent --zone=public 명령으로 추가했던 룰들이 저장되어있습니다. zone의 설정파일을 변경할 경우 방화벽 재로드를 해야 반영이 됩니다. 

 

또한 firewall-cmd에서 --permanent 옵션이 들어간다면 반영은 되지않고, 해당 zone의 설정파일에서 룰 추가/수정만 이루어집니다. 따라서 --permanent 옵션 넣었다면 방화벽 재로드를 해야합니다. 

 

참고로 설정파일에 추가된 룰은 영구반영됩니다. 만약 --permanent 옵션을 넣지않으면, 일시적으로 즉시 반영됨을 의미합니다. (재부팅할 경우 zone의 설정파일에 추가되지않은 룰은 전부 삭제됩니다. )

 

 

2. 포트

포트를 방화벽에 추가하면 해당 포트는 허용됩니다.

 

* 포트추가

 

# firewall-cmd --permanent --zone=public --add-port=포트

예) firewall-cmd --permanent --zone=public --add-port=80/tcp

 

# firewall-cmd --reload

 

 

* 포트 제거

# firewall-cmd --permanent --zone=public --remove-port=포트

예) firewall-cmd --permanent --zone=public --remove-port=80/tcp

 

# firewall-cmd --reload

 

 

3. 서비스

서비스에서 사용하는 룰을 적용하려면 아래와 같이 서비스를 추가하면 됩니다. 

단, 해당 서비스 xml 룰 파일이 /usr/lib/firewalld/services 에 있어야 사용할 수 있습니다. 

 

* 서비스 추가

firewall-cmd --permanent --zone=public --add-service=서비스

예) firewall-cmd --permanent --zone=public --add-service=http

 

# firewall-cmd --reload

 

* 서비스 제거

firewall-cmd --permanent --zone=public --remove-service=서비스

예) firewall-cmd --permanent --zone=public --remove-service=http

 

# firewall-cmd --reload

 

그리고 /usr/lib/firewalld/services 디렉토리에 있는 서비스 파일들을 수정하려면 /etc/firewalld/services에 복사후 수정해야 합니다. (/etc/firewalld/services에 있는 서비스 파일들이 우선 적용되기에 관리상 편리합니다..)

 

4. 임의의 룰 (Rich rule)

포트, 서비스 룰 이외에 원하는 룰을 임의로 적용할 수 있습니다. 예를 들면 ip차단 같은...

 

* 룰 추가

# firewall-cmd --permanent --zone=public --add-rich-rule="임의의 룰"

예) firewall-cmd --permanent --zone=public --add-rich-rule="rule family=ipv4 source address=192.168.0.4/24 service name=http accept"

 

# firewall-cmd --reload

 

* 룰 제거

# firewall-cmd --permanent --zone=public --remove-rich-rule="임의의 룰"

예) firewall-cmd --permanent --zone=public --remove-rich-rule="rule family=ipv4 source address=192.168.0.4/24 service name=http accept"

 

# firewall-cmd --reload

 

 

* 응용예시 - http(80번 포트) 서비스에서 특정 ip 차단

웹서버를 운영하다보면 특정ip(스팸같은)를 차단시키고 싶을 때가 있습니다. 그럴경우 아래와 같이 임의의 룰을 활용하면 됩니다.

 

 

차단시)

# firewall-cmd --permanent --zone=public --add-rich-rule="rule family=ipv4 source address=차단ip service name=http reject"

 

차단해제시)

# firewall-cmd --permanent --zone=public --remove-rich-rule="rule family=ipv4 source address=차단ip service name=http reject"

 

# firewall-cmd --reload

 

 

위 명령을 실행하면 즉시 , 영구적으로 해당 ip를 웹사이트에 접속하지못하게 차단시킬 수 있습니다. 이 방법은 웹서버 자체에서 ip를 차단시키는 것보다 효과적입니다.

 

 

5. 방화벽 기타 명령어

방화벽에서 유용 명령어들입니다

 

* 허용한 포트 목록

# firewall-cmd --list-ports

 

 

* 방화벽 상태 확인

# firewall-cmd --state

 

* 활성화된 zone 목록

# firewall-cmd --get-active-zones

 

* 현재 존재하는 서비스 목록

# firewall-cmd --get-service

 

public zone에 있는 서비스 목록

 

# firewall-cmd --zone=public --list-services

 

 

 

참조 : http://oracle-base.com/articles/linux/linux-firewall-firewalld.php

 

출처 : https://www.conory.com/note_linux/42477

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.17 828750
2429 하드웨어 AMD 라데온 R9/ R7 200 시리즈 네이밍 어떻게 바뀌었나? file JaeSoo 2017.09.12 85
2428 연애 [정보] 남자 성기 크기가 중요한 이유 file JaeSoo 2017.09.06 241
2427 건강 여자들아 보지탐험 꼭 해봐라 (그림多) file JaeSoo 2017.09.06 780
2426 웹 프로그래밍 XE 인증메일을 gmail의 smtp로 보내기 JaeSoo 2017.08.30 44
2425 웹 프로그래밍 XE 1.7.4 업그레이드시 회원가입이 안되는 문제 해결법 1 JaeSoo 2017.08.28 4651
2424 인터넷 페이스북 계정이 해킹당했는데 계정 삭제도 못하고 접속도 안되고 아무것도 못합니다. JaeSoo 2017.08.10 45
2423 윈도우즈 윈도우10 작업표시줄 프리징 먹통 해결방법 file JaeSoo 2017.07.21 82
2422 윈도우즈 윈도우 속도 저하, 시스템 파일 손상, 이유없는 오류 - SFC, DISM으로 복구/해결 방법 file JaeSoo 2017.07.21 48
2421 생활 멜론 평생 무료로 스트리밍하는 방법 (feat.데이터 함께쓰기,SKT만 가능) file JaeSoo 2017.07.02 147
2420 네트워크 [Cisco] ARP CLEAR 네트워크 JaeSoo 2017.06.27 51
2419 네트워크 윈도우에서 arp cache 삭제/초기화 하는 방법 JaeSoo 2017.06.27 45
2418 취미 Xbox 360 본체에서 사용되는 게임 등급 시스템 JaeSoo 2017.06.21 35
2417 취미 XBOX 360 이미지 브라우져와 iso2god 질문입니다. JaeSoo 2017.06.21 100
2416 유닉스/리눅스 CentOS 7 리눅스 방화벽(firewalld) 포트 포워딩(Port Forwarding) JaeSoo 2017.06.20 38
» 유닉스/리눅스 리눅스 방화벽 firewalld (CentOS 7) JaeSoo 2017.06.20 36
2414 유닉스/리눅스 [CentOS] 7으로 버전업된 방화벽관리(firewall-cmd) JaeSoo 2017.06.20 11
2413 유닉스/리눅스 CentOS 7 초기 서버 세팅 / WordPress 설치하기 JaeSoo 2017.06.20 28
2412 하드웨어 재미로보는 파워 등급표 - 무림편 V.1.1 (수정) file JaeSoo 2017.06.15 24
2411 데이터베이스 TEMP TABLESPACE 사용현황 조회하기 JaeSoo 2017.06.14 14
2410 데이터베이스 오라클 DB sysdba 접속방법 JaeSoo 2017.06.14 71
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 124 Next
/ 124

 

■ 즐겨찾기 - 가족
JAESOO's HOMEPAGE YOUNGAE's HOMEPAGE 장여은 홈페이지 장여희 홈페이지 장여원 홈페이지

■ 즐겨찾기 - 업무
알리카페 홀릭 숭실대 컴퓨터 통신연구실 (서창진) 말레이시아 KL Sentral 한국인 GuestHouse

■ 즐겨찾기 - 취미
어드민아이디 유에코 사랑회 아스가르드 좋은사람/나쁜사람 JServer.kr 제이서버 메타블로그 재수 티스토리

■ 즐겨찾기 - 강의, 커뮤니티
재수 강의 홈페이지 한소리 VTMODE.COM 숭실대 인공지능학과 숭실대 통신연구실


PageViews   Today : 1,253   Yesterday : 2,524   Total : 61,012,138  /  Counter Status   Today : 224   Yesterday : 491   Total : 3,210,845
Site Info   Member : 1,393  /  Total documents : 7,136   New documents : 2  /  Total comments : 508

design by by JAESOO.com

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소