Làm cách nào để định cấu hình UFW để cho phép Chuyển tiếp IP?


18

Tôi đã cài đặt UFW, OpenVPN và Virtualbox trên máy chủ nhà của tôi. Tôi có một mạng chỉ lưu trữ cho các máy khách ảo của mình (vboxnet0) được thiết lập với dải IP 10.0.1.0 và một dải IP khác 10.0.0.0 được định cấu hình ở đầu kia của kết nối OpenVPN.

Chuyển tiếp IP được cấu hình trên máy chủ, vì vậy khi UFW bị tắt, họ có thể nói chuyện với nhau mà không gặp vấn đề gì. Tuy nhiên, tôi muốn chạy UFW vì máy chủ này sẽ có thể truy cập web và tôi muốn một số kiểm soát truy cập.

Làm cách nào tôi có thể định cấu hình UFW để cho phép loại lưu lượng này?

Tôi đã thử nhiều cách kết hợp khác nhau: ufw allow allow in|out on vboxnet0|tun0không thành công.

Các quy tắc UFW của tôi là:

root@gimli:~# ufw status
Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
Anywhere                   ALLOW       10.0.0.0/16
Anywhere on vboxnet0       ALLOW       Anywhere
Anywhere on tun0           ALLOW       Anywhere

Anywhere                   ALLOW OUT   Anywhere on vboxnet0
Anywhere                   ALLOW OUT   Anywhere on tun0

Mọi sự trợ giúp sẽ rất được trân trọng.

Câu trả lời:


20

Tôi đã hiểu rồi.

Chỉnh sửa /etc/default/ufwvà đặt DEFAULT_FORWARD_POLICYthành CHẤP NHẬN :

DEFAULT_FORWARD_POLICY="ACCEPT"

10
Có cách nào chỉ cho phép nó chuyển tiếp các cổng cụ thể, không đặt nó thành CHẤP NHẬN mọi thứ không?
Marcus Downing

1
Tôi đoán bạn cần khởi động lại ufw sau khi chỉnh sửa tệp:service ufw restart
Minh Danh

10

Bây giờ có thể - từ trang người đàn ông ufw:

Các quy tắc cho lưu lượng truy cập không dành cho chính máy chủ mà thay vào đó là lưu lượng nên được định tuyến / chuyển tiếp qua tường lửa nên chỉ định từ khóa tuyến trước quy tắc (quy tắc định tuyến khác biệt đáng kể so với cú pháp PF và thay vào đó, hãy tính đến các quy ước chuỗi FORWARD) . Ví dụ:

     ufw route allow in on eth1 out on eth2

Điều này sẽ cho phép tất cả lưu lượng truy cập được chuyển đến eth2 và truy cập eth1 để vượt qua tường lửa.

     ufw route allow in on eth0 out on eth1 to 12.34.45.67 port 80 proto tcp

Quy tắc này cho phép mọi gói tin đến trên eth0 đi qua tường lửa trên eth1 đến cổng tcp 80 vào ngày 12.34.45.67.

Ngoài các quy tắc và chính sách định tuyến, bạn cũng phải thiết lập chuyển tiếp IP. Điều này có thể được thực hiện bằng cách đặt các mục sau trong /etc/ufw/sysctl.conf:

     net/ipv4/ip_forward=1
     net/ipv6/conf/default/forwarding=1
     net/ipv6/conf/all/forwarding=1

sau đó khởi động lại tường lửa:

     ufw disable
     ufw enable

Xin lưu ý rằng cài đặt bộ điều chỉnh nhân là hệ điều hành cụ thể và cài đặt hệ thống ufw có thể bị ghi đè. Xem trang hướng dẫn sysctl để biết chi tiết.


1
Đối với những người trong chúng tôi muốn cho phép lưu lượng tcp giữa các máy khách OpenVPN trên máy chủ OpenVPN, điều này hoạt động. Ví dụ: tuyến ufw cho phép vào tun0 out trên tun0
logion

Đối với hồ sơ ufw routecó mặt kể từ phiên bản 0,34
Joril

7

nếu bạn đặt DEFAULT_FORWARD_POLICY thành ACCEPT trong / etc / default / ufw, tường lửa sẽ chuyển tiếp tất cả các gói bất kể cài đặt của giao diện người dùng.

Tôi nghĩ rằng giao diện người dùng chỉ có nghĩa là để lọc vào / ra đơn giản. Để chuyển tiếp, bạn cần thêm quy tắc iptables trong /etc/ufw/b Before.rules như ở đây:

-A ufw-before-forward -i eth1 -p tcp -d 192.168.1.11 --dport 22 -j ACCEPT

Bạn có thể đã có một quy tắc cho phép các kết nối từ trong ra ngoài và một quy tắc khác cho phép các gói từ các phiên tcp liên quan và được thiết lập trở lại.

Tôi không phải là chuyên gia về iptables, tôi đã mất một thời gian rất lâu để tìm ra điều này (với ip6tables, nhưng nó sẽ tương tự). Có lẽ đây không phải là tất cả trong trường hợp của bạn.

Lời chào tốt nhất


4

Lệnh ufw này hoạt động tốt với tôi: sudo ufw default allow FORWARD

Để chắc chắn thay đổi được áp dụng: sudo service ufw restart


Điều này đưa ra một lỗi "Cú pháp không hợp lệ". Tài liệu nói "HƯỚNG là một trong những đến, đi hoặc định tuyến".
ColinM

@ColinM cái này hoạt động với tôi trên Xubfox 16.04.5 LTS
baptx

FORWARDhoạt động như bí danh cho routedtrên Ubuntu
patricktokeeffe
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.