Linux 搭建 tftp 服務器


搭建過無數次 tftp 服務器。因爲自己不喜歡做筆記,每一次都認爲下一次就不用折騰了, 結果每一次都費勁周折。這一次狠狠心總結一下。

每一次搭建基本都是靠百度搜索,發現有時候搜出好用,有的搜出來就不好用。我想原因不過有二。

一、 每個人搭建的平臺肯定是不同的。

我用的Linux 版本是 ubuntu16.04.

二、安裝的 tftp server 不同。

我在安裝 tftp server 的時候,發現有好幾個版本的 ttftp server。一個是tftpd, 另外一個是 tftpd-hpa。

到底改用哪一個呢?

當然每個都能用,但是必須不能搞混了。而且網上的資料都是這兩個版本的混雜,所以想我這樣不熟悉配置的人,基本懵逼了。

這兩個有什麼區別?這個靠百度—S*B, 是甭想知道了。下面是我收到的一句話:“tftp-hpa is an enhanced version of the BSD TFTP client and server. It possesses a number of bugfixes and enhancements over the original.”。也就是說 tftp-hpa 是 tftp 的一個加強版,所以我們最好選用 tftp-hpa 。


好了,廢話這麼多,現在說說怎樣搭建服務器吧。

一、基於 tftpd-hpa

1. 安裝

sudo apt-get install tftpd-hpa xinetd tftp

安裝完成後,可以通過 netstate 來檢測是否正常工作

$ netstat -a | grep tftp
udp        0      0 *:tftp                  *:*                                
udp6       0      0 [::]:tftp               [::]:*

tftpd-hpa 的默認配置目錄是, /etc/default/tftpd-hpa

2. 修改配置文件

sudo vi /etc/default/tftpd-hpa

TFTP_OPTIONS="--secure" 
change to
TFTP_OPTIONS="--secure --create"



3.  修改共享文件,重啓服務器

cd ~/tftpboot
touch test
echo "hello tftp!" > tftpboot
cd ..
sudo chown -R tftp tftpboot/
chmod -R 777 tftpboot/
sudo chmod -R 777 tftpboot/
sudo service tftpd-hpa restart


4. 在另外一臺機器上測試(前提兩天機器網絡必須聯通啊。。)

$ tftp 10.238.233.60
tftp> get test
Received 13 bytes in 0.0 seconds
tftp> quit
$ ls
test
$ cat test 
hello tftp!


二、基於tftpd

待完善

3.  修改共享文件,重啓服務器

cd ~
sudo chown -R tftp tftpboot/
chmod -R 777 tftpboot/
sudo chmod -R 777 tftpboot/
sudo service tftpd-hpa restart


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章