為什麼要學習有關tftp伺服器的安裝及配置呢?主要是為了後續學習有關linux系統的無人值守安裝做準備。
tftp簡單檔案傳輸協定,使用udp的69端口。主要提供檔案的上傳和下載下傳,tftp一般是适用于遠端無盤裝置啟動,pxe啟動以及路由器、交換機ios的備份、恢複和更新等場合。
tftp與ftp相比,tftp不能列出目錄的内容、不支援認證和加密機制、隻支援udp協定。
以上就是有關tftp的相關特點,下面我們開始安裝tftp服務。
說明:在以後的部落格中,我會盡量在ubuntu系統中進行操作,盡量不在使用windows系統下遠端連接配接linux的相關工具。
登入ubuntu系統,在終端中輸入以下指令。連連結遠端的centos系統,如下:
tftp的軟體包包括:tftp用戶端、tftp-server伺服器。先開始安裝tftp用戶端如下:
yum –y install tftp
現在開始安裝tftp-server,如下:
yum –y install tftp-server
通過上圖我們也可以看到在安裝tftp-server時,同時也把xinetd服務進行了安裝。而且根據上圖提供的資訊,我們也可以看出tftp服務的正常運作是依賴于xinetd服務的。
通過查詢相關資料顯示,tftp服務不像ftp服務那樣有單獨的服務程序,它是依賴于行xinetd服務來啟動的。也就是說我們要檢視tftp服務是否正常運作,直接檢視xinetd服務即可
檢視tftp及tftp-server安裝後的相關檔案,如下:
rpm –ql tftp
rpm –ql tftp-server
通過上圖,我們可以看到tftp的運作檔案位于/usr/bin/tftp,配置檔案位于/etc/xinetd.d/tftp。
現在來修改tftp的配置檔案,如下:
vi /etc/xinetd.d/tftp
通過上圖我們可以看到,tftp的配置檔案很簡單。該配置檔案,我們需要修改的内容隻有一處disable=yes。把這項修改為no。
server_args表示tftp的目錄,預設是在/var/lib/tftpboot目錄下。此處可以進行自定義,也可以使用預設的目錄。
修改完畢後的内容如下:
配置檔案修改完畢後,我們現在來啟動tftp服務。因為tftp服務是依賴于xinetd服務的,是以我們直接來啟動xinetd服務即可。同時我們也可以通過檢視tftp的69端口,看起是否正常運作,如下:
/etc/init.d/xinetd start
netstat -tunlp |grep 69
通過上圖我們可以看出tftp已經正常啟動,為了模拟真實的tftp環境,我們現在在tftp的目錄下建立一個檔案test_tftp.txt,如下:
現在開始使用用戶端連接配接該tftp,在前文已經介紹過tftp包括用戶端和服務端。我們先在用戶端安裝tftp的用戶端,在此我們的用戶端使用的是ubuntu系統。ubuntu系統安裝tftp用戶端,如下:
sudo apt-get –y install tftp
用戶端安裝完畢後,我們現在來連接配接tftp伺服器并下載下傳前文建立的檔案test_tftp.txt。使用如下指令:
tftp 192.168.1.213
get test_tftp.txt
通過上圖我們可以看到,我們已經順利的從tftp伺服器上下載下傳了剛剛前文的檔案test_tftp.txt。
現在我們在上傳一個檔案測試下,要測試tftp的上傳功能,需要我們修改兩處:tftp的配置檔案和tftp目錄的檔案夾權限。
修改tftp配置檔案,如下:
vim /etc/xinetd.d/tftp
注意server_args參數加入-c表示可以建立檔案。
tftp配置檔案修改完畢後,我們來修改tftp目錄的檔案夾權限。如下:
通過上圖我們現在可以看到,目前tftp目錄的檔案夾權限為755。<b>前文我們已經介紹過tftp不支援認證和加密機制,要具有上傳權限的話,我們要把該目錄的權限設定為777對所有人具有上傳和下載下傳權限</b>,如下:
chmod 777 ./tftpboot/
以上全部修改完畢後,我們重新開機xinetd服務,如下:
/etc/init.d/xinetd restart
現在我們再來測試上傳權限,使用put指令,如下:
有關tftp指令可以檢視如下連接配接:http://linux.die.net/man/8/tftpd
至此有關tftp伺服器的安裝及配置結束。