Jak telnet za pomocą uwierzytelniania proxy?


15

Jestem za serwerem proxy w mojej szkole. Wykorzystuje proste uwierzytelnianie nazwy użytkownika i hasła. I łączę się z serwerem proxy do portu 3128. Teraz chcę po prostu telnet powiedzieć po prostu dowolną stronę internetową w Internecie

$ telnet www.google.com 80

to mi daje

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

Jak mogę zdefiniować ustawienia proxy dla telnet? Ustawiłem już zmienne środowiskowe http_proxyi HTTP_PROXY. Zastosowano także systemowy serwer proxy.

Odpowiedzi:


9

Możesz do tego użyć Proxychains.

Najpierw zainstaluj serwery proxy za pomocą polecenia:

$ apt-get install proxychains

Następnie skonfiguruj ustawienia proxy w /etc/proxychains.confpliku.

Dodaj w końcu te wiersze dla serwera proxy HTTP i HTTPS.

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

Teraz możesz zrobić telnet za pomocą następującego polecenia:

$ proxychains telnet www.google.com 80

dostaję ten błąd: aakash @ sigdel: ~ $ proxyychnet telnet www.google.com 3128ProxyChains-3.1 ( proxyychains.sf.net ) | DNS-response |: sigdel nie istnieje | żądanie DNS | www.google.com | S-chain | - <> - 127.0.0.1:9050-<-- timeout | DNS-response |: www.google.com nie istnieje telnet: nie można rozwiązać www.google.com/3128 : Nieznany błąd
Aakash Sigdel,

@AakashSigdel: Przepraszam, ostatnie polecenie, które napisałem, powinno być $ proxychains telnet www.google.com 80. Powinno teraz działać !!
pradeepchhetri

1
@pradeepchhetri mam błąd, gdy używam tego 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
Jan

20

Możesz zrobić to, co robi przeglądarka , tj. Połączyć się z serwerem proxy,

$ telnet proxy-server 3128

i porozmawiaj z tym. Jeśli nie było uwierzytelnienia, proste GETżądanie (po którym następują dwie znaki nowej linii ( Enter)) z pełną nazwą hosta i protokołem, np

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

powinno wystarczyć. Ponieważ potrzebujesz uwierzytelnienia, musisz podać nazwę użytkownika i hasło zakodowane base64 w Proxy-Authenticationnagłówku, np

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

Aby utworzyć ciąg base64, możesz użyć echo -n username:password | openssl base64


Link już nie żyje. czy możesz zaktualizować?
Jan

Sporządzono (rodzaj) ...
sr_

1
Działa to do sprawdzania serwerów HTTP, ale co z serwerem sFTP?
рüффп
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.