'proftpd'에 해당되는 글 1건

  1. 2004/03/29 proftpd 설치

proftpd 설치

컴퓨터/System 2004/03/29 09:49

기존의 시스템에서는 ftp가 설치되었었지만 rpm으로 운영되었다.

그리고 직접 설치하지 않아서 설정파일이 어디에 붙어있는지도 헷깔리고 해서 밀어버리고 소스컴파일로 설치하기로 했다.

참고로 rpm 설치된 패키지를 지우려면

# rpm e 패키지명

http://proftpd.com 이나 http://proftpd.oops.org 에서 소스를 다운받는다.

압축을 풀고 환경을 컴파일하기전 환경설정을 한다.

# ./configure --prefix=/usr/local/proftpd --enable-autoshadow

/usr/local/proftpd 디렉토리에 설치를 하고 --enable-autoshadow 옵션은 ftp 서버 접근시 shadow 패스워드 인증방식을 지원하기 위한 옵션이다.

만약 이 옵션을 주지않고 컴파일하여 설치를 하면 ftp 접속시 550 에러가 발생할 수 있다.

make, make install 하면 설치가 완료된다.

Proftpd 데몬 실행하는방법

실행하기전에 먼저 먼저 proftpd.conf 파일 편집을 해야한다.

왜냐하면 /usr/local/proftpd/etc/proftpd.conf 파일에서 user, group 항목이 nogroup으로 설정되어있다.

시스템에 nogroup 그룹이 없을 가능성이 거의 99% 이므로 groupadd로 nogroup이라는 그룹을 만들어주거나 아니면 nogroup대신 nobody로 수정한다. 후자의 방법을 추천한다.

# /usr/local/proftpd/sbin/proftpd

이렇게하면 데몬이 실행된다.


데몬을 종료시키는 방법은 /usr/local/proftpd/sbin/ftpshut 바이너리를 실행시키면된다.

본인은 보통 ps로 실행되는 데몬을 찾아서 kill 명령어로 해치워버린다.

proftpd.conf 설정(중요)

ServerName : 접속성공후 ftp 서버에 대한 소개를 나타내는 문자열

ServerType : 운영되는 ftp 서버의 타입을 지정한다.

단독으로 실행하려면 standalone으로 지정하고 xinetd 슈퍼데몬으로 통제를 받을려면 inetd으로 지정한다.

DefaultServer : 가상서버를 운영할경우 기본이 되는 서버를 설정함

Port : 포트지정(Standalone 에서만 적용됨)

Umask : 파일 퍼미션 유도

MaxInstance : 접속요청이 들어오면 데몬이 자식프로세스를 생성해서 하나의 세션을 형성하게 되는데 이것의 개수를 조절한다. Standalone에서만 적용된다.

Dos 공격의 예방을 위해서도 적절히 조절해 주어야한다.

User, Group : 데몬을 실행하는 주체가되는 사용자, 그룹 id

모든 데몬프로그램이 그렇지만 id는 낮은 권한을 가진 사용자(그룹)이어야 보안상 안전하다.

종종, ftp 클라이언트로 접속이 안된다는 글이 올라오는데 십중팔구 그룹 관련된 내용이다.

/etc/group 파일을 확인해서 어떤 사용자가 어떤 그룹에 속해있고 과연 ftp에 접근할수 있는 권한이 있는지를 살핀다.

참고로 wheel(10) 그룹은 ftp관련에서 root 권한그룹이다.

익명계정으로 ftp 접속하기

RequireValidShell          off

위 항목이 반드시 있어야 한다.

TAG proftpd