上善若水,不浮不沉!
分类: LINUX
2013-02-26 14:44:12
安装
1、准备压缩包
vsftpd-2.3.5.tar.gz
2、解压安装
tar -zxvf vsftp-2.3.5.tar.gz
cd vsftp-2.3.5
make
出现问题:
CENTOS 5.3 64位系统
Q:
:/lib/libpam.so.0: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make: *** [vsftpd] Error 1
A:
修改这个文件,将所有lib替换成lib64
[root@crm vsftpd-2.2.2]# vi vsf_findlibs.sh
:0,$ s/\/lib\//\lib64\//g
make
make install
mkdir /etc/vsftpd
cp vsftpd.conf /etc/vsftpd
/usr/local/sbin/vsftpd /etc/vsftpd/vsftpd.conf(指定配置文件) &
3、测试
ftp 192.168.10.43
用户:anonymous
密码:
配置虚拟用户服务
1、建立虚拟用户
[root@localhost ~]#vi /etc/vsftpd/vftpusers.txt
添加虚拟用户名和密码,奇数行为用户名,偶数行为密码
ftpusers
123456
Ftpusers1
123456
2、生成虚拟用户口令认证文件
[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vftpusers.txt /etc/vsftpd/vftpusers.db
3 、编辑vsftpd的PAM认证
[root@localhost ~]# vi /etc/pam.d/vsftpd
将原有内容全部注释,并在最后添加如下两行(32位系统下需将lib64改为lib):
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpusers
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpusers
4、建立本地映射用户并设置宿主权限
[root@localhost ~]# useradd -d /app/syncdata -s /sbin/nologin vftpusers
[root@localhost ~]#chmod 776 /app/syncdata
5、配置 vsftpd.conf (设置虚拟用户配置项)
可上传、下载、不能删除和创建目录
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #不允许匿名用户登录
local_enable=YES #允许本地用户登录文件
write_enable=YES #允许本地用户上传到其主目录
local_umask=022 #上传文件后的权限为644
anon_umask=002 #匿名上传文件后的权限
anon_upload_enable=YES #允许匿名用户上传
anon_other_write_enable=NO #匿名用户不可删除
anon_mkdir_write_enable=NO #不允许匿名用户创建目录
dirmessage_enable=YES #支持进入目录的信息
xferlog_enable=YES #记录上传和下载日志
connect_from_port_20=YES #允许从端口20连接
listen_port=21 #运行在非标准端口
pasv_min_port=65000#设置端口连接时的端口范围
pasv_max_port=65100 #设置端口连接时的端口范围
chown_uploads=NO #
xferlog_std_format=YES #使用标准日志格式
nopriv_user=vftpusers
async_abor_enable=YES
ascii_upload_enable=YES #启用上传的ASCII传输方式
ascii_download_enable=YES #启用下载的ASCII传输方式
chroot_local_user=YES #设置所有的本地用户受chroot约束
chroot_list_enable=YES #设置指定的用户受chroot约束
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
ls_recurse_enable=NO
listen=YES
guest_enable=YES #启用虚拟用户
guest_username=vftpusers #将虚拟用户映射为本地vftp用户
virtual_use_local_privs=YES
pam_service_name=vsftpd #设置pam认证文件
#userlist_enable=YES
6、vi chroot_list 文件
chroot_list文件内容如下:
ftpusers
ftpusers1
7、关闭selinux
[root@localhost ~]# vi /etc/selinux/config
将SELINUX=enforcing修改为SELINUX=disabled
重启服务器
8、测试登录
/usr/local/sbin/vsftpd /etc/vsftpd/vsftpd.conf(指定配置文件) &
重启vsftpd服务 然后测试登录。