Python · GitHub · Linux | 使用本机作为·代·理·服务器


致谢同学教我这种方法;最初发布于 20250123,补档重传。


01 配置 HTTP 代-理

假设本机的 c·l-a+s=h 的端口是 7890,则在 vscode 的 ssh config 里,修改:

Host server_alias
    HostName 123.45.67.162
    User <user_name>
    RemoteForward 127.0.0.1:7890 127.0.0.1:7890  # 添加这一行

这个文件应该在本机的 /user/.ssh 目录下。

然后,在服务器的 ~/.bashrc 里添加:

export http_proxy="http://127.0.0.1:7890"
export https_proxy="http://127.0.0.1:7890"
ulimit -n 65535

并 source ~/.bashrc 。

临时把·代+理=关掉:

export http_proxy=""
export https_proxy=""

02 配置 ssh 代/理

参考博客:https://seepine.com/git/ssh-proxy/

修改服务器 ~/.ssh 目录下的 config 文件,如果没有则新建这个文件:

Host github.com
    Hostname ssh.github.com
    Port 443
    User git
    ProxyCommand nc -v -x 127.0.0.1:7890 %h %p  # 添加这一行

如果没有 nc 命令,则需要

sudo apt update
sudo apt install netcat

通过 ssh -T [email protected] 来测试是否配置成功。

03 用服务器 A 做访问服务器 B 的~ 跳~ 板~ 机~

在 vscode 的 ssh config 里,修改:

Host server_A
    HostName 123.45.67.162
    User <user_name>

Host server_B
    HostName 123.45.67.165
    User <user_name>
    ProxyCommand ssh -W %h:%p server_A  # 添加这一行

04 一些修网记录

(参考:https://blog.csdn.net/a2267542848/article/details/119893382)

如果与服务器的连接突然断开了,想重新连服务器的时候,发现配置的-本·机+代=理^不 work,可以在服务器上尝试以下命令:

sudo netstat -plant | grep 7890  # 查询服务器上占住 7890 端口的程序
# 大概率是原来残留的那个连接,需要把它杀掉。示例输出:
# tcp 0 0 127.0.0.1:38302 127.0.0.1:7890 CLOSE_WAIT  1748765/nc
sudo kill -9 1748765

# 批量删除进程
sudo lsof -ti :7890 | xargs sudo kill -9

# 还可以尝试这个,只是需要 sudo apt-get install tcpkill
sudo tcpkill -i lo port 7890

然后退出服务器重连即可。



posted @ 2026-02-15 12:39  MoonOut  阅读(8)  评论(0)    收藏  举报