Ssh
如何在終端中使用 socks 代理來執行 youtube-dl 等命令?
我通過執行以下命令連接到遠端 ssh 伺服器:
ssh -D 12345 bob@myserver.com
這將創建一個 socks 代理,我可以將其與 Firefox 一起使用以繞過我所在國家/地區的審查制度。但是,我不能在命令行中利用它。
假設我的國家/地區禁止訪問 youtube。如何使用 ssh 連接執行以下命令:
youtube-dl "youtube.com/watch?v=3XjwiV-6_CA"
不被政府封鎖?如何為所有終端命令設置 socks 代理?
Youtube-dl 不支持 SOCKS 代理。有一個功能請求,其中包含幾個工作建議的連結。
Youtube-dl 支持開箱即用的 HTTP 代理。要從這種支持中受益,您需要在
myserver.com
. 幾乎任何輕量級代理都可以,例如tinyproxy。代理只需要監聽本地連接(Listen 127.0.0.1
intinyproxy.conf
)。如果 HTTP 代理正在偵聽埠 8035 (Port 8035
),請執行以下 ssh 命令:ssh -L 8035:localhost:8035 bob@myserver.com
並設置環境變數
http_proxy
和https_proxy
:export http_proxy=http://localhost:8035/ https_proxy=http://localhost:8035/ youtube-dl youtube.com/watch?V=3XjwiV-6_CA
ssh -D 8080 name@myserver.com export http_proxy=socks5://127.0.0.1:8080 https_proxy=socks5://127.0.0.1:8080 youtube-dl "youtube.com/watch?V=3XjwiV-6_CA"