이 자습서는 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
댓글
- 죄송합니다. TCP 포트 수신을 기대하는 이유는 무엇입니까? TFTP는 UDP 기반 프로토콜입니다. 그리고 ' UDP 69를 수신하도록 xinetd를 구성했습니다. ' netstat -anpu | grep 69 '로 열린 TFTP 포트를 찾습니다.
답변
TFTP는 UDP 기반 프로토콜이므로 LISTEN 또는 LISTENING이라는 줄을 찾을 수 없습니다.
Run netstat -na | grep udp
그리고 당신이 얻는 것을보십시오.
답변
이전에 언급했듯이 출력은 충분히 합법적 인 것 같습니다. , 실제로 클라이언트를 통해 TFTP 서버에 액세스 해 보셨습니까? 듣고 있는지 여부를 알 수있는 확실한 방법은 …
한 가지는 Ubuntu 인 경우 단계 중 하나를 변경해야 할 수 있다는 것입니다. 기본적으로 다음과 같아야합니다.
sudo service xinetd restart
아닙니다
sudo service xinetd stop
sudo service xinetd start
xinetd는 upstart에 의해 생성되므로 4 단계 만 변경하면됩니다. “service xinetd restart”로 다시 시작해야합니다. – BЈовић Sep 4 “13 at 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/
답변
어떤 튜토리얼을 따랐는지 언급하지 않았습니다. 그러나 출력은 상당히 합법적 인 것 같습니다. tftp는 xinetd를 사용합니다. 래퍼이므로 “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
여기서”your subnet “은 192.168.1.0/24입니다.