방화벽

  • 네트워크 사용 시 보안을 위해 패킷 제어
  • Netfilter 도구로 해당 기능 지원
  • firewalld 서비스를 통해서 해당 도구를 제어
  •  firewall-cmd  명령어를 통해 서비스의 동작 규칙 설정
  • 영역 또는 서비스 이름을 xml 파일로 등록
  • 인터페이스마다 원하는 영역을 선택
    • 처음에는 기본 영역(public)으로 선택
    • 원하는 영역마다 서로 다른 규칙 설정 가능
  •  --permanent : 영구 설정
    • 옵션 사용하지 않을 경우 현재 설정(런타임)
    • 영구 규칙 설정 후  --reload 

 


방화벽 규칙 실습

0. firewalld 서비스가 동작 중인지 서비스 상태를 확인해보세요.

 

firewall-cmd 명령어를 이용해서 다음 실습들을 진행하세요.

1. 현재 기본영역을 확인해보고 그 영역의 규칙들 전체를 확인해보세요.

 

2. 기본 영역을 internal 영역으로 변경하고 확인해보세요.

 

3. internal 영역에 설정되어 있는 서비스 규칙을 확인해보세요. (서비스만)

 

4. 그 영역에 있는 서비스 규칙들을 전부 제거하고 확인해보세요.

 

5. --permanent 옵션을 사용해서 internal 영역의 규칙을 확인해보세요. (영구규칙)

 

6. --reload 옵션을 사용해서 internal 영역의 규칙을 복구하고 확인해보세요.

 

7. http 라는 서비스 이름으로 규칙을 추가해보세요. (일반/영구 둘다)

 

8. https 라는 서비스 이름으로 규칙을 추가해보세요. (일반만)

 

9. nfs 라는 서비스 이름으로 규칙을 추가해보세요. (영구만)

 

10. 현재 규칙과 영구설정 규칙을 각각 확인해보세요.

 

11. reload 옵션 사용 후 다시 확인해보세요.

 

12. 기본 영역을 public 으로 변경합니다.

 

13. 포트포워딩 규칙을 추가하세요.

  • 내 시스템의 IP 주소(192.168.56.101)로 2222/tcp 포트로 접속
  • 전달 대상은 IP주소가 10.0.2.20 이고 포트번호는 22/tcp
  • 윈도우에서 ssh root@192.168.56.101 -p 2222 로 접속 후 확인

 

14. 리치규칙 사용 실습

  • source address 가 10.0.2.100 이면서 ssh(22번)로 접속하려고 하면 drop 하도록 규칙을 추가해보세요.

  • 10.0.2.100 주소를 사용하는 가상머신에서 ssh 로 접속을 시도해보세요.

  • 위 규칙들을 제거하고 destination address 를 10.0.2.10 이면서 ssh(22번)로 접속하려고 하면 reject 하도록 규칙을 추가하고 다시 접속해보세요.

  • 윈도우에서 192.168.56.101 로도 접속해보세요.

 


리치규칙 어렵다. 꼭 다시 보기~

복사했습니다!