2019. 5. 20. 16:55ㆍIT-OS/Linux
역시 잘 정리되어 있네요.
펌 : http://hwangji.kr/sub/dev_leader/link/os/default.aspx?NHBBSID=NHBoardWebTip&NHBBSIDX=77
약간 수정해서 정리해서올립니다.
방화벽상태확인
firewall-cmd --list-all
포트허용 추가 sample
# firewall-cmd --permanent --zone=public --add-port=8140/tcp
# firewall-cmd --reload
포트허용 제거 sample
# firewall-cmd --permanent --zone=public --remove-port=8140/tcp
# firewall-cmd --reload
포트 포워딩 sample
# firewall-cmd --zone=public --add-forward-port=port=80:proto=tcp:toport=8080 --permanent
# firewall-cmd --reload
firewalld 각종 명령어
출처:
https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-using-firewalld-on-centos-7
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.html
* 설정하고 나면 리로드해야 변경된 상태를 확인할 수 있다.
firewall-cmd --reload
* firewalld 데몬 시작하기
systemctl start firewalld.service
* firewalld 실행여부 확인하기
firewall-cmd --state
* 디펄트 존 확인하기
firewall-cmd --get-default-zone
* 활성화된 존과 연결된 인터페이스 확인하기
firewall-cmd --get-active-zones
* 디펄트 존의 환경설정 보기
firewall-cmd --list-all
* 사용가능한 존 목록 확인하기
firewall-cmd --get-zones
* home존의 환경설정 보기
firewall-cmd --zone=home --list-all
* 인터페이스의 존을 변경하기
firewall-cmd --zone=home --change-interface=eth0
or "/etc/sysconfig/network-scripts/"에 있는 ifcfg-eth0와 같은 파일에 ZONE=home과 같이 설정을 추가하면 해당 존으로 인터페이스가 잡힌다.
* 디펄트 존 변경하기
firewall-cmd --set-default-zone=home
* 미리 정의된 서비스 포트 목록 확인하기(정의된 위치: /usr/lib/firewalld/services/) [해당 서비스정의 파일을 복사하여 내용수정하면 다른 정의 파일 생성가능]
firewall-cmd --get-services
* 사용자 존 생성하기
firewall-cmd --permanent --new-zone=publicweb
* 사용자 존 삭제하기
firewall-cmd --permanent --delete-zone=publicweb
***************************************************
Configuring IP Address Masquerading
***************************************************
* external존을 Masquerading 가능상태인지 확인하기
firewall-cmd --zone=external --query-masquerade
* external존을 Masquerading 가능상태로 만들기
firewall-cmd --zone=external --add-masquerade
* external존을 Masquerading 불가능상태로 만들기
firewall-cmd --zone=external --remove-masquerade
* 설정된 포워딩 포트(22)로 들어온 패킷을 특정 IP(192.0.2.55)의 같은 포트로 포워딩하기
firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toaddr=192.0.2.55
* 설정된 포워딩 포트(22)로 들어온 패킷을 특정 IP(192.0.2.55)의 다른 포트(2055)로 포워딩하기
firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toport=2055:toaddr=192.0.2.55
특정 IP만 접근가능하게 하기
[상단 글의 특정 존 확인 기능을 먼저 알아둘 것]
firewall-cmd는 zone별로 구분하여 정책설정을 할 수 있음을 기억할 것
internal존에 해당 IP를 추가하고 public존의 ssh 서비스는 제거해보는 예제
# firewall-cmd --zone=internal --add-service=ssh --permanent
# firewall-cmd --zone=internal --add-source=192.168.1.2/32 --permanent
# firewall-cmd --zone=public --remove-service=ssh --permanent
# firewall-cmd --reload
확인해보기
#firewall-cmd --get-active-zones
#firewall-cmd --info-zone=internal
방화벽해제
samba라는 서비스 방화벽 조건에서 제외
firewall-cmd --permanent --zone=public --add-service=samba
firewall-cmd --reload
systemctl stop firewalld
systemctl disable firewalld
출처: https://blog.miyam.net/49 [낭만 프로그래머]
방화벽 설정된 내용은 vi /etc/firewalld/zones/public.xml 에 가면 확인 가능하다.
'IT-OS > Linux' 카테고리의 다른 글
[CentOS] Network 설정 (1) (펌) (0) | 2019.06.11 |
---|---|
[CentOS] HW 정보보기 (2) (0) | 2019.05.21 |
[svn] lock - 이클립스 사용, 해결 (펌) (0) | 2019.05.13 |
[centOS] 원격 데스크탑 으로 gnome 환경 접속 (펌) (0) | 2019.05.02 |
[CentOS] window 원격 데스크톱으로 Linux 접속하기 (펌) (0) | 2019.04.18 |