Come testare una connessione senza telnet? [chiuso]


22

Sto cercando di verificare se la macchina A può connettersi alla macchina B su determinate porte. Gli amministratori di sistema della macchina A hanno ritenuto opportuno rimuovere il telnetcomando. Quale sarebbe una sostituzione conveniente? La macchina A è CentOS.


2
Parla con gli amministratori di sistema di A e informali delle tue necessità. Per quanto riguarda le alternative, guarda netcat. Questo è off-topic in quanto non si dispone dei privilegi sulla macchina in questione per risolvere il problema.
EEAA,

"Parla con gli amministratori di sistema di A e informali delle tue necessità." - improbabile in questo ambiente. \ Netcat non è installato. \ Suppongo che io sia l'amministratore di sistema sulla macchina B.
Steve Bennett,

Ciò non lo rende in tema, però.
EEAA,

5
Hmm, sembra che l'ambito di SF sia molto più ristretto di quanto effettivamente specificato nelle FAQ. (ad es. meta.serverfault.com/questions/4111/… )
Steve Bennett,

Se sei l'amministratore di sistema della macchina B, tutto ciò che puoi fare è assicurarti che la macchina B consenta l'accesso. È compito dei amministratori di sistema della macchina A fornirti gli strumenti di cui hai bisogno o eseguire i test da soli. Allo stato attuale, poiché non si dispone di alcun programma che può essere utilizzato per avviare la connessione, la risposta è che no, A non può connettersi.
Jenny D dice di reintegrare Monica il

Risposte:


26

iirc, telnet non è più installato di default su macchine centos 6. se non disponi di strumenti simili telneto ncdisponibili, puoi sempre parlare con un socket di rete usando Python. (non sono sicuro se questo si adatta al tuo requisito "conveniente" però ...)

per verificare semplicemente se è possibile stabilire la connessione:

[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))                                                                                                                                                                                                           

Se questo non ha generato un errore finora, la connessione è ok. Se vuoi anche testare la ricezione / invio dei dati, puoi continuare così:

>>> 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
In effetti non è conveniente, ma ha fatto il lavoro quando nient'altro era disponibile. (Avevo bisogno di confermare che gpsd stava pubblicando su localhost: 2497 su un sistema incorporato: successo!)
Robert Calhoun,


5

Un metodo che mi è venuto in mente:

$ ssh -f -N machineA -L 10123:machineB:123

$ telnet localhost 10123

Non è riuscito, ma non ero sicuro che fosse effettivamente diagnostico o meno. Dopo aver testato ulteriormente, è davvero diagnostico.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.