Próbuję sprawdzić, czy komputer A może połączyć się z komputerem B na niektórych portach. Administratorzy komputera A uznali za stosowne usunięcie telnet
polecenia. Jaki byłby wygodny zamiennik? Maszyna A to CentOS.
Próbuję sprawdzić, czy komputer A może połączyć się z komputerem B na niektórych portach. Administratorzy komputera A uznali za stosowne usunięcie telnet
polecenia. Jaki byłby wygodny zamiennik? Maszyna A to CentOS.
Odpowiedzi:
iirc, telnet nie jest już domyślnie instalowany na komputerach Centos 6. jeśli nie masz narzędzi takich jak telnet
lub nc
dostępnych, zawsze możesz rozmawiać z gniazdem sieciowym za pomocą Pythona. (nie jestem jednak pewien, czy pasuje to do twoich „wygodnych” wymagań ...)
aby po prostu przetestować, czy można ustanowić połączenie:
[gryphius@ut ~]$ python
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import socket
>>> conn=socket.create_connection(('gmail-smtp-in.l.google.com',25))
Jeśli do tej pory nie spowodowało to błędu, połączenie jest prawidłowe. Jeśli chcesz również przetestować odbieranie / wysyłanie danych, możesz kontynuować w ten sposób:
>>> input=conn.makefile()
>>> print input.readline()
220 mx.google.com ESMTP p2si6911139eeg.7 - gsmtp
>>> conn.sendall('HELO example.com\r\n')
>>> print input.readline()
250 mx.google.com at your service
>>> conn.sendall('QUIT')
>>> conn.close()
>>>
Dowolny z: nc (netcat), nmap, hping.
http://linux.byexamples.com/archives/258/when-netcat-act-as-telnet-client-it-becomes-better/
Metoda, którą wymyśliłem:
$ ssh -f -N machineA -L 10123:machineB:123
$ telnet localhost 10123
Nie powiodło się, ale nie byłem pewien, czy to rzeczywiście było diagnostyczne, czy nie. Po dalszych testach jest rzeczywiście diagnostyczny.