(原代码)安装vsftpd
************************************************************* 1、下载最新的vsftpd-2.0.5.tar.gz # tar xzvf vsftpd-2.0.5.tar.gz 2、编译安装(参考INSTALL) 环境预处理: #finger nobody #finger ftp (anonymous匿名用户)。 #mkdir /usr/share/empty/ #mkdir /var/ftp/ #useradd -d /var/ftp ftp #chown root.root /var/ftp #chomd og-w /var/ftp # make # make install 3、配置文件处理 # cp vsftpd.conf /etc/ # cp RedHat/vsftpd.pam /etc/pam.d/ftp /用户认证共用模块 #vi /etc/vsftpd.conf 追加一条:listen=YES /让FTP独立运行。 4、运行确认(到此匿名登录,系统用户不能登录) # /usr/local/sbin/vsftpd & /手动启动 #netstat -tnl /查看是否起来 Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN # vi /etc/rc.local 追加一条,让系统启动时启动FTP /usr/local/sbin/vsftpd & vsftpd的配置文件项说明
***************************************************************************** # Example config file /etc/vsftpd.conf anonymous_enable=YES local_enable=YES write_enable=YES local_umask=022 anon_upload_enable=YES dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES #chown_uploads=YES #chown_username=whoever xferlog_file=/var/log/vsftpd.log ftpd_banner=Welcome to Benet ! #chroot_list_enable=YES #chroot_list_file=/etc/vsftpd.chroot_list listen=YES #killall -1 vsftpd /重启此ftp服务
配anonymous用户可上传文件
**************************************************************************** #ls -ld /var/ftp drwxr-xr-x 2 root root 4096 3月 7 21:18 /var/ftp 建一个允许匿名上传的子文件夹,且给相应写权限 [root@RHL9 ftp]# chgrp ftp incoming/ [root@RHL9 ftp]# chmod g+w incoming/ drwxrwxr-x 2 root ftp 4096 3月 7 21:58 incoming 配anonymous用户可上传文件,但不可看文件
****************************************************************** [root@RHL9 ftp]# chmod g-r incoming/ drwx-wxr-x 2 root ftp 4096 3月 7 21:58 incoming 改变“根(chroot)”的设置
*************************************************************************** anonymous用户如下: ftp> pwd 257 "/incoming" rora系统用户如下: ftp> pwd 257 "/home/rora" 设置# Example config file /etc/vsftpd.conf 这样rora用户同anonymous一样仅限在指定用户目录下操作FTP。
chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list vi /etc/vsftpd.chroot_list /在文件中添加用户 rora benet FTP用户控制
*********************************************************************************************************** 缺省在/etc/ftpusers文件中的用户不可登录FTP,这个文件其实是由/etc/pam.d/ftp控制 [root@RHL9 incoming]# cat /etc/pam.d/ftp #%PAM-1.0 auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed auth required /lib/security/pam_unix.so shadow nullok auth required /lib/security/pam_shells.so account required /lib/security/pam_unix.so session required /lib/security/pam_unix.so 修改为如下:则仅有/etc/ftpusers文件中的用户可FTP服务器 auth required /lib/security/pam_listfile.so item=user sense=allow file=/etc/ftpusers onerr=succeed 虚拟账号(了解)
************************************************************************************************** 1、先建一个文件users.txt tom 123 jack 123456 # db_load -T -t hash -f users.txt /etc/vsftpd_login.db #chmod 600 /etc/vsftpd_login.db 2、修改/etc/pam.d/ftp 增加: #auth required /lib/security/pam_listfile.so item=user sense=allow file=/etc/ftpusers onerr=succeed #auth required /lib/security/pam_unix.so shadow nullok #auth required /lib/security/pam_shells.so #account required /lib/security/pam_unix.so #Session required /lib/security/pam_unix.so auth required pam_userdb.so db=/etc/vsftpd_login account required pam_userdb.so db=/etc/vsftpd_login 3、建虚拟账号目录 useradd vuser 4、编辑/etc/vsftpd.conf,禁止匿名用户 详情请看:man vsftpd.conf
|
|