리눅스 시스템에서는 윈도에서와 같은 방화벽을 제공합니다.
이 방화벽을 통해서 외부에서 들어오는 포트를 허용하고 막을 수 있는데
이러한 리눅스의 방화벽을 Firewall 이라고 합니다.
먼저 리눅스에 firewall이 없는 경우에는 yum을 통해 설치가 가능합니다.
yum install -y firewall
기본적으로 리눅스에서는 firewall을 사용하기 때문에 설치가 되었다고 하면
명령어를 통해서 사용이 가능합니다.
그럼 firewall을 사용하기 위한 기본적인 명령어를 알아보도록 하겠습니다.
firewall-cmd --state
해당 명령은 firewall 방화벽 프로그램 자체가 실행 중인지 또한 어떠한 에러 상황인지를 확인합니다.
firewall이 실행중이라면 running으로 표시됩니다.
firewall-cmd --reload
firewall을 통해서 방화벽 포트를 추가하거나 삭제한 뒤에는 해당 명령을 통해
변경된 정보를 적용합니다.
firewall 구성에 작은 변경이라도 마지막에 해당 명령을 실행시키는 습관이 필요합니다.
firewall-cmd --list-all
만약 리눅스로 외부에서 접근이 되지 않는다고 하면 1순위로 쳐보는 명령어로
이제는 약간 습관적으로 치고 있는 자신을 발견할 수 있습니다.
해당 명령어는 리눅스 firewall 방화벽에 어떠한 포트들이 허용되는지 출력해줍니다.
firewall-cmd --add-service=ftp
해당 명령을 통해 서비스를 방화벽에 허용합니다.
ftp라고 적힌 곳에 httpd 등 허용하고자 하는 서비스를 넣어주면 됩니다.
그런 다음 위에서 설명한것처럼 reload 명령은 필수입니다.
firewall-cmd --remove-service=ftp
서비스를 추가 할 수 있다면 당연히 삭제하는 것도 가능합니다.
해당 명령을 통해 방화벽에서 해당 서비스의 접근을 막을 수 있습니다.
당연히 reload 명령은 필수입니다.
firewall-cmd --add-port=3306/tcp
위에서는 서비스를 방화벽에 추가했다면 해당 명령은 직접적인
포트를 추가하는 방법으로 사설 포트 등을 허용시킬 때 많이 사용합니다.
리눅스를 운영하다 보면 서비스 추가보다는 직접적인 포트 추가인 해당 명령어를
훨씬 더 많이 사용하게 됩니다.
역시나 reload 명령은 필수입니다.
firewall-cmd --remove-port=3306/tcp
위에서 추가한 포트를 삭제할 때에는 해당 명령을 사용합니다.
이제 말 안해도 해당 명령 다음에 실행할 명령은 아실 거라 믿습니다.
클라우드 환경에서는 해당 firewall 방화벽만 가지고는 포트가 접근하는 것을
허용할 수 없지만 단일 리눅스에 서버를 구성할 경우에는 firewall이 유일한 방화벽이므로
해당 서버의 안정성을 고려했을 때에는 선택이 아닌 필수적인 프로그램이라고 할 수 있습니다.
처음에는 명령어가 낮설기도 하지만 정말 정말 리눅스 관리에서 많이 쓰는 명령어이기 때문에
필수적으로 알아두시는게 좋습니다.
해당 포스팅은 기본적인 명령어만 알아봤지만 firewall 관련된 명령어는 더 많이 있습니다.
관심이 있으시다면 해당 내용을 찾아보시는 것도 좋지만 요즘같이 클라우드 환경을 많이 사용하는
상황에서는 이번 포스팅의 명령어정도만 알아도 충분히 방화벽을 관리할 수 있습니다.
'서버 > 리눅스' 카테고리의 다른 글
[Linux] 파일 전송 scp 명령 (4) | 2022.03.31 |
---|---|
[Linux] File Descriptor란? (1) | 2022.02.11 |
[Linux] 원격 SSH 접속 Putty (2) | 2022.01.12 |
[Linux] 프로세스란? (21) | 2022.01.11 |
[Linux] chroot 500 oops error 해결 (8) | 2022.01.10 |
댓글