web-dev-qa-db-ja.com

CentOS 6.2でTFTPサーバーを機能させる方法

CentOS 6.2でTFTPサーバーをセットアップしようとしています。 /etc/xinet.d/tftp構成ファイルは次のとおりです。

service tftp
{
    disable = no
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -s /tftpboot -vvv
    per_source      = 11
    cps         = 100 2
    flags           = IPv4
}

Selinuxとファイアウォールが無効になっています。 /etc/hosts.allowおよび/etc/hosts.denyファイルは空です。 TFTPサーバーからファイルを取得しようとすると、ファイル転送が常に失敗し、/var/log/messagesに次のエラーが表示されます

Jul 11 03:16:53 localhost xinetd[4155]: xinetd Version 2.3.14 started with libwrap loadavg labeled-networking options compiled in.
Jul 11 03:16:53 localhost xinetd[4155]: Started working: 1 available service
Jul 11 03:17:00 localhost xinetd[4155]: START: tftp pid=4157 from=192.168.10.3
Jul 11 03:17:00 localhost in.tftpd[4158]: RRQ from 192.168.10.3 filename 1
Jul 11 03:17:00 localhost in.tftpd[4158]: sending NAK (0, Permission denied) to 192.168.10.3
Jul 11 03:17:01 localhost in.tftpd[4159]: RRQ from 192.168.10.3 filename 1
Jul 11 03:17:01 localhost in.tftpd[4159]: sending NAK (0, Permission denied) to 192.168.10.3
Jul 11 03:17:03 localhost in.tftpd[4160]: RRQ from 192.168.10.3 filename 1

tftpbootディレクトリの権限は(ls -lコマンドの出力)です。

drw-rw-rw-.   3 root root  4096 Jul 11 03:32 tftpboot

tftpbootディレクトリが(他のファイル/ディレクトリとは異なり)緑色の背景で(ls -lによって)表示されていることもわかります(なぜですか?緑色の背景はスティッキービット専用です)。

何を間違えたのですか? TFTPサーバーを機能させるにはどうすればよいですか?

5
Dima

/etc/xinet.d/tftp構成ファイルは正しいです。

/tftpbootの権限は755またはdrwxr-xr-xである必要があります。

Chkconfig --listがxinetdで有効にされたtftpを示していることを確認してください。

xinetd based services:
        chargen-dgram:  off
        chargen-stream: off
        daytime-dgram:  off
        .
        .
        rsync:          on
        tcpmux-server:  off
        tftp:           on
5
ewwhite

上記をすべて実行し(tftpを何度も実行しました)、CentOS7で動作させることができませんでした。私たちが何をしたとしても、Permisson問題を記述します。最後に@justjeffの提案と "setenforce 0"を取り、うまくいきました。

カーネルにはすべての最新パッチがあります。

Selinuxで再び問題が発生します。

0
TekOps

私はこれに数回遭遇しました。

確認 /etc/xinetd.confサーバーにxinetdデーモンへのアクセスを許可する名前が付けられているかどうかを確認し、/etc/Host.allowtftpおよびin.tftpdはネットワークで許可されています。

0
James E