HomeBlogCách cài đặt tường lửa UFW trên Ubuntu 16.04 (P1)
Operations Security

Cách cài đặt tường lửa UFW trên Ubuntu 16.04 (P1)

CyStack blog 4 phút để đọc
CyStack blog25/01/2018
Locker Avatar

Trung Nguyen

CEO @CyStack

Locker logo social

CEO @CyStack

Reading Time: 4 minutes


UFW (Uncomplicated Firewall) là một giao diện với iptables nhằm hướng tới việc đơn giản hoá quá trình cấu hình tường lửa. Vì iptables là một công cụ vững chắc và linh hoạt nên người mới bắt đầu sử dụng sẽ thấy rất khó để thiết lập đúng cấu hình tường lửa. Nếu bạn đang tìm kiếm công cụ nhằm nâng cao bảo mật mạng của mình thì UFW sẽ là sự lựa chọn đúng đắn dành cho bạn. Bài viết dưới đây sẽ hướng dẫn bạn cách cài đặt tường lửa UFW trên Ubuntu 16.04.
Để thực hiện theo hướng dẫn này, bạn sẽ cần:

  • Một máy chủ Ubuntu 16.04 với một sudo non-root user.
  • UFW được cài đặt mặc định trên Ubuntu. Nếu nó đã bị gỡ vì một số lý do thì bạn có thể cài đặt lại với sudo apt-get install ufw.

Bước 1 – Sử dụng IPv6 với UFW (Tùy chọn)

Nếu máy chủ Ubuntu của bạn đã bật IPv6, hãy đảm bảo rằng UFW được cấu hình để hỗ trợ IPv6 và nó sẽ quản lý các quy tắc tường lửa cho IPv6 cũng như IPv4. Đầu tiện, hãy mở cấu hình UFW:

$ sudo nano /etc/default/ufw

Sau đó hãy chắc chắn rằng giá trị của IPV6 Yes. Nó sẽ giống như thế này:

/etc/default/ufw excerpt
...
 IPV6=yes
 ...

Lưu và đóng tập tin lại. Bây giờ, khi UFW đã kích hoạt, nó sẽ được cấu hình để ghi cả các quy tắc tường lửa IPv4 và IPv6. Tuy nhiên, trước khi kích hoạt UFW, chúng tôi muốn đảm bảo rằng tường lửa của bạn được cấu hình để cho phép bạn kết nối thông qua SSH. Hãy bắt đầu với việc thiết lập các chính sách mặc định.

Bước 2 – Thiết lập chính sách mặc định

Nếu bạn mới bắt đầu tiếp cận với tường lửa, những quy tắc đầu tiên để xác định là các chính sách mặc định của bạn. Những quy tắc này kiểm soát cách xử lý lưu lượng truy cập không khớp với bất kỳ quy tắc nào khác. Theo mặc định, UFW được thiết lập để từ chối tất cả các kết nối đến và cho phép tất cả các kết nối đi. Điều này có nghĩa là bất cứ ai cố tiếp cận máy chủ đám mây của bạn đều không thể kết nối, trong khi bất kỳ ứng dụng nào trong máy chủ cũng có thể tiếp cận thế giới bên ngoài.
Hãy thiết lập các quy tắc UFW của bạn ở dạng mặc định để có thể làm theo hướng dẫn này. Để thiết lập mặc định được sử dụng bởi UFW, sử dụng các lệnh sau:

$ sudo ufw default deny incoming
$ sudo ufw default allow outgoing

Các lệnh này thiết lập mặc định để từ chối kết nối đến và cho phép các kết nối đi. Tuy nhiên, những thiết lập mặc định tường lửa này chỉ dành cho máy tính cá nhân, các máy chủ cần phải đáp ứng các yêu cầu của người dùng bên ngoài nên chúng ta sẽ xem xét điều đó sau.

Bước 3 – Cho phép kết nối SSH

Nếu kích hoạt tường lửa UFW bây giờ, nó sẽ từ chối tất cả các kết nối đến. Vì thế, bạn cần phải tạo ra các quy tắc rõ ràng cho phép các kết nối đến hợp pháp. Nếu bạn đang sử dụng máy chủ đám mây thì nên cho phép kết nối SSH đến để có thể kết nối và quản lý máy chủ của mình từ xa. Để cấu hình máy chủ cho phép kết nối SSH đến, bạn có thể sử dụng lệnh này:

$ sudo ufw allow ssh

Lệnh này sẽ tạo ra các quy tắc tường lửa cho phép tất cả các kết nối trên cổng 22 – cổng mà SSH daemon mặc định nhận lệnh. UFW biết SSH và một số tên dịch vụ khác có nghĩa là gì bởi vì chúng được liệt kê dưới dạng các dịch vụ trong tập tin /etc/services. Tuy nhiên, bạn có thể viết quy tắc tương đương bằng cách xác định cổng thay vì tên dịch vụ. Ví dụ, lệnh trên có thể được thay thế như sau:

$ udo ufw allow 22

Nếu bạn cấu hình SSH daemon để sử dụng một cổng khác, bạn sẽ phải chỉ định cổng thích hợp. Ví dụ: nếu máy chủ SSH của bạn đang nhận lệnh từ cổng 2222, bạn có thể sử dụng lệnh này để cho phép các kết nối trên cổng đó:

$ sudo ufw allow 2222

Giờ đây, tường lửa của bạn đã được cấu hình để cho phép kết nối SSH đến và bạn có thể bật tính năng này.

Bước 4 – Cho phép UFW

Để kích hoạt UFW, sử dụng lệnh này:

$ sudo ufw enable

Bạn sẽ nhận được cảnh báo rằng lệnh này có thể làm gián đoạn các kết nối SSH hiện tại. Chúng tôi đã thiết lập quy tắc tường lửa cho phép kết nối SSH, do đó bạn có thể tiếp tục và trả lời với y. Tường lửa hiện đã hoạt động. Bạn có thể chạy lệnh sudo ufw verbose để xem các quy tắc đã được thiết lập.
Vậy là bạn đã hoàn thiện việc thiết lập tường lửa với UFW trên Ubuntu 16.04. Ở bài viết tiếp theo, chúng tôi sẽ hướng dẫn cách sử dụng UFW chi tiết hơn, như cho phép hoặc từ chối các loại kết nối khác nhau.
 

CyStack blog

Mẹo, tin tức, hướng dẫn và các best practice độc quyền của CyStack

Đăng ký nhận bản tin của chúng tôi

Hãy trở thành người nhận được các nội dung hữu ích của CyStack sớm nhất

Xem chính sách của chúng tôi Chính sách bảo mật.