私はフォローしていますこれtftpの使用に関するチュートリアル:
まず、必要なすべてのパッケージをインストールします。
sudo apt-get install xinetd tftpd tftp -y
次に、構成ファイルを作成します。
sudo nano /etc/xinetd.d/tftp
ファイルに次の内容を入れます。
service tftp
{
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = nobody
server = /usr/sbin/in.tftpd
server_args = var/lib/tftpboot -s
disable = no
}
これで、ディレクトリの所有権を変更します。
sudo mkdir /var/lib/tftpboot
sudo chown -R nobody:nobody /var/lib/tftpboot
sudo chmod -R 777 /var/lib/tftpboot
TFTPサービスを開始します。
sudo service xinetd stop
sudo service xinetd start
その後、TFTPが正しく機能していることを確認してください。
root@ravi-Inspiron-N5010:/home/ravi# netstat -na | grep LIST | grep 69
unix 2 [ ACC ] STREAM LISTENING 16171 @/com/ubuntu/upstart-session/1000/1692
root@ravi-Inspiron-N5010:/home/ravi#
netstatの出力はチュートリアルで述べたものとは異なります。
tcp 0 0 0.0.0.0:69 0.0.0.0:* LISTEN
答え1
TFTPはUDPベースのプロトコルなので、「LISTEN」または「LISTENING」という行が見つかりません。
走るnetstat -na | grep udp
あなたが何を得るかを確認してください。
答え2
述べたように、出力は十分に正当なように見えます。しかし、問題は実際にクライアントを介してTFTPサーバーにアクセスしてみましたか?相手が聞いているかどうかを確認する唯一の方法は...
1つは、これがUbuntuであれば、ステップの1つを変更する必要があるかもしれません。デフォルトでは、次のようになります。
sudo service xinetd restart
いいえ
sudo service xinetd stop
sudo service xinetd start
upstart によって xinetd が生成されるので、4 段階だけ変更するだけです。 「service xinetd restart」を使用して再起動する必要があります – BЈовић 2013-09-04 12:14 https://askubuntu.com/questions/201505/how-do-i-install-and-run-a-tftp-server
別のオプションは、別のTFTP(tftpd-hpa、atftpdなど)サーバーを実行してみることです。
http://www.cyberciti.biz/faq/install-configure-tftp-server-ubuntu-debian-howto/
答え3
どのチュートリアルに従ったのか言及していません。しかし、出力はかなり合法的なようです。 tftpはxinetdラッパーを使用するため、実際に接続されたクライアントがある場合にのみnetstatで接続を表示できます。試してみて、netstatをもう一度実行してみてください。
netstat -tupan
ファイアウォールがこのポートへの接続を許可していることを確認してください。
iptables -I INPUT -s <your subnet> -p tcp --dport 69 -j ACCEPT
iptables -I INPUT -s <your subnet> -p udp --dport 69 -j ACCEPT
ここで、「あなたのサブネット」は192.168.1.0/24です。