Thiết lập tường lửa FirewallD trên CentOS 7

-
2024-06-18 20:45:33

1. Khái niệm về firewall (tường lửa)

Từ trước đến nay hầu hết chúng ta vẫn hiểu tường lửa là một biện pháp giúp bảo vệ an toàn cho máy tính, nhưng thực chất tường lửa là gì, có tác dụng như thế nào và cơ chế hoạt động ra sao thì không nhiều người nắm rõ.

Từ trước đến nay hầu hết chúng ta vẫn hiểu tường lửa là một biện pháp giúp bảo vệ an toàn cho máy tính, nhưng thực chất tường lửa là gì, có tác dụng như thế nào và cơ chế hoạt động ra sao thì không nhiều người nắm rõ. Bài viết sau đây sẽ giúp bạn có được những kiến thức cơ bản về tường lửa và giới thiệu đến các bạn một dạng tường lửa mới: tường lừa điện toán đám mây (cloud firewall).

Tường lửa (Firewall) là một bức rào chắn giữa mạng nội bộ (local network) với một mạng khác (chẳng hạn như Internet), điều khiển lưu lượng ra vào giữa hai mạng này. Nếu như không có tường lửa thì lưu lượng ra vào mạng nội bộ sẽ không chịu bất kỳ sự điều tiết nào, còn một khi tường lửa được xây dựng thì lưu lượng ra vào sẽ do các thiết lập trên tường lửa quy định.

Tác dụng của tường lửa: một tường lửa có thể lọc lưu lượng từ các nguồn truy cập nguy hiểm như hacker, một số loại virus tấn công để chúng không thể phá hoại hay làm tê liệt hệ thống của bạn. Ngoài ra vì các nguồn truy cập ra vào giữa mạng nội bộ và mạng khác đều phải thông qua tường lửa nên tường lửa còn có tác dụng theo dõi, phân tích các luồng lưu lượng truy cập và quyết định sẽ làm gì với những luồng lưu lượng đáng ngờ như khoá lại một số nguồn dữ liệu không cho phép truy cập hoặc theo dõi một giao dịch đáng ngờ nào đó.

Do đó, việc thiết lập tường lửa là hết sức quan trọng, đặc biệt là đối với những máy tính thường xuyên kết nối internet.

2. Firewalld Linux

Về cơ bản thì Firewalld trên Linux cũng có các chức năng tương tự các firewall của các thiết bị mạng khác, có điều sẽ không mạnh bằng như chúng. Tuy nhiên ở mức độ những công ty vừa và nhỏ cũng như các cá nhân nhỏ lẻ muốn bảo vệ hệ thống của mình tốt hơn thì Firewall được cho là đáp ưng đủ các nhu cầu của mình về tính bảo mật!

3. Hướng dẫn cài đặt firewalld trên Centos 7

Để kiểm tra máy chủ của chúng ta đã cài đặt firewalld hay chưa ta dùng lệnh:

rpm -qa | grep firewalld

Nếu kết quả trả về như vậy thì là ta đã cài đặt từ trước rồi:

firewalld-filesystem-0.6.3-13.el7_9.noarch

 

firewalld-0.6.3-13.el7_9.noarch

Còn nếu không thì ta cài đặt bằng lệnh:

yum -y install firewalld

Sau đó nhập lệnh sau để firewalld tự động khởi chạy khi chúng ta restart lại hệ thống:

systemctl enable firewalld

Tiếp tục khởi động dịch vụ firewalld lên;

systemctl start firewalld

Sau đó kiểm tra trạng thái của firewalld đã chạy hay chưa

Systemctl status firewalld

Nếu hiện như hình của mình thì là đã chạy rồi nhé:

4. Hướng dẫn mở các cổng kết nối và chặn các cổng kết nối

  • Trước khi mở cổng kết nối thì ta nhập lệnh sau để kiểm tra cổng ta cần đã được mở từ trước hay chưa:
firewall-cmd –list-all

Ta chú ý vào mục như mình có để mũi tên trong hình:

+ Services: là các dịch vụ định danh cho các cổng (ví dụ: http/https thì cổng kết nối sẽ là 80 và 443, ssh sẽ là 22, smtp là 25..)

+ Ports: là cổng ta đã mở kết nối ra ngoài

  • Ví dụ ta muốn mở cổng 80 và 443 cho web servers của ta thì sẽ có hai cách:

+ Một là dùng định danh dịch vụ có sẵn (http/https).

+ Hai là chỉ đích danh cổng cần mở cho web servers của mình (80/443).

  • Sau khi xác định được cổng nào cần mở thì ta nhập lệnh:
firewall-cmd –zone=public –add-port=xxxx/tcp –permanent

Hoặc có thể mở một dải cổng kết nối với lệnh:

firewall-cmd –zone=public –add-port=xxxx-yyyy/tcp –permanent

xxxx / yyyy: cổng cần mở.

  • Khi đã mở cổng xong rồi ta tiến hành restart lại firewalld để có hiệu lực:
systemctl restart firewalld
  • Sau đó liệt kê toàn bộ cổng ta đã mở bằng lệnh:
firewall-cmd –zone=public –list-ports

5. Hướng dẫn chặn IP

Đôi khi chúng ta muốn chặn một số IP ta có thể dung lệnh:

firewall-cmd –permanent –add-rich-rule=”rule family=’ipv4′ source address=’xxx.xxx.xxx.xxx’ reject”
  • xxx.xxx.xxx: Là địa chỉ IP ta muốn chặn.

Hoặc ta có thể chặn một dãy IP nào đó:

firewall-cmd –permanent –add-rich-rule=”rule family=’ipv4′ source address=’xxx.xxx.xxx.0/subnetmask’ reject”

Ta có thể chặn một địa chỉ IP truy cập vào một cổng kết nối nào đó, ví dụ cổng kết nối 22 SSH:

firewall-cmd –permanent –add-rich-rule=’rule family=”ipv4″ source address=”xxx.xxx.xxx.xxx” port protocol=”tcp” port=”22″ accept’

6. Hướng dẫn chặn port và gỡ chặn IP

Các hướng dẫn ở trên chỉ đang hướng dẫn ta làm thế nào để mở cổng kết nối cũng như chặn một địa chỉ hay một dãy IP nào đó, ở mục này ta sẽ biết cách để chặn port và gỡ chặn IP.

Để chặn một port nào đó ta dùng lệnh:

firewall-cmd –zone=public –remove-port=xxxx/tcp –permanent
  • xxxx: là cổng kết nối ta muốn chặn.

Để gỡ chặn một IP nào đó thì ta dùng lệnh:

firewall-cmd –zone=public –remove-rich-rule=’rule family=”ipv4″ source address=”REPLACE_THIS_WITH_YOUR_IP_ADDRESS” reject’

Chúc bạn thực hiện thành công!

Hỗ trợ