Thực hành cấu hình firewalld
1. Yêu cầu bài lab
Mô hình bài lab.
- Cấu hình mô hình bài lab như hình sau:
Yêu cầu bài lab
- Cho phép PC1 và PC2 truy cập được internet thông qua Server Firewalld.
- Chặn liên hệ giữa PC1 và PC2.
- Chặn PC1 truy cập vào trang website: baomoi.com
- Máy ngoài internet có thể truy cập ssh vào PC2 thông qua IP cổng ngoài của Firewalld.
2. Cấu hình bài lab.
2.1. Cấu hình cho PC1 và PC2 truy cập được internet.
- Kiểm tra IP, Interface và zone trên server
FirewallD
:
Ta thấy cả ba card mạng của server đang ở zone public, tiến hành đổi Interface:
ens35
(10.88.88.30/24) chuyển xang zone external vì đây là interface giao tiếp với mạng ngoài để ra internet.ens33
(10.11.11.30/24) vàens34
(10.22.22.30/24) chuyển xang zone internal. Lệnh:[root@firewalld ~]# firewall-cmd --zone external --change-interface ens35 --permanent The interface is under control of NetworkManager, setting zone to 'external'. success [root@firewalld ~]# firewall-cmd --zone internal --change-interface ens33 --change-interface ens34 --permanent The interface is under control of NetworkManager, setting zone to 'internal'. The interface is under control of NetworkManager, setting zone to 'internal'. success [root@firewalld ~]# firewall-cmd --reload success [root@firewalld ~]# firewall-cmd --get-active-zone internal interfaces: ens33 ens34 external interfaces: ens35 [root@firewalld ~]#
- Kiểm tra chức năng ip_forward:
[root@firewalld ~]# cat /proc/sys/net/ipv4/ip_forward 1
Thấy chức năng này đã được bật(nếu trả về 0 là đang bị tắt) và cho phép forward các gói tin giữa các mạng khác với nhau.
Kiểm tra ping từ pc1 đến pc2:
- Mặc định zone external sẽ bật tính năng masquerade để có thể Nat:
[root@firewalld ~]# firewall-cmd --list-all --zone external
external (active)
target: default
icmp-block-inversion: no
interfaces: ens35
sources:
services: ssh
ports:
protocols:
masquerade: yes
forward-ports:
source-ports:
icmp-blocks:
rich rules:
Nếu tính năng masquerade, chưa được bật, chạy lệnh:
# firewall-cmd --zone external --add-masquerade
Kiểm tra truy cập internet trên PC1 và PC2:
2.2. Cấu hình chặn truy cập giữa PC1 và PC2, chặn PC1 truy cập baomoi.vn .
- Tạo Direct rule, chặn các gói tin có nguồn từ dải mạng 10.11.11.0/24 đến dải mạng 10.22.22.0/24 và ngược lại: ```sh [root@firewalld ~]# firewall-cmd –permanent –direct –add-rule ipv4 filter FORWARD 0 -s 10.11.11.0/24 -d 10.22.22.0/24 -j REJECT success [root@firewalld ~]# firewall-cmd –permanent –direct –add-rule ipv4 filter FORWARD 0 -d 10.11.11.0/24 -s 10.22.22.0/24 -j REJECT success [root@firewalld ~]# firewall-cmd –reload success
#### Chặn PC1 truy cập baomoi.vn:
- Kiểm tra địa chỉ ip của website `baomoi.vn`:
[root@firewalld ~]# nslookup
baomoi.vn Server: 8.8.8.8 Address: 8.8.8.8#53
Non-authoritative answer: Name: baomoi.vn Address: 118.102.1.120
- Kiểm tra kết nối đến port 80 và 443 của webserver baomoi.vn bằng `telnet` có thể thấy PC1 vẫn đang kết nối được đến web của baomoi.vn:
[root@pc1 ~]# telnet baomoi.vn 80 Trying 118.102.1.120… Connected to baomoi.vn. Escape character is ‘^]’.
[root@pc1 ~]# telnet baomoi.vn 443 Trying 118.102.1.120… Connected to baomoi.vn. Escape character is ‘^]’.
- Tạo Direct rule chặn các truy cập từ PC1 đến trang web:
```sh
[root@firewalld ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -d 10.11.11.10 -s 118.102.1.120 -j REJECT
success
- Kết nối từ PC1 đến baomoi.vn đã bị chặn:
2.3. Cấu hình port forwarding
- Cấu hình port forwarding forward port 22 trên ip phía ngoài của server firewalld( 10.88.88.30) đến port 22 trên pc2(10.22.22.20) với lệnh:
firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toport=22:toaddr=10.22.22.20 --permanent firewall-cmd --reload
- Kiểm tra ssh đến địa chỉ ip ngoài của firewalld (10.88.88.30) thì thấy kết nối được đến pc2.