【port forwarding】rinetd
https://github.com/samhocevar/rinetd
rinetd
是一個簡單的 TCP 端口轉發工具,它可以將進入的 TCP 連接重定向到指定的目標 IP 地址和端口。以下是 rinetd
的基本使用方式:
-
安裝
rinetd
:在大多數 Linux 系統上,你可以使用包管理器進行安裝。例如,在基於 Debian/Ubuntu 的系統上,可以運行:
sudo apt-get install rinetd
在基於 Red Hat/CentOS 的系統上,可以使用
yum
:sudo yum install rinetd
-
配置
rinetd
:配置文件通常位於
/etc/rinetd.conf
,你可以使用文本編輯器(如nano
或vim
)來編輯它:sudo nano /etc/rinetd.conf
在配置文件中,每行包含一條規則,指定了本地和遠程端口。格式如下:
bindaddress bindport connectaddress connectport
bindaddress
:本地 IP 地址,可以是 0.0.0.0 表示所有網卡。bindport
:本地監聽端口。connectaddress
:目標伺服器的 IP 地址。connectport
:目標伺服器的端口。
例如:
0.0.0.0 8080 192.168.1.100 80
這條規則將本地機器的 8080 端口的請求重定向到 IP 地址為 192.168.1.100,端口為 80 的伺服器。
-
啟動
rinetd
服務:保存配置文件並啟動
rinetd
服務:sudo service rinetd restart
或者,使用
systemctl
:sudo systemctl restart rinetd
這將讓
rinetd
讀取配置文件並應用轉發規則。 -
確認
rinetd
是否運作:你可以使用以下命令檢查
rinetd
是否正在運行:sudo service rinetd status
或者,使用
systemctl
:sudo systemctl status rinetd
如果服務正在運行,而且配置文件沒有錯誤,則
rinetd
將開始將來自本地端口的請求轉發到指定的目標伺服器。
請注意,rinetd
主要用於簡單的 TCP 端口轉發,並不支持高級功能。對於更複雜的需求,可能需要考慮使用其他工具或設置伺服器上的防火牆規則。