본문 바로가기

리눅스

CentOS 7에서 TFTP 서버를 구축하는 방법

반응형

CentOS 7에서 TFTP(Trivial File Transfer Protocol) 서버를 구축하는 방법

TFTP 서버 구축하기

  • tftp-server, tftp 패키지 설치
sudo yum install tftp tftp-server
  • tftpd 계정 생성
useradd -m -d /app/tftproot tftpd
  • TFTP 루트 디렉토리 생성 및 권한 설정
    • TFTP 서버에서 접근할 수 있는 디렉토리를 생성하고 해당 디렉토리에 파일을 저장할 수 있도록 권한을 설정합니다.
sudo mkdir /app/tftproot
sudo chmod -R 777 /app/tftproot
sudo chown -R nobody:nobody /app/tftproot
  • TFTP 서버 설정 파일 편집
    • TFTP 서버 설정 파일인 /etc/xinetd.d/tftp를 편집합니다.
    • 편집기로 파일을 열고 disable 라인을 주석 처리하거나 no로 변경합니다.
vim /etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
#         protocol.  The tftp protocol is often used to boot diskless \
#         workstations, download configuration files to network-aware printers, \
#         and to start the installation process for some operating systems.
#
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        #server_args             = -s /app/tftproot
        server_args             = -c -p -u tftpd -U 117 -s /app/tftproot
        disable                 = yes
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
  • xinetd 재시작
sudo systemctl restart xinetd
728x90

TFTP 사용 예시

TFTP는 주로 부트로더나 네트워크 장비 업데이트 등에 사용되며 간단한 파일 전송에 사용됩니다.

  • 파일 전송
    • TFTP 클라이언트를 사용하여 파일을 TFTP 서버로 전송할 수 있습니다.
tftp [TFTP_SERVER_IP]
tftp> put [LOCAL_FILE_PATH] [REMOTE_FILE_NAME]
tftp> quit
  • 파일 다운로드
    • TFTP 클라이언트를 사용하여 TFTP 서버로부터 파일을 다운로드할 수 있습니다.
tftp [TFTP_SERVER_IP]
tftp> get [REMOTE_FILE_NAME] [LOCAL_FILE_PATH]
tftp> quit
  • 원도우 클라이언트 : bb.txt 다운로드
tftp -i 192.168.56.108 get bb.txt
C:\Users\Administrator>tftp -i 192.168.56.108 get bb.txt
전송 완료: 1초에 0바이트, 0바이트/초
  • 원도우 클라이언트 : windows.txt 업로드
tftp -i 192.168.56.108 put windows.txt
C:\Users\Administrator>tftp -i 192.168.56.108 put windows.txt
전송 완료: 1초에 11바이트, 11바이트/초
  • 리눅스 클라이언트 : bb.txt 다운로드
tftp 192.168.56.108
get bb.txt
$ tftp 192.168.56.108
tftp> get bb.txt
  • 리눅스 클라이언트 : linux.txt 업로드
tftp 192.168.56.108
put linux.txt
$ tftp 192.168.56.108
tftp> put linux.txt

 

TFTP는 보안 기능이 제한적이므로 신중하게 사용해야 합니다. 필요에 따라 추가적인 보안 조치를 고려하는 것이 좋습니다.

 

728x90
반응형