如何通过代理身份验证进行远程登录?


15

我在大学里的代理服务器后面。它使用简单的用户名和密码验证。我将代理服务器连接到端口3128。现在,我想通过telnet简单地说互联网上的任何网站,例如

$ telnet www.google.com 80

这给了我

error telnet: could not resolve www.udacity.com/80: Name or service not known

如何定义telnet的代理设置?我已经设置了环境变量http_proxyHTTP_PROXY。也有应用系统范围的代理。

Answers:


9

您可以为此使用代理链。

首先使用以下命令安装代理链:

$ apt-get install proxychains

然后在/etc/proxychains.conf文件中配置代理设置。

最后,为HTTP和HTTPS代理添加这些行。

http    proxy-ip   proxy-port    username        password
https   proxy-ip   proxy-port    username        password

现在,您可以使用以下命令进行telnet:

$ proxychains telnet www.google.com 80

我收到此错误:aakash @ sigdel:〜$ proxychains telnet www.google.com 3128ProxyChains-3.1(proxychains.sf.net)| DNS响应|:sigdel不存在| DNS请求| www.google.com | S链|-<>-127.0.0.1:9050-<--超时| DNS响应|:www.google.com不存在telnet:无法解析www.google.com/3128 :未知错误
Aakash Sigdel 2012年

@AakashSigdel:对不起,我写的最后一个命令应该是$ proxychains telnet www.google.com 80。现在应该可以工作了!
pradeepchhetri 2012年

1
@pradeepchhetri,当我使用此proxychains telnet时出现错误www.google.com 80ProxyChains-3.1 (http://proxychains.sf.net) |DNS-response|: xyz does not exist |DNS-request| www.google.com |S-chain|-<>-proxy-ip:proxy-port-<><>-4.2.2.2:53-<--denied |DNS-response|: www.google.com does not exist telnet: could not resolve www.google.com/80: Unknown error
约翰

19

您可以执行浏览器的操作,即连接到代理,

$ telnet proxy-server 3128

和它交谈。如果没有身份验证,则使用完整的主机名和协议的简单GET请求(后跟两个换行符(Enter)),例如

GET http://www.google.com/ HTTP/1.1

应该足够了。由于需要身份验证,因此需要在Proxy-Authentication标头中提供以base64编码的用户名和密码,例如

GET http://www.google.com/ HTTP/1.1
Proxy-Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=

要创建base64字符串,可以使用 echo -n username:password | openssl base64


链接已死。你可以更新吗?
约翰

完成(种类)...
sr_15年

1
这适用于检查HTTP服务器,但是sFTP服务器呢?
рüффп
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.