私は最近ソケットプログラミングを学んでいて、ちょうどtcp / ipソケットを学び始めました。私の学習資料daytime
を実行してlocalhostサービスに接続する例を見ると、telnet 127.0.0.1 13
予想される結果はTelnetセッションを開く必要があることです。daytime 13/tcp
私のファイルに ""エントリがあり、/etc/services
サービスxinetd
が実行されていますが、telnetコマンドを試みるとすぐに "接続が拒否されました"というメッセージが表示されます。
尋ねる:週間サービス業務にリモートでログインできないのはなぜですか?
尋ねる:Telnet接続を許可できる他のローカルホストサービスはありますか?tcp
エントリを含むランダムなサービス選択にTelnet接続を試みましたが、/etc/services
すべて同じ「接続拒否」エラーが発生しました。
私の短期的な目標は、localhost tcpサービスへのTelnet接続に成功した学習資料を複製することです。それ以外の場合inetd
は、実行を通じて学びたい他のタスクを実行します。
>telnet 127.0.0.1 13
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
>telnet 127.0.0.1 49000
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
>telnet 127.0.0.1 9009
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
>uname -a
Linux linuxbox 3.11.10-301.fc20.x86_64 #1 SMP Thu Dec 5 14:01:17 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
答え1
/etc/services
実際に実行されているサービスを表すものではありません。バラより/etc/servicesの目的。実行中のサービスを検索または開始する必要があります。あなたはそれを見るとあなたが何を聞いているのかを知ることができますnetstat -nlt
。具体的なサービスはさまざまですが、次のように表示されます。
$ netstat -nlt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp6 0 0 :::3306 :::* LISTEN
tcp6 0 0 :::111 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:631 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
だから:
daytime
サービスが実行されていない可能性があります。リストに表示されない場合(上記のリストで私が実行していないことがわかります)、そのポートでリッスンしているものは何もありません。サービスがインストールされている場合は、サービスを開始できます。何がインストールされアクティブになっているかに応じて、他の多くの潜在的なサービスがあります。上記のリストでは、ポートは
25
メールサービスをリッスンしています。だから、telnet
ポート25を介して接続することができます。 Telnetはデフォルトでインストールされていないため、connectを使用しますが、nc
原則は同じです。$ nc 127.0.0.1 25 220 centos7.feedthecoder.com ESMTP Postfix HELO me.theworld.com ...
編集:コメントで述べたように、これは確かにファイアウォールの問題かもしれません。通常、インストールのためブロックされませんが、127.0.0.1
常に可能です。
また、ディストリビューションによってはインストールdaytime
できない場合があり、これは追加の障害になる可能性があります。インストールされている場合は、通常のサービスの開始(または同等のディストリビューションなど)から起動できる必要があります。service start daytime
編集:これはdaytime
内部サービスとしてのみ利用可能であることがわかりました。xinetd
したがって、サービスのリストに関する上記の情報が正しい間に、そのサービスがインストールされ、ファイルが設定されていることをdaytime
確認してください。xinetd
/etc/xinetd/daytime-stream
disabled
no