透过代理连接ssh Lainmes Blog

45baike 2024-03-28 18次阅读

透过代理连接SSH

虽然折腾没什么成效,却终于知道如何让SSH通过代理了。这么一来,使用和都方便了不少。

这是通过SSH的来完成的。可以用

来查看相关信息。

通过SSH代理()

使用nc命令()实现,假设本地SSH代理的监听端口是3000,则为

-x127.0.0.1:3000%h%p

其中%h表示目标地址,%p是目标端口。这句可以用在命令行里,例如

ssh-oProxyCommand=nc-x127.0.0.1:3000%h%pgit@github.com

或者写入config文件(参见使用SSHCONFIG)

Host名称

HostName域名/IP

User用户

ProxyCommandnc-x127.0.0.1:3000%h%p

nc也可以用于HTTPS代理,这需要指定所使用的协议,即添加-Xconnect参数。比如ssh_config中的例子

ProxyCommand/usr/bin/nc-Xconnect-x192.0.2.0:8080%h%p

netcat也有很多其他用途,有兴趣可以看看

通过HTTP代理(SSHoverHTTP)

需要corkscrew这个软件

sudoaptitudeinstallcorkscrew

基本的语句是

ProxyCommandcorkscrew代理服务器地址端口%h%p

如果HTTP代理需要用户名/密码验证,则需要写上代理验证文件。假设代理服务器是192.168.0.1:808。用户名密码是name:pass,打算存放在~/.ssh/proxyauth。则有

ProxyCommandcorkscrew192.168.0.1808%h%p~/.ssh/proxyauth

新建~/.ssh/proxyauth文件,写上

name:pass

为dput设置代理(PPA上传)

很多时候连接到Launchpad的速度是非常慢的,找个好的代理可以改善这一情况。下载给apt设置代理就行了,方法多样。上传就需要让dput能通过代理,而它似乎没有内建的代理支持?不过dput支持sftp上传,也就可以使用给SSH设代理的方式来进行。

要使用sftp上传方式,先要生成相应的SSHkey,在终端下执行

ssh-keygen-trsa

全部默认按回车,这里没有设置密码。

到launchpad的个人主页上去,找到“SSHkeys:“,点击旁边的小图标进行编辑。将~/.ssh/id_rsa.pub的内容粘贴到文本框里,提交,这样就导入了公钥

在家目录下新建~/.dput.cf文件,内容如下(假设用户名是test)

[ppa]

fqdn=ppa.launchpad.net

method=sftp

incoming=~%(ppa)s/ubuntu

login=test

编辑~/.ssh/config文件,添加如下

Host*.launchpad.net

Usertest

ProxyCommand(相应的代理命令,如上)

注意:要安装bzrtools包才能正常上传。。

最后:我果然还是不习惯截图啊

相关阅读

  • ssh隧道代理方法
  • windows下用ssh做代理的方法
  • ssh 通过代理连接服务器
  • ssh 代理设置
  • linux 中国◆开ssh代理源社区
  • ssh代理
  • ssh代理
  • linux 中国◆开ssh代理源社区
  • 透过代理连接ssh Lainmes Blog
  • 分享到:QQ空间新浪微博腾讯微博人人网微信百度复制网址

    标签: 透过  代理  连接 


    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。