vsftpd

컴퓨터(InfoTech) 2006/07/03 16:17

에구 에구 오랜만에 하려니 또 잊어버려서리


/etc/vsftpd/vsftpd.conf 에 있는 환경 설정만 만지면 됨

[standalong] 으로 설치시
1.
/etc/vsftpd/vsftpd.conf 에서
listen=YES
listen_port=21 ' 굳이 21번을 고집할 필요는 없다.
2.
/etc/rc.d/init.d/vsftpd 스크립트가 있어야 되고
아규먼트 stop / start / restart 로 제어가 가능하다.

[xinetd  서비스에 종속되어 사용하고자 할때]
1.
/etc/vsftpd/vsftpd.conf에서
위 옵션은 제거

2. /etc/rc.d/init.d/xinetd 로 제어가능
역시나 stop/start/restart
그대신 /etc/xinetd.d/vsftpd 설정화일이 존재해야 된다.

[root@best etc]# cat /etc/xinetd.d/vsftpd
# description:
#   The vsftpd FTP server serves FTP connections. It uses
#   normal, unencrypted usernames and passwords for authentication.
# vsftpd is designed to be secure.
service ftp
{
       disable = no
       socket_type             = stream
       wait                    = no
       user                    = root
       server                  = /usr/sbin/vsftpd
#       server_args             =
#       log_on_success          += DURATION USERID
#       log_on_failure          += USERID
       nice                    = 10
}

3. xinetd 데몬이 서비스하는 포트는  /etc/services 파일 정보에 있다.

그럼 뭐가 다르냐 그것은 아래 켭쳐를 보면 금방 이해가 된다.
xinetd 서비스에 종속적인 경우는 ftp서비스를 자주사용하지않을때 사용하는 방법이다.


접속했을 경우와 접속하지 않았을 경우 데몬 실행 유무에 차이가 난다.
그리고 nobody로 실행시키는게 재미나지 않은가?
솔직히 상관관계를 정확하게 이해하지 못하는게 답답하다.

애고애고

하지만 더 구체적인 이해를 위해서는
리눅스의 시작 부터 끝까지의 부팅 흐름만 안다면
네이버에서 vsftpd란 검색어로 ... 다 해결할 수 있다.

그냥 귀차니즘에 정리 안해서 맨날 찾아서 하려니 정리용으로 둠.


/etc/pam.d/vsftpd
/etc/vsftpd.ftpusers-> 이것은 vsftpd.conf에서 바꾸어서
/etc/vsftpd.user_list -> 이것 역시 vsftpd.conf에서 바꾸어서

/etc/vsftpd/로 옮겼다.

[좀더 정리하면]
vsftpd의 접속자 제어 방법에는

pam 에서 제어하는 방법과
vsftpd에서 제어하는 방법이 있는데

/etc/vsftpd/vsftpd.usre_list =>아까도 이야기 했지만 난 vsftpd폴더로 환경화일 몰아 넣게 세팅해둠
이 파일과
userlist_deny = YES 접속을 거부하는 사용자리스트

/etc/vsftpd/vsftpd.ftpusers 를 이용한 pam 적용방법도 있다.

이 두가지를 다 해둬도 돌아가는 것 같은데 ...-_-
여기까지.. 난 SE가 아니니*_*





-좀더 정리하기로 했음


[PAM] 모에요?

Pluggable Authentication Moudules
- 패스워드를 인증하는 메커니즘을 추상화하는 여러 가지 기법들이 개발되었는데 솔라리스로 부터 힌트를 얻어 리눅스 동호인들은 PAM을 만들게 되다.
-응용프로그램이 패스워드 파일을 읽는 것이 아니라 PAM에게 인증을 요청하자는 것이다. PAM은 시스템 관리자가 선택하는 인증 메커니즘을 무엇이든 사용할 수있다.

동작원리
PAM은 원도 응용 프로그램에서 DLL과 같은 공유 라이브러리이다. 프로그램이 어떤 사람의 인증이 필요하면 PAM 라이브러리에 있는 함수를 호출하면 된다.
PAM은 호출되면 그 응용 프로그램의 설정 파일을 검사한다. 만일 설정파일이 없으면 디폴트 설정파일을 사용한다. 이 설정 파일에는 사용자를 인증하기 위해 필요한 검사 유형들이 지정되어 있다. 이를 기초로 적절한 모듈을 호출한다.(레드헷에서는 /lib/security 디렉토리에 가면 이 모듈들을 찾을 수 있다.) 이 모듈은 여러 가지 것들을 검사할 수 있다. /etc/passwd 파일을 검사할 수도 있고, /etc/shadow 파일을 검사할 수도 있다. LDAP 서버를 호출하는 등의 복잡한 검사를 수행할 수도 있다.

http://www.kernel.org/pub/linux/libs/pam/

Posted by iarchitect
TAG