Telnetを使用せずに接続をテストする方法は?[閉まっている]


22

マシンAが特定のポートでマシンBに接続できるかどうかをテストしようとしています。マシンAのシステム管理者は、telnetコマンドを削除するのに適していると考えています。便利な代替品は何でしょうか?マシンAはCentOSです。


2
Aのシステム管理者と話をして、彼らにあなたの必要性を知らせてください。代替案に関する限り、netcatを調べてください。問題を解決するための問題のマシンに対する権限がないため、これはトピック外です。
EEAA

「Aのシステム管理者と相談して、あなたの必要性を伝えてください。」-この環境ではありそうもない。\ Netcatはインストールされていません。\推測-私はマシンBのsysadminです。
スティーブベネット

しかし、それは話題になりません。
EEAA

5
うーん、SFの範囲はFAQで実際に指定されているものよりもずっと狭いようです。(例:meta.serverfault.com/questions/4111/…
スティーブベネット

マシンBのsysadminである場合、できることは、マシンBがアクセスを許可していることを確認することだけです。マシンAのシステム管理者の仕事は、必要なツールを提供するか、テストを自分で行うことです。現在のところ、接続を開始するために使用できるプログラムがないため、答えは「いいえ、Aは接続できません」です。
ジェニーDは、モニカ

回答:


26

iirc、telnetはデフォルトでcentos 6マシンにインストールされなくなりました。のようなツールtelnetnc利用可能なツールがない場合は、常にPythonを使用してネットワークソケットと通信できます。(ただし、これが「便利な」要件に適合するかどうかはわかりません...)

接続を確立できるかどうかを簡単にテストするには:

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

これでエラーが発生しなければ、接続は問題ありません。データの受信/送信もテストする場合は、次のように続行できます。

>>> 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
実際、それは便利ではありませんが、他に何も利用できなかったときに仕事が完了しました。(gpsdが組み込みシステムのlocalhost:2497に公開されていることを検証する必要がありました:成功!)
ロバートカルホーン


5

私が思いついた方法:

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

$ telnet localhost 10123

それは失敗しましたが、それが実際に診断であるかどうかはわかりませんでした。さらにテストを行った結果、それは確かに診断的です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.