vsftpd 서버의 4대 고급 설정 1

3621 단어

1. 가상 사용자는 vsftpd 서버를 사용한다


가상 사용자는 FTP 서버에 계정을 가지고 있으며 이 계정은 파일 전송 서비스에만 사용할 수 있는 사용자를 가리키며 Guest 사용자라고도 부른다.이 종류의 사용자는 계정과 구령을 입력하여 권한 수여 로그인을 할 수 있다.시스템에 로그인하면 해당 로그인 디렉토리는 지정된 디렉토리입니다.일반적으로 이 종류의 사용자는 다운로드할 수도 있고 파일을 업로드할 수도 있다.
vsftpd의 가상 사용자는 단독 사용자 이름/구령 저장 방식을 사용하고 시스템 계정(passwd/shadow)과 분리하여 시스템의 안전성을 크게 향상시켰다.vsftpd는 데이터베이스 파일로 사용자/구령을 저장할 수 있습니다. 예를 들어hash;사용자/암호를 데이터베이스 서버(예: MySQL)에 저장할 수도 있습니다.vsftpd는 가상 사용자를 검증하는 PAM 방식을 사용합니다.가상 사용자의 사용자 이름/구령은 단독으로 저장되기 때문에 검증할 때 vsftpd는 시스템 사용자의 신분으로 데이터베이스 파일이나 데이터베이스 서버를 읽어서 검증을 완성해야 한다. 이것이 바로guest 사용자이다. 이것은 익명 사용자도 사용자 ftp를 사용해야 하는 것과 같다.물론guest 사용자도 가상 사용자를 비추는 데 사용된다고 여겨질 수 있다.
가상 사용자가 vsftpd 서버를 사용하기 전에 서버를 설정하려면 주로 다음과 같은 몇 가지 절차를 포함한다.
(1) 가상용 호적령 라이브러리 파일을 생성한다.
(2) vsftpd의 인증 파일을 생성하도록 설정합니다.
(3) 가상 사용자가 액세스하는 데 필요한 디렉토리를 만들고 적절한 액세스 권한을 설정합니다.
(4) 구성 파일을 만듭니다.
(5) vsftpd 서버를 다시 시작합니다.
다음은 위의 다섯 단계를 완료하는 기본 명령 및 절차입니다.
가상용 호적령 라이브러리 파일 생성
 

// , 。 , 
#vi login.txt
liyangsuper// 
real// 
patterson// 
jef// 
guest// 
guest// 
// 

vsftpd 인증 파일 생성 설정
 

// db_load 
#db_load –T –t hash –f login.txt /etc/vsftpd/vsftpd_login.db
// 
#chmod 600 /etc/vsftpd/vsftpd_login.db
// PAM 
#vi /etc/pam.d/vsftpd
// , 
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login.db
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login.db

가상 사용자 액세스에 필요한 디렉토리를 만들고 적절한 액세스 권한을 설정합니다.
 

#useradd –d /home/ftp virtual
#chmod 700 /home/ftp

vsftpd의 주 프로필 설정
 

// , , 
#cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
#vi /etc/vsftpd/vsftpd.conf
// 
listen=YES
tcp_wrappers=YES // tcp_wrappers, 
(/etc/hosts.allow,/etc/hosts.deny)
listen=YES standalone vsftpd, super daemon(xinetd) 
(vsftpd standalone )
anonymous_enable=NO
local_enable=YES //PAM YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
guest_enable=YES
guest_username=vsftpd // 

vsftpd 서버 다시 시작
 

#service vsftpd restart

위의 몇 가지 절차를 거친 후에 가상 사용자를 사용하여 vsftpd 서버에 로그인할 수 있습니다. 아래와 같습니다.
생성된 가상 사용자 liyangsuper를 사용하여 로그인 성공:
 

#ftp 127.0.0.1
Connected to 127.0.0.1 (127.0.0.1).
220 Welcome to virtual FTP service.
Name (127.0.0.1:root): liyangsuper
331 Please specify the password.
Password:
230 Login successful. Have fun.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (127,0,0,1,119,210)
150 Here comes the directory listing.
drwxr-xr-x    2 0        0            4096 Jul 09 15:26 ftp
226 Directory send OK.

가상 디렉터리/홈/ftp의 파일과 디렉터리를 조회할 수 있습니다
 

ftp> cd ftp
250 Directory successfully changed.
ftp> ls
227 Entering Passive Mode (127,0,0,1,149,3)
150 Here comes the directory listing.
-rw-r--r--    1 0        0              10 Jul 09 15:26 test.c
226 Directory send OK.

디렉터리를 만들 수 있는지 테스트합니다.
 

ftp> mkdir super
550 Permission denied.// 
ftp> bye
221 Goodbye.

이상의 테스트를 통해 알 수 있듯이 시스템이 가상 사용자에 대한 기본 사용자 권한은 익명 사용자의 사용자 권한과 일치하며 모두 조회 및 다운로드 권한만 있고 업로드와 디렉터리 작성 등 쓰기 권한은 없다.

좋은 웹페이지 즐겨찾기