Operating System/Linux / / 2010. 12. 16. 17:26

ubuntu 10.10에 tftpd 서비스 설치

반응형


기존 ubuntu 9.xx 까지는 xinetd, tftpd, tftp 의 조함을 사용하였었다.
이때 Target Board에서 파일을 Down 또는 Upload 명령을 사용하였을때 파일 전송이 잘되었다.
헌데, 최근 업데이트된 ubuntu 10.10에서 같은 형태의 조합을 사용하였더니
Download는 잘되었으나 Upload를 할때 마다 tftp: timeout 이 계속 발생하였다.
그래서 이리러지 찾아 다는 결과, 아래의 url 에서 이유를 확인했다.
http://www.ubuntu.or.kr/viewtopic.php?f=21&t=11377&sid=3334158f6eb19f032c10f8a72972fc68#p57492

위의 내용을 참조하여 정리하여 보면 다음과 같다.

tftpd 서비스에서 보안상의 이유로 upload가 금지되었다고 한다.

-------------------------------------------------------------------------------------------
The use of tftp(1) does not require an account or password on the remote
system.  Due to the lack of authentication information, tftpd will allow
only publicly readable files to be accessed.  Files containing the string
``/../'' or starting with ``../'' are not allowed.  Files may be written
only if they already exist and are publicly writable.
-------------------------------------------------------------------------------------------

서버에 Upload하려는 파일명의 파일이 존재하며 권한이 777 이면 된다고 링크의 작성자 분은
얘기하셨는데, 실제 제가 테스트 해보니 잘 동작하지는 않았습니다.
그래서 결국 tftpd-hpa 로 tftp 서비스 프로그램을 다시 설치 하였습니다.

* tftpd-hpa 설치
----------------------------------------------------
sudo apt-get install tftpd-hpa
----------------------------------------------------

설치 완료 후 설정 .... 아래 경로의 파일을 수정한다..

#> sudo vi /etc/default/tftpd-hpa
----------------------------------------------------
TFTP_USERNAME="nobody"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure --create"
----------------------------------------------------
username 은 nobody로 하였다. 여기에는 시스템에 등록된 계정으로 작성해 주면 된다.
그리고 TFTP_OPTIONS 항목에 --create 를 추가 하여야 된다고 한다.

TFTP_DIRECTORY 에 등록한 경로의 디렉토리 권한 설정

#> sudo chown nobody /tftpboot

#> sudo chmod a+w /tftpboot

tftpd-hpa 서비스 재시작

#> sudo service tftpd-hpa restart






 

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유