구축 환경 : VirtualBox / ubuntu 14.04 LTS

(17.11.29 VirtualBox가 아닌 환경에서 테스트 완료)


ubuntu에 telnet과 ftp 서버 구축을 하기 위해, 소스 패키지를 빌드하여 설치하였다.

여태 많은 시도를 해봤는데, 항상 같은 소스 패키지를 받았던 게 문제였나보다. 버전은 달리 해봤지만..

계속 netkit-telnet, netkit-ftp를 받아서 시도했는데 항상 이것저것 에러가 뜨면서 빌드가 되지 않았다.

(vsftpd도 시도 했었는 지는 기억이 나지 않음)

그러다가, 마지막이다! 하는 맘으로 inetutils라는 소스 패키지를 받게 되었다.

https://www.gnu.org/software/inetutils/ 에 올라온 설명에 따르면,

inetutils는 telnet client/server, ftp client/server, rsh client/server 등의 보편적인 네트워크 프로그램들의 모음이라고 한다.

그래서, 이 패키지를 설치하면 telnet도 ftp도 설치할 수 있다.

telnet 설치하고 다음에 ftp도 따로 설치하려고 했는데 의도치 않게 한꺼번에 하게 되었다.


inetutils 소스 패키지는 위 링크에서도 받을 수 있지만 나는,

https://packages.ubuntu.com/source/trusty/inetutils

여기서 다운 받았다.


다운 받은 압축 파일을

tar -xvJf inetutils_1.9.2.orig.tar.xz

명령어를 사용해 압축 해제한 후, inetutils-1.9.2 디렉터리로 이동하여

./configure

명령어를 사용해 빌드에 필요한 프로그램을 확인했다. 나의 경우엔 따로 필요한 프로그램이 없어서,

make

명령어를 이용하여 빌드를 한 후,

make install

명령어로 설치해주었다.


설치하고 나니 ftp와 telnet 클라이언트는 그냥 ftp, telnet 명령어로 실행이 되었는데

서버의 데몬을 켜는 법을 몰라서 정말 한참 헤매다가 겨우 찾아냈다.

설치를 하고 나면 inetutils-1.9.2 디렉터리에 있는 telnetd와 ftpd 디렉터리 안에

executable 파일이 생긴다는 것을 몰랐던 것이다..

ftpd의 standalone 데몬이기 때문에, ftpd 디렉터리로 이동하여

ftpd --daemon

명령어를 사용하면 데몬이 켜진다.

netstat -ano | grep 21

명령어를 사용하면 포트가 열렸는지 확인할 수 있고, 그 후

ftp localhost 명령어를 사용하거나, 파일질라를 사용하여 접속 테스트를 할 수 있다.


telnetd의 경우, 슈퍼데몬 xinetd를 사용해야 하기 때문에

/etc/xinetd.conf 파일에,

service telnet

{

disable = no

flag = REUSE

socket_type = stream

wait = no

user = root

server = [telnetd executable 파일의 절대 주소. 나의 경우엔 /home/testuser/inetutils-1.9.2/telnetd/telnetd]

log_on_failure += USERID

}

를 추가한 후, (apt-get으로 telnet을 설치했을 땐, server = /usr/sbin/in.telnetd 라고 썼었다.)

service xinetd restart

명령어로 xinetd를 재시작해서 23번 포트를 열어주었다.

netstat -ano | grep 23

명령어를 사용해 포트가 열렸는지 확인한 후,

telnet localhost 명령어를 사용하거나, PuTTY를 사용하여 접속 테스트를 할 수 있었다.


(inetutils 패키지의 telnet과 ftp를 사용한 경우, 별다른 설정 없이 root 로그인이 가능했다.)

+ Recent posts