私のシステムでTFTPが正常に動作することはできません。私は/etc/default/tftpd-hpa
すべてと同様に権限を設定しましたが、/srv/tftp/
これを行うたびにタイムアウトが発生します(そしてlocalhostで127.0.0.1に接続されます)。 TFTPがどこかに文書化されていないようですが、そうですか?この問題をデバッグする方法についてご協力いただきありがとうございます。777
/srv/
get test
編集#1
/srv
これは所有するコンテンツを持つ(K)Ubuntuシステムにあり、root:root
今はに変更しましたが、nobody:nogroup
まだ同じタイムアウトが発生します。
$ ls -la
total 12
drwxrwxrwx 3 nobody nogroup 4096 Nov 5 08:47 .
drwxrwxrwx 3 nobody nogroup 4096 Nov 5 2013 ..
drwxrwxrwx 2 nobody nogroup 4096 Nov 5 2013 artifacts
-rwxrwxrwx 1 nobody nogroup 0 Nov 5 08:48 test
-rw-r--r-- 1 reg reg 0 Nov 5 08:47 vx.bin
reg@ubuntu:/srv/tftp$tftp 127.0.0.1
tftp> get test
Transfer timed out.
編集#2
tftp
私は実行中のインスタンスがないようだと気づいて起動しようとしましたが、#tftp
Ubuntuでapt-get install cobbler
Cobblerをインストールする必要があるため、そうしました。その後、再試行して次のような結果を得ました。
# tftpd
Traceback (most recent call last):
File "/usr/sbin/tftpd", line 51, in <module>
import tornado.ioloop as ioloop
ImportError: No module named tornado.ioloop
root@ubuntu:/srv#
これが何を意味するのか疑問に思います。手がかりはありますか?
ベストアンサー1
私は最近この問題を何度も直接処理しなければなりませんでした。
- tftpdはxinetdで実行されますか、それとも別のデーモンとして実行されますか?
- /etc/hosts.allow または hosts.deny を変更する必要があります。
- SELinuxが有効になっていますか(「getenforce」コマンドを使用して確認)?
- ホストファイアウォールが実行されていますか? (サービス iptables 状態)
- tftpdがデータディレクトリとして使用しているディレクトリは確実ですか?
- 「インポートしたい」ファイルは実際に存在しますか?
私の賭けは上記の組み合わせです。ファイアウォール、SELinux、データディレクトリの場所など。
/ srvがモード0777で開かれたくありません。また、tftpデータディレクトリに対してもこれを行う必要はありません。誰でも読むことができるファイルだけが必要です。ファイルをサーバーに置かない限り。この場合は、事前にファイルを作成してファイルを作成するときに誰でも書き込むように設定する必要があります。
頑張ってください!