RadarURL
Skip to content
조회 수 20 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

모든 운영제체는 보안이 중요하다.

외부에서 허용되지 않은 침입을 막아야 하고, 내부에서도 허용된 부분까지 사용할 수 있어야 한다.

윈도우나 리눅스나 이 모든 것을 설정할 수 있다.

바로 Administrator(윈도우), Root(리눅스)가 말이다.

오늘은 보안 설정 중에도 방화벽 설정을 다뤄보려고 한다.

 

centos.jpg

 

CentOS8 Firewall 설정하기

 

방화벽 설정은 리눅스 설정에서 흔히 자주 하는 설정이다.

쉽게 예를 들어 내가 A 서버를 접속하고 싶은데 접속할 권한이 없다.

그러면 A 서버 관리자에게 내가 접속할 IP, Port를 알려주면 A 서버 관리자가 판단하여 접속 계정을 알려준다.

(접속할 IP, Port와 계정을 함께 알려주는 경우도 있다.)

이때, A 서버 관리자는 요청받은 IP를 방화벽이 Allow 처리를 한다.

Allow, 허용하다는 의미로 요청한 IP, Port에 대해 예외 처리를 하겠다는 의미이다.

이것이 방화벽에 대한 기본 개념이라고 생각하며, 필요에 따라 더 복잡하게 설정할 수도 있다.

(방화벽에 대한 정의는 방화벽이란...부터 시작하는데 알아두면 정말 좋지만 실무에서는 그렇게 쓰지 않는다. ㅋㅋ)

CentOS7까지는 iptables에서 설정할 수 있다.

나도 회사를 다닐 때까지는 CentOS6까지 썼고, 7이 최신판이었는데 8은 공부를 해야 한다.

같이 풀어나가보기로 하자.

firewall 서비스는 중요 서비스이기에 일반계정에서 관리 권한을 보통은 허용하지 않는다.

회사나 업체들의 경우 담당 부서 직원 계정이나 관리자에게 보통 권한이 있다.

우리는 테스트 서버고 테스트 용도이니 root로 변경하여 설정해보자.

CentOS8은 firwalld(d는 daemon을 의미) 서비스가 iptables를 대신하고 있다.

명령어도 firewall-cmd이다.

01.png

 

난 명령어를 입력했을 뿐인데 왜 빨간색 경고 문구냐고!!

커맨드 없이 입력하면 친절(?) 하게도 사용법은 man page(도움말)에서 확인하라며

옵션이 없이 입력했다고 나온다.

02.png

 

사용법 : man 궁금한 단어

도움말을 보기 위해선 man을 입력하고 궁금한 이름을 뒤에 입력하면 된다.

03.png

 

firewall-cmd는 어쩌고저쩌고 어떻고 저떻고..... 분명 이건 영어가 아니다.

설명이 영어일 뿐이다. 한국인이 만들었다면 한글이 보이겠지.

04.png

 

키보드 ↓(아래키)를 누르면 설명을 내릴 수 있는데 기본 옵션과 상태 옵션을 확인할 수 있다.

현재 firewall 상태가 어떤지를 보려면 firewall-cmd --state라고 입력하면 상태를 볼 수 있다.

05.png

 

결과가 엄청 심플해서 처음에 왜 빨간색으로 표시를 했는지 모를 정도다.

06.png

 

--check-config, --runtime-to-permanent 옵션도 있으니 참고하면 좋다. 설명은 man(도움말)에 나와있다.

만약, CentOS8에서 firewall-cmd를 입력했는데 "Command not found..."가 표시된다면

설치가 안 된 것이다.

이럴 때엔 아래의 명령어를 입력해서 설치를 진행한다.

~ ]# dnf install firewalld

~ ]# systemctl enable firewalld --now

설치가 완료되면 firewall-cmd --state를 입력했을 때, running 메시지를 볼 수 있다.

자, 그러면 이제 내가 설정해야 할 방화벽 존을 확인해보자.

firewall의 기본 설정은 public으로 되어 있다.

07.png

 

기본이 허용 정책이어서 ssh로 접속하면 아무런 제재없이 접속이 가능하다.

08.png

 

내가 설정한 IP(192.168.10)으로 접속을 시도했고, root/패스워드를 입력하여 접속에 성공하였다.

맥북의 경우 terminal.app이 있어 이것으로 ssh 접속이 가능하다.

사용법 : ssh 접속할 계정@접속할 IP -p Port(-p Port는 22번이 기본이기에 입력하지 않았고 22번이 아닌 포트를 사용한다면 입력해줘야 한다.)

우리는 public이 아닌 상태일 때도 접속이 가능하도록 설정해야 하기에 이어서 진행하겠다.

또한, ssh 접속이 가능해졌으니 terminal 앱으로 진행한다.

09.png

 

fireewall-cmd --get-zones를 입력하면 현재 zones의 설정 상태를 확인할 수 있다.

우리는 방화벽에 허용할 ip와 port를 추가해야 하니 아래의 명령어를 입력해보자.

10.png

 

--add 옵션으로 추가할 IP를 입력해보자.

11.png

 

--add 후 서비스에 반영

12.png

 

이후 반영되었는지 --list를 통해 확인

--add-sources 옵션으로 추가할 IP를 추가할 수 있다.

이후 --runtime-to-permanent 옵션으로 서비스에 반영시켜주고

--list-sources 옵션으로 추가가 되었는지 확인할 수 있다.

13.png

 

삭제하는 옵션도 간단하다.

--remove-sources로 추가한 IP를 다시 입력하면 삭제할 수 있다.(이후 확인 방법은 위와 동일)

포트 추가도 간단하다.

14.png

 

15.png

 

16.png

 

 

IP와 동일하게 --add-port로 허용할 포트를 추가할 수 있다.

이후 --runtime-to-permanent로 적용해주고 --list-port로 적용된 것을 확인할 수 있다.

삭제 역시 --remove-port로 추가했던 포트를 입력하면 삭제할 수 있다.

이상 Firewall 서비스에 대한 기본에 대해 알아보았다.

특정 IP에 대한 포트 허용도 진행하려고 하였으나 이것 역시 나도 공부를 해야 하는 것이기에

다음 편에 이어서 진행하겠다.

오늘은 끝~!

 

출처 : https://blog.naver.com/ice0423/221814598087

?

List of Articles
번호 제목 글쓴이 날짜 조회 수
194 Centos 8에 Apache, php, MariaDB 설치하기 JAESOO 2020.09.13 21
193 아파치 2.4.34 버전에서 mod_rewrite 활성화 하기 JAESOO 2020.09.13 23
192 CentOS 8 에 MariaDB 및 phpMyAdmin 설치하기 JAESOO 2020.09.13 20
191 CentOS 8 / Apache, PHP, MariaDB 설치하는 방법 JAESOO 2020.09.13 16
» CentOS 8 Firewall 설정하기 JAESOO 2020.09.13 20
189 [CentOS] LVM /home 용량을 줄이고 / 용량을 늘리기 JAESOO 2020.09.13 20
188 [Linux] CentOS DVD, Everything, Minimal, Netinstall 차이 JAESOO 2020.09.08 20
187 [서버보안정책가이드] 2. Unix / Linux 수퍼유저(root) 및 어플리케이션 관리자 계정 권한 분리 정책 JAESOO 2020.03.12 122
186 [서버보안정책가이드] 1. Unix / Linux 운영체제의 계정 통제 정책 JAESOO 2020.03.12 126
185 Btrfs vs EXT4 - 파일시스템 비교 1 JAESOO 2019.01.24 938
184 당장 firewall과 SELinux에 대해 설정하는 법을 모르니 최초 CentOS를 스터디할 땐 이 두 가지는 꺼버리자. JAESOO 2017.12.02 749
183 Linux syslog-ng를 이용하여 로그서버 구축 JAESOO 2017.10.27 431
182 [UNIX / Linux] 특수 권한(setuid, setgid, sticky bit) JAESOO 2017.10.24 645
181 [unix 시스템 기초] 리눅스 의 기초 이론인 TTY와 PTS, PTY에 대해서 알아보자 JAESOO 2017.10.18 595
180 Linux에서 터미널, 콘솔, 쉘, tty, pty, pts 차이 정리 JAESOO 2017.10.18 408
179 CentOS 7 리눅스 방화벽(firewalld) 포트 포워딩(Port Forwarding) JAESOO 2017.06.20 1354
178 리눅스 방화벽 firewalld (CentOS 7) JAESOO 2017.06.20 792
177 [CentOS] 7으로 버전업된 방화벽관리(firewall-cmd) JAESOO 2017.06.20 233
176 CentOS 7 초기 서버 세팅 / WordPress 설치하기 JAESOO 2017.06.20 315
175 AIX 5.3 TL07이상에서 MD5 패스워드 사용하기 JAESOO 2017.06.13 373
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 Next
/ 10

PageViews   Today : 1,484   Yesterday : 4,193   Total : 21,778,918  /  Counter Status   Today : 261   Yesterday : 355   Total : 1,776,609
Site Info   Member : 252  /  Total documents : 1,270   New documents : 0  /  Total comments : 26

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소