Jak przetestować połączenie bez usługi Telnet? [Zamknięte]


22

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 telnetpolecenia. Jaki byłby wygodny zamiennik? Maszyna A to CentOS.


2
Porozmawiaj z administratorami A i poinformuj ich o swoich potrzebach. Jeśli chodzi o alternatywy, zajrzyj do netcat. Jest to nie na temat, ponieważ nie masz uprawnień na danym komputerze, aby rozwiązać problem.
EEAA

„Porozmawiaj z administratorami A i poinformuj ich o swoich potrzebach”. - mało prawdopodobne w tym środowisku. \ Netcat nie jest zainstalowany. \ Chyba - jestem sysadminem na komputerze B.
Steve Bennett

Nie dotyczy to jednak tematu.
EEAA

5
Hmm, wygląda na to, że zakres SF jest znacznie węższy niż to, co faktycznie podano w FAQ. (np. meta.serverfault.com/questions/4111/… )
Steve Bennett

Jeśli jesteś administratorem komputera B, możesz jedynie upewnić się, że komputer B zezwala na dostęp. Zadaniem sysadminów maszyny A jest albo dostarczenie potrzebnych narzędzi, albo samodzielne wykonanie testów. Na obecnym etapie, ponieważ nie masz żadnego programu, którego można by użyć do zainicjowania połączenia, odpowiedź brzmi: nie, A nie może się połączyć.
Jenny D mówi Przywróć Monikę

Odpowiedzi:


26

iirc, telnet nie jest już domyślnie instalowany na komputerach Centos 6. jeśli nie masz narzędzi takich jak telnetlub ncdostę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()
>>> 

1
Rzeczywiście nie jest to wygodne, ale wykonało zadanie, gdy nic więcej nie było dostępne. (Potrzebowałem zweryfikować, że gpsd publikował na localhost: 2497 w systemie wbudowanym: sukces!)
Robert Calhoun


5

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.

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.