标签:
一、安装pureftpd
[root@localhost ~]# cd /usr/local/src/ [root@localhost src]# wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.32.tar.bz2 [root@localhost src]# tar jxf pure-ftpd-1.0.32.tar.bz2 [root@localhost src]# cd pure-ftpd-1.0.32 [root@localhost pure-ftpd-1.0.32]# ./configure --prefix=/usr/local/pureftpd --without-inetd --with-altlog --with-puredb --with-throttling --with-peruserlimits --with-tls
[root@localhost ~]# yum install -y vsftpd db4-utils [root@localhost ~]# useradd virftp -s /sbin/nologin //建立虚拟账号相关联的系统账号 [root@localhost ~]# vim /etc/vsftpd/vsftpd_login //加入,此文本单行为账号,双行为密码 test1 123456 test2 abcdef [root@localhost ~]# chmod 600 /etc/vsftpd/vsftpd_login [root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db //生成对应的库文件
[root@localhost pure-ftpd-1.0.32]# make [root@localhost pure-ftpd-1.0.32]# make install [root@localhost pure-ftpd-1.0.32]# cd configuration-file [root@localhost pure-ftpd-1.0.32]# mkdir -p /usr/local/pureftpd/etc/ [root@localhost configuration-file]# cp pure-ftpd.conf /usr/local/pureftpd/etc/pure-ftpd.conf [root@localhost configuration-file]# cp pure-config.pl /usr/local/pureftpd/sbin/pure-config.pl [root@localhost configuration-file]# chmod 755 /usr/local/pureftpd/sbin/pure-config.pl [root@localhost configuration-file]# vim /usr/local/pureftpd/etc/pure-ftpd.conf //拷贝 ChrootEveryone yes BrokenClientsCompatibility no MaxClientsNumber 50 Daemonize yes MaxClientsPerIP 8 VerboseLog no DisplayDotFiles yes AnonymousOnly no NoAnonymous no SyslogFacility ftp DontResolve yes MaxIdleTime 15 PureDB /usr/local/pureftpd/etc/pureftpd.pdb LimitRecursion 3136 8 AnonymousCanCreateDirs no MaxLoad 4 AntiWarez yes Umask 133:022 MinUID 100 AllowUserFXP no AllowAnonymousFXP no ProhibitDotFilesWrite no ProhibitDotFilesRead no AutoRename no AnonymousCantUpload no PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid MaxDiskUsage 99 CustomerProof yes //启动pureftpd [root@localhost ~]# /usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf //启动成功,会显示一行长长的以Running开头的信息 //建立账号 [root@localhost ~]# mkdir /data/www/ [root@localhost ~]# useradd www [root@localhost ~]# chown -R www:www /data/www/ [root@localhost ~]# /usr/local/pureftpd/bin/pure-pw useradd ftp_user1 -uwww -d /data/www/ Password: Enter it again: [root@localhost ~]# /usr/local/pureftpd/bin/pure-pw mkdb //再添加一个账号 [root@localhost ~]# /usr/local/pureftpd/bin/pure-pw useradd ftp_user2 -uwww -d /tmp //列出当前的账号 [root@localhost ~]# /usr/local/pureftpd/bin/pure-pw list //删除账号 [root@localhost ~]# /usr/local/pureftpd/bin/pure-pw userdel ftp_user2
二、测试pureftpd
//测试需要工具 [root@localhost ~]# yum install -y lftp //测试 [root@localhost ~]# touch /data/www/123.txt [root@localhost ~]# lftp ftp_user1@127.0.0.1 口令: lftp ftp_user1@127.0.0.1:~> ls drwxr-xr-x 2 514 www 4096 Jun 12 11:14 . drwxr-xr-x 2 514 www 4096 Jun 12 11:14 .. -rw-r--r-- 1 514 www 0 Jun 12 11:14 123.txt //登陆后,使用 ls 命令可以列出当前目录都有什么文件。
====================我是分割线。================
一、vsftpd
[root@localhost ~]# yum install -y vsftpd db4-utils [root@localhost ~]# useradd -s /sbin/nologin virftp //建立虚拟账号相关联的系统账号 [root@localhost ~]# vim /etc/vsftpd/vsftp_login //建立虚拟账户相关的文件 //加入 /*此文件单行为用户名, 双行为密码*/ test1 123456 test2 abcdef [root@localhost ~]# chmod 600 /etc/vsftpd/vsftpd_login [root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db //生成对应的库文件 [root@localhost ~]# mkdir /etc/vsftpd/vsftpd_user_conf //建立虚拟账号相关的目录以及配置文件 [root@localhost ~]# vim /etc/vsftpd/vsftpd_user_conf/test1 //创建test1对应的配置文件 //加入 local_root=/home/virftp/test1 anonymous_enable=NO write_enable=YES local_umask=022 anon_upload_enable=NO anon_mkdir_write_enable=NO idle_session_timeout=600 data_connection_timeout=120 max_clients=10 max_per_ip=5 local_max_rate=50000 [root@localhost ~]# mkdir -p /home/virftp/test1 //用户名test1的ftp文件夹 [root@localhost ~]# chown -R virftp:virftp /home/virftp [root@localhost ~]# vim /etc/pam.d/vsftpd //在开头添加两行 /*如果Linux系统是64位的,改为/lib64/security/pam_userdb.so*/ auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login [root@localhost ~]# vim /etc/vsftpd/vsftpd.conf //按要求修改 ... ... anonymous_enable=YES改为anonymous_enable=NO #anon_upload_enable=YES 改为 anon_upload_enable=NO #anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO #chroot_local_user=YES 将注释去掉 ... ... #文件最尾部加入 guest_enable=YES guest_username=virftp virtual_use_local_privs=YES user_config_dir=/etc/vsftpd/vsftpd_user_conf [root@localhost ~]# /etc/init.d/vsftpd start
二、测试vsftpd
[root@localhost ~]# yum install -y lftp [root@localhost ~]# cat /etc/vsftpd/vsftpd_login test1 123456 test2 abcdef [root@localhost ~]# lftp test1@127.0.0.1 口令: lftp test1@127.0.0.1:~> ls lftp test1@127.0.0.1:~> quit [root@localhost ~]# cd /home/virftp/test1 [root@localhost ~]# touch 2.txt [root@localhost ~]# mkdir 123 [root@localhost ~]# lftp test1@127.0.0.1 口令: lftp test1@127.0.0.1:~> ls drwxr-xr-x 2 0 0 4096 Apr 16 13:39 123 -rw-r--r-- 1 0 0 0 Apr 16 13:39 2.txt
配置vsftpd遇到的错误:
lftp test1@127.0.0.1:~> ls ls: 登录失败: 500 OOPS: bad bool value in config file for: anon_upload_enable --> 因为你的那个YES/NO 布尔值(bool value)后边加了一个空格,即: anon_upload_enable=NO空格 查看/etc/vsftpd/vsftpd.conf 和 /etc/vsftpd/vsftpd_user_conf/test1 中 anon_upload_enable=NO后有无空格 正确的格式应该是: anon_world_readable_only=NO(无空格)!!!!!! 注意,NO后边的空格,要用退格键将其删除。
标签:
原文地址:http://www.cnblogs.com/frankielf0921/p/5396695.html