`

Vsftpd配置Web

阅读更多
1下载
[root@localhost ~]# wget http://xftele1.skycn.com/down/vsftpd-2.3.1.tar.gz
[root@localhost ~]# yum -y install db4-utils #本机缺失的包
[root@localhost ~]# yum -y install gcc #本机缺失的包
[root@localhost ~]# yum -y install gcc-c++ #本机缺失的包
[root@localhost ~]# yum -y install pam-devel #本机缺失的包
[root@localhost ~]# make clean
[root@localhost ~]# make
[root@localhost ~]# make install

2安装
[root@localhost ~]# mkdir -d /data0/apppackage

[root@localhost ~]# tar zxvf vsftpd-2.3.1.tar.gz
[root@localhost ~]# cd vsftpd-2.3.1
[root@localhost ~]# make
[root@localhost ~]# make install

3配置
[root@localhost ~]# cat /***/***/vsftpd-2.3.1/INSTALL #查看
[root@localhost ~]# useradd nobody
[root@localhost ~]# export LC_ALL=zh_CN.GB2312;export LANG=zh_CN.GB2312
[root@localhost ~]# mkdir /usr/share/empty
[root@localhost ~]# mkdir /var/ftp/
[root@localhost ~]# useradd -d /var/ftp ftp
[root@localhost ~]# chown root.root /var/ftp
[root@localhost ~]# chmod og-w /var/ftp
[root@localhost ~]# cp vsftpd.conf /etc/
[root@localhost ~]# vi /etc/vsftpd.conf
/** #下面是需要增加的 前面的一些配置没有写
listen=YES
guest_enable=YES
guest_username=userxuni
pam_service_name=vsftp.vu
user_config_dir=/etc/vsftpd_userconfig
**/
[root@localhost ~]# /usr/local/sbin/vsftpd &
[root@localhost ~]# ps -aux |grep vsftpd
[root@localhost ~]# killall -9 pid
[root@localhost ~]# vi /data0/apppackage/vsftpd-2.3.1/account.txt
/**
14001
123456
**/
[root@localhost ~]# db_load -T -t hash -f account.txt  /etc/account.db
[root@localhost ~]# chmod 600 /etc/account.db
[root@localhost ~]# useradd -d fuao/data userxuni
[root@localhost ~]# useradd -d /fuao/data userxuni
[root@localhost ~]# chmod 777 /fuao/data
[root@localhost ~]# mkdir /etc/vsftpd_userconfig
[root@localhost ~]# vi /etc/vsftpd_userconfig/14001
/**
anonymous_enable=NO
local_enable=YES
local_root=/fuao/14001
write_enable=YES
guest_enable=YES
guest_username=userxuni
anon_upload_enable=NO
anon_other_write_enable=NO
anon_mkdir_write_enable=NO
chroot_local_user=YES
listen=YES
anon_world_readable_only=NO
**/
[root@localhost ~]# mkdir /fuao/14001
[root@localhost ~]# chown userxuni.userxuni /fuao/14001
[root@localhost ~]# vi /etc/pam.d/vsftp.vu
/**
auth required /lib/security/pam_userdb.so db=/etc/account
account required /lib/security/pam_userdb.so db=/etc/account
**/
[root@localhost ~]# ps -aux |grep vsftpd
[root@localhost ~]# kill -9 12595
[root@localhost ~]# /usr/local/sbin/vsftpd &

4测试
[root@localhost ~]# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.3.0)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): 14001
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

参考 http://wenku.baidu.com/view/bd90f37e5acfa1c7aa00cce5.html
遇到的问题
1.编译报错或者缺少支持 导致无法运行主要是缺少几个几个包 1中的yum下载的内容
2. 虚拟用户无法登陆 http://www.chinaunix.net/jh/15/586793.html

vim /etc/vsftpd/vuserconfig/testvuser

vim /etc/vsftpd/vuserconfig/testvuser
guest_enable=yes:开启虚拟帐号登录
guest_username=test:设置testvuser对应的系统帐号为test
anon_world_readable_only=no:允许匿名用户浏览器整个服务器的文件系统
write_enable=yes:允许在文件系统写入权限
anon_mkdir_write_enable=yes:允许创建文件夹
anon_other_write_enable=yes:允许其他权限比如重命令、删除文件及文件夹
anon_upload_enable=yes:开启匿名帐号的上传功能

guest_enable=yes
guest_username=test
anon_world_readable_only=no
write_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
anon_upload_enable=yes


//以上步骤均运行过 第一次配置 匿名是可以访问 注册用户是可以登录访问 问题:虚拟用户配置无法上传 增加目录
后面重复了很多遍,也参考了许多网上文档 基本步骤都一样 后面出现了情况是 匿名可以 但是注册用户就都登录不了
实在不得决定重新用rpm包装 1.自己觉得可能源码有问题 2 虚拟用户的情况不太适合公司增加员工时增加账号的情况 3觉得先保持和前人的技术文档一致配置 这样好找出问题所在
//参考文献 http://bbs.51cto.com/thread-557014-1.html
//以下自己操作  基本和参考一致(运行时正确的)
//环境Linux version 2.6.18-194.el5 (mockbuild@builder16.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Fri Apr 2 14:58:35 EDT 2010
//selinux(selinux支持上传)这个没有运行 所以这个跳过
linux 版本
Linux version 2.6.18-194.el5 (mockbuild@builder16.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Fri Apr 2 14:58:35 EDT 2010
安装的vsftpd版本(直接yum安装的)
vsftpd-2.0.5-21.el5.i386.rpm

[root@localhost apppackage]# yum -y install vsftpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: mirrors.163.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package vsftpd.i386 0:2.0.5-21.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
Package          Arch           Version                   Repository      Size
================================================================================
Installing:
vsftpd           i386           2.0.5-21.el5              base           142 k

Transaction Summary
================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 142 k
Downloading Packages:
vsftpd-2.0.5-21.el5.i386.rpm                             | 142 kB     00:00    
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : vsftpd                                                   1/1
warning: /etc/vsftpd/vsftpd.conf created as /etc/vsftpd/vsftpd.conf.rpmnew

Installed:
  vsftpd.i386 0:2.0.5-21.el5                                                   

Complete!
[root@localhost apppackage]# ps -aux |grep vsftpd
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
root      3455  0.0  0.0   5108   680 pts/0    S+   14:11   0:00 grep vsftpd

#启动进程
service vsftpd start

//修改客户端显示中文乱码
修改/etc/sysconfig/i18n文件
LANG="zh_CN.UTF-8"
改为
#LANG="zh_CN.UTF-8"
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"

//
[root@localhost apppackage]# ll -d /var/ftp
drwxr-xr-x 4 root root 4096 12-28 14:11 /var/ftp
[root@localhost apppackage]# ls /var/ftp/
companydata  pub
[root@localhost apppackage]# ll -d /var/ftp/companydata/
drwxr-xr-x 3 ftp root 4096 12-28 10:31 /var/ftp/companydata/
[root@localhost apppackage]# getsebool -a|grep ftp
getsebool:  SELinux is disabled
[root@localhost apppackage]# chkconfig --list |grep vsftpd
vsftpd          0:关闭  1:关闭  2:关闭  3:关闭  4:关闭  5:关闭  6:关闭
[root@localhost apppackage]# chkconfig --level 3 vsftpd on
[root@localhost apppackage]# chkconfig --list |grep vsftpd
vsftpd          0:关闭  1:关闭  2:关闭  3:启用  4:关闭  5:关闭  6:关闭
[root@localhost apppackage]#
[root@localhost apppackage]# service vsftpd stop
关闭 vsftpd:                                              [确定]
[root@localhost apppackage]# service vsftpd start
为 vsftpd 启动 vsftpd:                                    [确定]
[root@localhost apppackage]#
//匿名登录FTP 可新建 上传 不可删除 修改


[root@localhost apppackage]# useradd -s /sbin/nologin 14001
[root@localhost apppackage]# useradd -s /sbin/nologin admin
[root@localhost apppackage]# passwd 14001
Changing password for user 14001.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@localhost apppackage]# passwd admin
Changing password for user admin.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@localhost apppackage]#


[root@localhost ~]# ll -d /var/ftp
drwxr-xr-x 4 root root 4096 12-28 15:25 /var/ftp
[root@localhost ~]# ll -d /fuao
drwxrwxrwx 32 root root 4096 12-27 15:36 /fuao
[root@localhost ~]# ll -d /fuao/14001
drwxr-xrwx 2 admin admin 4096 12-27 11:18 /fuao/14001
[root@localhost ~]# chmod 755 /fuao/14001
[root@localhost ~]# ll -d /fuao/14001
drwxr-xr-x 2 admin admin 4096 12-27 11:18 /fuao/14001
[root@localhost ~]# service vsftpd restart

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO:禁止匿名用户登录
local_enable=YES:允许本地用户登录
local_root=/var/www/html:设置本地用户的根目录为/var/www/html
chroot_list_enable=YES:激chroot功能
chroot_list_file=/etc/vsftpd/chroot_list:设置锁定用户在根目录中的列表文件

[root@localhost ~]# touch /etc/vsftpd/chroot_list
[root@localhost ~]# ll /etc/vsftpd
总计 20
-rw-r--r-- 1 root root    0 12-28 15:34 chroot_list
-rw------- 1 root root  125 2011-05-31 ftpusers
-rw------- 1 root root  361 2011-05-31 user_list
-rw------- 1 root root 4591 12-28 15:33 vsftpd.conf
-rwxr--r-- 1 root root  338 2011-05-31 vsftpd_conf_migrate.sh
[root@localhost ~]# vi /etc/vsftpd/chroot_list
14001
admin

[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
local_root=/fuao
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
anon_world_readable_only=NO   --表示用户可以浏览FTP目录和下载文件(包括匿名用户)


/*********************************************************************
上面按演示是2个用户共用一个目录 现在情况是给每个员工自己定位他的ftp目录
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
#最后面加入
user_config_dir=/etc/vsftpd/userconfig
[root@localhost ~]# mkdir /etc/vsftpd/userconfig
[root@localhost ~]# ls /etc/vsftpd/user
userconfig/ user_list  
[root@localhost ~]# ll /etc/vsftpd
总计 28
-rw-r--r-- 1 root root   12 12-28 15:34 chroot_list
-rw------- 1 root root  125 2011-05-31 ftpusers
drwxr-xr-x 2 root root 4096 12-28 16:16 userconfig
-rw------- 1 root root  361 2011-05-31 user_list
-rw------- 1 root root 4630 12-28 16:16 vsftpd.conf
-rwxr--r-- 1 root root  338 2011-05-31 vsftpd_conf_migrate.sh
[root@localhost ~]# vi /etc/vsftpd/userconfig/14001
local_root=/fuao/14001
local_max_rate=60000
[root@localhost ~]# service vsftpd restart

测试登录 14001  根目录已经由/fuao变为/fuao/14001 上传大文件测试ok
创建组
[root@localhost ~]# groupadd ftpgroup
[root@localhost ~]# vi /etc/group
#修改组
[root@localhost ~]# usermod -g ftpgroup 14001
#修改无权限登录
[root@localhost ~]# usermod -s /sbin/nologin 14001
#修改根目录
[root@localhost ~]# usermod -d /fuao/14001 14001
[root@localhost ~]# vi /etc/passwd
#完整的创建目录
[root@localhost ~]# useradd -g ftpgroup -d /fuao/12002 -s /sbin/nologin  12002

[root@localhost ~]# useradd -g ftpgroup -d /fuao/12009 -s /sbin/nologin  12009
根目录不要建立到ftp目录下 测试了建立后根目录下有系统文件暴露不好

/******************************
#以后创建新的ftp用户步骤
[root@localhost ~]# useradd -g ftpgroup -s /sbin/nologin  12009
[root@localhost ~]# passwd 12009
[root@localhost ~]# vi /etc/vsftpd/userconfig/12009
local_root=/fuao/12009
local_max_rate=600000
或者
[root@localhost ~]# cp /etc/vsftpd/userconfig/14001 /etc/vsftpd/userconfig/12009
[root@localhost ~]# vi /etc/vsftpd/userconfig/12009
local_root=/fuao/12009
local_max_rate=600000
#添加授权ftp登录账户
[root@localhost ~]# vi /etc/vsftpd/chroot_list
14001
admin
12009
12002
测试不用重启vsftpd可以登录
********************************/

anonymous_enable=YES
local_root=/fuao/admin
local_max_rate=600000  600k
#max_clients=100
#max_per_ip=5
local_enable=YES
write_enable=YES
anon_upload_enable=YES                                                                              
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
chroot_local_user=YES
listen=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES

//根目录匿名账户无法上传文件 不过发现也用不着 在里面建几个常用目录供上传下载就可以了
分享到:
评论

相关推荐

    adminvsftpd:管理vsftpd服务器-开源

    版本1.4.2中的新安全更新ADMINVSFTPD是用于管理vsftpd服务器的Web界面。 用户存储在MySQL数据库中,其中包括的功能允许多个管理员和电子邮件通知; Web界面还允许用户在不使用ftp客户端的情况下使用其帐户。 防病毒...

    详解CentOS7安装配置vsftp搭建FTP

    安装配置vsftpd做FTP服务,我们的Web应用使用git管理进行迭代,公共文件软件存储使用开源网盘Seafile来管理,基本够用。想不到FTP的使用的场景,感觉它好像老去了,虽然现在基本没有用到这个工具,但刚好公司公司刷...

    docker.vsftpd:基于Debian的非常轻巧的vsftpd安装

    按照设计,它将仅运行vsftpd可执行文件,公开FTP标准端口,并将/ etc导出为配置文件和本地用户数据库的卷,从而允许您添加任何帐户。 当您想通过FTP从另一个容器中导入某些网站的内容并导入其卷时,它非常方便。 您...

    Apache+Php+Mysql+PhpMyAdmin+MysqlGui配置

    Apache+Php+Mysql+PhpMyAdmin+MysqlGui配置

    caddy_and_vsftpd:在AWS上设置Web和FTP服务器的说明和配置

    借助AWS提供便捷的Web和FTP服务如果您需要设置Web和FTP服务器,请使用Caddy和vsftpd进行以下操作。 如果可以使用Ubuntu附带的ssh服务通过SFTP访问,则可能不需要vsftpd。指示使用Ubuntu AMI设置并启动新的EC2 t2....

    Linux FTP服务搭建

    第6步,按照该配置文件启动服务,现在首先停止按照默认配置启动的vsftpd: [root@localhost ~]#service vsftpd stop 然后根据刚才创建的配置文件启动vsftps: [root@localhost ~]#/usr/sbin/vsftpd /etc/vsftpd/...

    Linux服务器配置与管理项目8--FTP服务器配置与管理.pptx

    同时,公司的Web服务器也要借助FTP服务来实现网站资源的更新。 本项目中我们来完成FTP服务器的配置与管理任务。 Linux服务器配置与管理项目8--FTP服务器配置与管理全文共50页,当前为第2页。 【学习目标】 (1)了解...

    liunxFTP配置

    yum install vsftpd 默认情况下允许匿名登陆 如果想允许本地用户登陆,可以这么修改配置文件中 cd /etc/vsftpd vim vsftpd.conf 加入userlist_deny=NO#它代表的意思是允许在/etc/vsftpd/user_list中的用户...

    Centos 64位PHP5.4 Apache Web云服务器操作文档详解

    版本:centos 6.3 64位/php5.4-apache2-mysql5.5-vsftpd 1、软件安装方式 2、云服务器配置要求 3、软件版本号、开源协议列表 4、MYSQL及FTP密码 5、软件目录及配置列表 6、软件操作命令汇总 7、开机自启动 8...

    利用Webmin设置linux服务器

    本人在公司实习过程中,经同事指点,将配置linux服务器的基本过程记录下来,文档中的每一步都经过多次操作,并调试成功。可供初学者参考。

    linux系统教程

    第一章 Linux系统安装与环境介绍 5 1.1 Linux产生 5 1.2 Linux功能 5 1.3 Linux术语 5 1.4 Kernel 5 1.5 版本 5 1.6 安装RedHat Enterprise Linux...10.3.2 配置vsftpd 55 10.4 使用vsftp服务 56 10.4 Linux安全初步 56

    Centos 通过 Nginx 和 vsftpd 构建图片服务器的教程(图文)

    其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3...

    企业级Linux服务攻略

    6.3.1 主配置文件vsftpd.conf 6.3.2 实现匿名用户访问 6.3.3 实现实体用户访问 6.3.4 FTP应用案例Ⅰ 6.3.5 限制用户目录 6.3.6 限制服务器连接数 6.3.7 定制FTP目录欢迎信息 6.3.8 限制下载速度 6.3.9 FTP的启动与...

    通过Linux系统伪装方法加固系统安全

    通过分析Web服务器的类型,大致可以推测出操作系统的类型,比如,Windows 使用IIS来...通过FTP服务,也可以推测操作系统的类型,比如,Windows下的FTP服务多是Serv-U,而Linux下常用vsftpd、proftpd和pureftpd等软件。

    Ubuntu16.04搭建php5.6Web服务器环境

    Ubuntu 16.04默认安装php7.0环境,但是php7目前对某些旧系统的兼容性并不是很好,如果自行安装php5需要清除php7的已安装包,否则会报错。 移除默认及已安装的PHP包 ...sudo apt-get install aptitude ...添加 PPA ...安

    linux基本操作

    1. VI的用法 5 1.1. VI与VIM 5 1.2. VI常用的模式 5 1.3. VI的设置 5 1.4. VI的基本用法 6 1.4.1. 常用命令、设置和操作 6 1.4.2. Ctag的用法 8 1.4.3. Taglist插件 9 1.4.4. Cscope的用法 10 ...11. web服务 47

    LNMP 0.7 Nginx.zip

    我们为什么采用LNMP这种架构? ... Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,已经在一些俄罗斯的大型网站上运行多年,相当的稳定。...VsFTPd

    LNMP 一键安装包.zip

    Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,已经在一些俄罗斯的大型网站上运行多年,相当的稳定。 Nginx相当的稳定、功能丰富、安装配置简单...

    基于SSM架构实现的大型分布式购物网站-B2C项目源码+项目说明.zip

    使用ftp服务上传图片,vsftpd ##图片服务器的搭建 使用centos7.0 需要把nginx的根目录指向ftp上传文件的目录。 ##service层 接收Controller传递过来的参数,一个文件MultiPartFile对象。把文件上传到ftp服务器。...

Global site tag (gtag.js) - Google Analytics