Hướng dẫn cấu hình port forwarding trên centos 7 bằng iptables

Trong bài này tôi sẽ hướng dẫn các bạn cách sử dụng dịch vụ iptables trên hệ điều hành centos 7 để chuyển tiếp dịch vụ từ một cổng sang một máy chủ khác.

Bước 1: chúng ta cần kiểm tra xem hệ thống đã bật tính năng forwarding port chưa bằng lệnh sau:

cat /proc/sys/net/ipv4/ip_forward

Nếu nhận về giá trị bằng 0 tức là chức năng forward chưa được bật, các bạn thực hiện lệnh này để bật chức năng forward lên nhé

echo 1 > /proc/sys/net/ipv4/ip_forward

Bước 2: Thực hiện các lệnh sau để thêm luật (rule) cho iptables

iptables -t nat -A PREROUTING -p tcp --dport $PORT -j DNAT --to-destination $NEW_IP:$PORT_NEW
iptables -t nat -A POSTROUTING -p tcp -d $NEW_IP --dport 80 -j SNAT --to-source $OLD_IP
iptables -t nat -A POSTROUTING -j MASQUERADE

Trong đó:

$NEW_IP là địa chỉ ip mới

$OLD_IP là địa chỉ ip cũ

$PORT_NEW là cổng dịch vụ đang chạy trên server mới

$PORT là cổng dịch vụ trên server cũ

Bước 3: các bạn chạy lệnh sau để lưu cấu hình iptables ra file cấu hình

service iptables save

Bước 4: Mở file cấu hình iptables tại vị trí /etc/sysconfig/iptables và tìm đến dòng -A FORWARD -j REJECT –reject-with icmp-host-prohibited sau đó thêm 2 dòng dưới đây vào phía trên dòng vừa tìm được

-A FORWARD -i eth0 -j ACCEPT
-A FORWARD -o eth0 -j ACCEPT

Bước cuối cùng: Cac bạn khởi động lại dịch vụ iptables

systemctl restart iptables

Chú ý: để kiểm tra xem cấu hình iptables đã hoạt động chưa thì các bạn có thể sử dụng chương trình telnet từ một máy tính khác trong cùng mạng với máy tính được cấu hình. Nếu bạn đứng trên cùng máy tính được cấu hình port forwarding thì sẽ không thể kiểm tra được.

Chúc các bạn thành công

About the author

Trả lời