第一步:
1.關閉ubuntu的防火牆 ufw disable
2.解除安裝了iptables apt-get remove iptables
1.用iptables -F這個指令來關閉防火牆,但是使用這個指令前,千萬記得用iptables -L檢視一下你的系統中所有鍊的預設target,iptables -F這個指令隻是清除所有規則,隻不會真正關閉iptables.想象一下,如果你的鍊預設target是DROP,本來你有規則來允許一些特定的端口, 但一旦應用iptables -L ,清除了所有規則以後,預設的target就會阻止任何通路,當然包括遠端ssh管理伺服器的你.
是以我建議的關閉防火牆指令是
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
總之,當你要在你的伺服器上做任何變更時,最好有一個測試環境做過充分的測試再應用到你的伺服器.除此之外,要用好iptables,那就要了解 iptables的運作原理,知道對于每一個資料包iptables是怎麼樣來處理的.這樣才能準确地書寫規則,避免帶來不必要的麻煩.
2.預設情況下ubuntu無firewall,除非你自己安裝了,怎麼裝的就怎麼删呗。。
如果是已啟用的自備的iptables 删了就行了
sudo apt-get remove iptables
第二步:安裝服務
安裝tftp-hpa tftpd-hpa xinetd
# apt-get install tftp-hpa tftpd-hpa xinetd
第三步:在建立檔案夾/tftpboot (這個是伺服器的檔案交換目錄,将來客戶機擷取伺服器檔案時就是從這個檔案夾中擷取的),并且修改這個檔案夾的權限為777
#mkdir /tftpboot
#chmod -R 777 /tftpboot
第四步:修改tftp配置檔案,如果沒有就建立,我喜歡用vim
#vim /etc/xinetd.d/tftp
檔案内容為:
service tftp
{
disable = no
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot //此處檔案目錄就是上面說道的伺服器檔案交換目錄
source = 11
cps = 100 2
flags =IPv4
}
第五步:修改xinetd.conf檔案
# vim /etc/xinetd.conf
一般這個檔案在打開的時候裡面是有内容的,隻要在最後添加下面内容即可:
tftp dgram udp wait nobody /usr/sbin/tcpd
/usr/sbin/in.tftpd /tftpboot //此處檔案目錄就是上面說道的伺服器檔案交換目錄
第六步:修改tftpd-hpa檔案
# vim /etc/default/tftpd-hpa
内容為:
#RUN_DAEMON="no"
#OPTIONS="-s /home/zyp/tftpboot -c -p -U tftpd"
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot" //此處檔案目錄就是上面說道的伺服器檔案交換目錄
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"
第七步:重新開機服務
# service tftpd-hpa restart
# sudo /etc/init.d/xinetd reload
# sudo /etc/init.d/xinetd restart
netstat -a|grep tftp
顯示 :
udp 0 0 *:tftp *:*
則啟動服務了
第八步:本地測試
(1)在/tftpboot 下建立測試檔案test,并修改test的檔案權限
#cd /tftpboot
#touch test
#chmod 777 test
(2)測試一下 tftp服務:
#cd /
#tftp 127.0.0.1 # sudo tftp localhost
tftp>get test
tftp>q
#ls
檢視目前目錄,發現test 檔案已在目前目錄,此時tftp搭建成功!