中古で購入したIX2215のファームアップを行うため,自分が普段利用しているPCにtftpサーバ起動して穴開けて作業終わったらまた閉じてなんてやりたくないので,proxmoxで動作するfedora上にtftpサーバを起動した.ちょっとはまったところがあったのでメモしておく.
fedoraでtftpサーバの一時起動を行う方法
tftpサーバは常時利用することはなくまたいつでも簡単に起動することができるので,テスト用サーバを用意して一時的に利用することにする.proxmoxでクローンしたりテンプレートから新たに作ったり新規インストールでも何でもいい.使い捨てできるところが仮想環境のいいところ.
ソフトのインストール
以下のコマンドでtftpサーバをインストールする.確認用にtftpクライアントもインストールしておく.
# dnf -y install tftp-server tftp
tftp-serverの有効化
以下のコマンドでtftpサーバを起動する.
# systemctl start tftp.socket
データの配置
tftpでデータをやり取りするディレクトリは/var/lib/tftpbootとなる.これはデフォルト値で変更可能である.ファームウェアはここに置いておく.使い捨て環境なのでパーミッションなどは気にしない.
テスト
/var/lib/tftpboot/test.txtというファイルを作成し,ローカルで以下のコマンドを実行してファイルを取得できることを確認する.
tftp 192.0.2.230 -c get test.txt
ちょっとはまった部分
ただ,他のLinuxのtftpクライアント側から接続するとタイムアウトしてしまう.今回利用したテスト環境はテンプレートから作成したものでfirewalldが起動している.よってtftpサーバ側のfirewalldを停止してみたがこれでもタイムアウトして正常にファイル転送できなかった.ためしにクライアント側のfirewalldも停止するとファイルを取得することができた.ftpのactiveと同じ動作をするのだろうか? 目的は達成できたのでとりあえずクライアント側firewalldを起動してテストを終了する.
使用後の処置
ファームウェアのアップデートなどの作業が終わったら,VMごと消し去り掃除しておく.
コメント