| 開発者 | ロブ・ブラウン |
|---|---|
| 最終リリース | 2.3.15 / 2012年5月9日 |
| リポジトリ | github.com/xinetd-org/xinetd |
| 書かれた | C、シェル[1] |
| オペレーティング·システム | Unixライク |
| タイプ | デーモン |
| ライセンス | オープンソース[2] |
| Webサイト | web.archive.org/web/20051227095035/http://www.xinetd.org:80/ [リンク切れ ] |
コンピュータネットワークにおいて、xinetd(Extended Internet Service Daemon)は、多くのUnix系システム上で動作し、インターネットベースの接続を管理するオープンソースの スーパーサーバー デーモンです。[3]
これは、最近のLinuxディストリビューションのほとんどで非推奨となっている古いinetd(「インターネットデーモン」)よりも安全な代替手段を提供します。[4]
説明
xinetdはネットワーク経由で着信するリクエストをリッスンし、そのリクエストに対して適切なサービスを起動します。 [5]リクエストはポート番号を識別子として使用して行われ、xinetdは通常、リクエストを処理するために別のデーモンを起動します。 [6]特権ポート番号と非特権ポート番号の両方を使用してサービスを開始するために使用できます。
xinetd は、TCP ラッパーACLなどのアクセス制御メカニズム、広範なログ機能、時間に基づいてサービスを利用可能にする機能を備えています。システムが起動できるサーバーの数を制限したり、ポート スキャナーなどから 保護するための展開可能な防御メカニズムを備えています。
Mac OS Xの一部の実装では、このデーモンはFTPやtelnetなどのさまざまなインターネット関連サービスを開始および管理します。inetd の拡張形式であるため、セキュリティが強化されています。Mac OS X v10.3では inetd に取って代わり、その後Mac OS X v10.4ではlaunchd に取って代わりました。ただし、Apple は互換性のために inetd を保持しています。
構成
xinetd の設定は、デフォルトの設定ファイル /etc/xinetd.conf にあり、xinetd がサポートするサービスの設定は、/etc/xinetd.d ディレクトリに保存されている設定ファイルにあります。各サービスの設定には通常、xinetd がサービスを有効にするか無効にするかを制御するスイッチが含まれています。
RFC 868 タイム サーバーの設定ファイルの例:
# デフォルト: オフ
# 説明: RFC 868タイムサーバー。このプロトコルは、
# サイトに依存しない、機械が読み取り可能な日付と時刻。タイムサービスは
# 発信元に1月1日の深夜からの秒数を返す
#1900。
# これは TCP バージョンです。
サービス時間
{
無効 = はい
タイプ = 内部
id = タイムストリーム
socket_type = ストリーム
プロトコル = tcp
ユーザー = ルート
待つ = いいえ
}
# これはudpバージョンです。
サービス時間
{
無効 = はい
タイプ = 内部
id = タイムグラム
ソケットタイプ = dgram
プロトコル = udp
ユーザー = ルート
待つ = はい
}
先頭に「#」文字がある行はコメントであり、サービスには影響しません。サービスには 2 つのバージョンがあります。1 つ目は伝送制御プロトコル(TCP) に基づくもので、2 つ目はユーザー データグラム プロトコル(UDP) に基づくものです。サービスの種類と計画された使用法によって、必要なコア プロトコルが決まります。簡単に言うと、UDP は、パッケージを指定された順序に並べ替えたり整合性を保証したりする機能がないため、大量のデータ転送を処理できませんが、TCP よりも高速です。TCP にはこれらの機能がありますが、速度は遅くなります。各バージョンには、中括弧内に 2 つの列があります。1 つ目はオプションのタイプ、2 つ目は適用される変数です。
無効化オプションは、サービスを実行するかどうかを切り替えるスイッチです。ほとんどの場合、デフォルトの状態はyesです。サービスを有効にするには、noに変更します。
サービスには 3 つのタイプがあります。サービスが xinetd によって提供される場合はタイプがINTERNAL 、リモート プロシージャ コール(通常は /etc/rpc ファイルにリストされている)に基づく場合はRPC 、サービスが /etc/services ファイルにも /etc/rpc ファイルにもない場合は UNLISTEDになります。
idはサービスの一意の識別子です。
socket_typeは、サービスを通じてデータを送信する方法を決定します。stream、dgram、raw の3 つのタイプがあります。最後のタイプは、非標準プロトコルに基づいてサービスを確立する場合に便利です。
ユーザーオプションを使用すると、実行中のサービスの所有者となるユーザーを選択できます。セキュリティ上の理由から、 非ルートユーザーを選択することを強くお勧めします。
waitがyesの場合、xinetd は接続がある場合にサービスの要求を受信しません。そのため、接続数は 1 つに制限されます。一度に 1 つの接続のみを確立したい場合に、非常に優れた保護を提供します。
xinetd にはさらに多くのオプションが用意されています。ほとんどの Linux ディストリビューションでは、使用可能なオプションの完全なリストとその説明は、「man xinetd.conf」コマンドで参照できます。
新しい設定を適用するには、 xinetdプロセスにSIGHUPシグナルを送信して設定ファイルを再読み込みさせる必要があります。これは次のコマンドで実行できます: 。PIDはxinetdの実際のプロセス識別子番号で、コマンドで取得できます。[7] [8]kill -SIGHUP "PID"pgrep xinetd
参考文献
- ^ "xinetd-org/xinetd". GitHub . 2014年7月10日閲覧。
- ^ 「著作権」。GitHub。2003年2月19日。2014年7月10日閲覧。
- ^ Wells, Nicholas (2000)。「4: シンプル ネットワーク サービスの使用」。Linux のインストールと管理ガイド。第 1 巻。マサチューセッツ州ボストン: Cengage Learning EMEA。167 ページ。ISBN
9780619000974. 2017-07-03取得。
[...] スーパーサーバー (メタサーバーとも呼ばれる) [...] は複数のネットワーク ポートをリッスンし、そのポートにクライアント接続が到着すると適切なサービスを開始します。最も広く使用されているスーパーサーバー プログラムは、インターネット デーモン(inetd )と呼ばれます。人気が高まっているもう 1 つのスーパーサーバーは、拡張インターネット デーモン ( xinetd ) です [...]。
- ^ Smith, Roderick W. (2001). 「ネットワーキング」. Linux スタディガイド. Sybex Press. p. 365. ISBN 0-7821-2939-0。
- ^ Negus, C. (2002). 「ネットワーク サービスの実行」. Red Hat Linux 8 バイブル. Wiley Publishing Inc. p. 1007. ISBN 0-7645-4968-5。
- ^ 「Ubuntu Manpage: xinetd - the extension Internet services daemon」。Ubuntu 。 2001年6月14日。2019年9月23日時点のオリジナルよりアーカイブ。 2020年4月21日閲覧。
動作方法から、xinetd(およびinetd)はスーパーサーバーとも呼ばれます。(...)これまでのところ、スーパーサーバーが存在する唯一の理由は、ほとんどの期間休止状態になる可能性のある多くのプロセスをフォークすることを回避することでシステムリソースを節約することでした。
- ^ Linux マニュアルページ: xinetd.conf(5) http://linux.die.net/man/5/xinetd.conf
- ^ ペレ、ラスロー (2005)。 「ハロザティ・ソルガルタタソク」。GNU/Linux は、II を実行します。キスカプ Kft. (ハンガリー)。 107–136ページ。ISBN 963-9301-98-1。
外部リンク
- openSUSE フォーク。openSUSE、Debian、Fedora、Gentoo などの複数のディストリビューションのすべてのパッチが含まれます。
