[FTP] proftpd 실행과 종료, 그리고 재시작하는 방법

 1. 컴파일하여 설치한 proftpd 실행하는 방법

 – 컴파일하여 설치한 ProFTPd 의 위치는 /usr/local/proftpd 이며 ProFTPd 의 실행관련 파일들이 존재하는 위치는 /usr/local/proftpd/sbin 이다.
 
 – cd /usr/local/proftpd/sbin

 – ./proftpd

 –
하지만 처음 proftpd 를 실행 할 경우에는 ‘nogroup’ 이라는 그룹이 존재하지 않아서 실행할 수 없다는 에러메시지와
함께 실행이 되지 않음. 이유는 proftpd.conf 파일에서 proftpd 를 실행 할 경우에 nobody 라는 계정과
nogroup 이라는 그룹 소유로 실행이 되게끔 설정이 되어 있기 때문이며 당연히  nogroup 이 존재하지 않아서 실행이
되지 않은 것임.

 – 정상적인 실행을 위해서는 nogroup 이라는 그룹을 생성한 후에 실행을 하면 됨.

 – addgroup nogroup
 ./proftpd
 ps -ef|grep proftpd

[FTP] proftp 의 소스컴파일 설치방법

 – 소스 다운받기
 http://www.proftpd.org 에서 소스를 다운받는다.

 – 소스파일 가져오기 및 확인
 wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.10.tar.gz

 – ProFTPd 소스파일 압축풀기
 tar xvfz proftpd-1.2.10.tar.gz

 – 컴파일 할 디렉토리로 이동 및 생성파일 확인
 cd proftpd-1.2.10

 – ProFTPd configure 작업
 ./configure –help : –help 옵션으로 사용가능한 옵션 목록 확인

 – 여러가지 옵션 내용
 –prefix=PREFIX : 설치위치를 지정. 플랫폼에 상관없이 절대경로로 지정함. 기본값은 /usr/local 임. 여기서 지정하는 디렉토리가 이어서 나오는 디렉토리위치들의 홈위치가 됨.
 –bindir=DIR : 사용자 실행 ftp 명령어들이 저장될 위치를 지정함. [PREFIX/bin]
 –sbindir=DIR : ftp 관리자 명령어가 저장될 위치를 지정함. [PREFIX/sbin]
 –datadir=DIR : 읽기전용 데이터 저장위치를 지정함. [PREFIX/share]
 –sharedstatedir=DIR : 읽기/쓰기 데이터 저장위치를 지정함. [PREFIX/com]
 –disable-largefile : 큰용량파일을 지원하지 않도록 함.
 –enable-autoshadow : Shadow 패스워드를 인식하도록 지원함. 단, shadow 패스워드를 반드시 사용하는 시스템에서만 사용가능 함.
 –enable-auth-pan : PAM 지원을 설정함. (기본값은 yes)
 –enable-ipv6 : shadow 패스워드를 지원하기위하여 강제적으로 컴파일을 함.
 –enable-sia : SIA 인증기능을 지원함. (Tru64)
 –enable-timeout-ident : RFC931 기반 연결시 기본 타임아웃값을 초단위로 설정함. (기본값은 10)
 –enable-timeout-idle : idel 타임에 대한 타임아웃값을 초단위로 설정함. (기본값은 600)
 –enable-timeout-login : 로그인연결시도에 대한 타임아웃값을 초단위로 설정함. (기본값은 300)
 –enable-timeout-no-transfer : 데이터전송을 하지않을 때의 타임아웃값을 초단위로 설정함. (기본값은 300)
 –with-modules=LIST : 추가모듈을 사용할 때 사용함.

 –
이들 옵션들 중에서 반드시 두가지는 사용해야 함. –prefix 라는 옵션은 ProFTPd 가 설치될 위치 (ProFTPd 의
홈디렉토리위치) 지정해 준 것이며, 또 한가지 –enable-autoshadow 옵션은 ftp 서버 접근시에 shadow
패스워드파일로 인증하여 접근할 수 있도록 지원하기 위해서 임. 만약 –enable-autoshadow 옵션을 사용하지 않은
채로 configure 하여 컴파일설치하게 되면 ftp 접속시에 550 에러가 발생할 수 있음.

 – configure 잡업
./configure –prefix=/usr/local/proftpd –enable-autoshadow –enable-shadow

 – ProFTPd 컴파일 (make) 하기
make

 – ProFTPd 설치 (make install) 하기
make install

[FTP] proftpd 의 RPM 설치와 그 파일들

 1. RPM 설치

 – RPM 패키지 다운로드
wget ftp://ftp.proftpd.org/distrib/packages/RPMS/proftpd-1.2.10-1.i386.rpm

 – RPM 설치
rpm -Uvh proftpd-1.2.10-1.i386.rpm

 – 생성된 주요 파일 확인하기
rpm -ql proftpd-1.2.10

 – 파일설명
/etc/pam.d/ftp : ProFTPd 의 보안을 위한 접근허용정책파일
/etc/proftpd.conf : ProFTPd 의 환경설정 파일
/usr/sbin/in.proftpd : ProFTPd 를 xinetd 모드로 운영할 경우의 ProFTPd 데몬 링크파일
/usr/sbin/proftpd : ProFTPd 의 데몬파일
/home/ftp : anonymous 로 ProFTPd 에 접속할 경우의 ftp 홈디렉토리

 – RPM 으로 설치한 proftpd 실행하는 방법
/etc/rc.d/init.d/proftpd start : 실행
/etc/rc.d/init.d/proftpd restart : 재실행
/etc/rc.d/init.d/proftpd stop : 중지

[FTP] proftpd 의 소개와 특성

 1. ProFTPd 의 일반적인 장점과 특징

 – standalone 환경에서의 설치, 운용과 xinetd 모드의 설치, 운용 모두가 가능함.
 – shadow 패스워드시스템에서 사용할 수 있음.
 – 아파치 웹서버에서 .htaccess 를 개별 디렉토리에서 사용할 수 있는 것처럼 ProFTPd 에서도 .ftpaccess 를 개별 디렉토리에서의 접근제어 파일로 사용 할 수 있음.
 – 파일 및 디렉토리 퍼미션 (Permission) 을 개별 섭ㄹ정가능하며 서버보안 면에서 효율적인 운용이 가능함.
 – Free Software 이며 소스공개가 가능함.
 – 저작권은 GPL (GNU Public License) 을 따름.