我正在創建一個程序,該程序創建一個到中間人服務器的反向SSH隧道,以便本地網絡中不能直接連接的計算機仍然可以從外部訪問本地網絡。我爲libssh庫選擇了這個選項,我在打開一個通道到本地主機以將傳入數據轉發到本地應用程序時遇到問題。打開SSH會話並請求將數據轉發到本地計算機似乎工作正常。但是,我無法打開一個通道到本地主機讀取和寫入本地應用程序的數據。我正在試圖打開連接到本地主機的方式:使用libssh打開本地主機的通道
ssh_channel localhost_channel = ssh_channel_new(my_ssh_session);
rc = ssh_channel_open_forward(localhost_channel, "127.0.0.1", 5900,
"localhost", 5555);
if (rc != SSH_OK) {
myLog << "Could not open channel to localhost";
exit(-1);
}
我的程序沒有退出,所以設置了SSH_OK。日誌但是說,連接被拒絕。並且有一個工作的VNC服務器運行在5900端口上。我可以看到連接請求進入。所以我很確定問題來自與本地主機的連接。我真的很感激任何建議/提示。
我在Windows 10上使用libssh 0.7.2並使用msvc編譯。
乾杯
您是否找到解決方案? –
是的,但可能不是你正在尋找的那個。我們決定切換到這個應用程序的C#。 – larzz11
很酷。 .Net中有這樣一個好的庫嗎? –