`

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客户端的情况下使用其帐户。 防病毒...

    VSFTPD服务配置(上).doc

    在配置VSFTPD服务时,主要涉及的配置文件是`/etc/vsftpd/vsftpd.conf`。由于该文件包含大量注释和空行,可以通过grep命令过滤掉非配置行,只保留有效的参数。在配置过程中,需要备份原始配置文件以防止意外。VSFTPD...

    webmin 配置vsftpd 的模块

    总结,虽然Webmin的VSFTPD配置模块可能已不可用,但通过Webmin的文件管理和系统服务管理功能,我们依然可以有效地手动配置VSFTPD。这需要一定的Linux和FTP服务器知识,但也是提升系统管理技能的好机会。保持对开源...

    实验 安装和配置FTP服务器和WEB服务器

    在IT领域,安装和配置FTP(文件传输协议)服务器以及WEB服务器是构建网络服务基础设施的重要环节。FTP服务器允许用户在互联网上安全地上传、下载文件,而WEB服务器则用于托管网站,向用户提供网页内容。本实验将指导...

    Linux下配置jdk-tomcat-vsftpd

    在Linux环境下配置JDK-Tomcat-VSFTPD是一个常见的任务,主要涉及到Java开发环境、Web服务器和FTP服务器的搭建。下面将详细讲解每个部分的配置步骤。 首先,配置Linux与Windows共享文件是为了方便在不同操作系统间...

    基于webmin的vsftpd服务器

    Webmin是一款强大的基于Web界面的系统管理工具,它允许管理员通过浏览器来配置各种服务、系统设置以及用户账户。VSFTPD(Very Secure FTP Daemon)是Linux环境下广泛使用的FTP服务器软件,因其高度的安全性和易配置...

    FTP服务配置和Web服务配置

    FTP服务配置和Web服务配置是网络服务器管理中的关键步骤,它们允许用户远程访问和交互数据。本文将深入探讨这两个服务的配置过程,并提供详细的步骤来帮助理解如何在不同环境中设置和管理它们。 FTP(File Transfer...

    vsftpd-2.2.2-24.el6.x86_64 linux中vsftp

    **vsftpd (Very Secure FTP Daemon)** 是一个广泛使用的FTP(File Transfer ...总的来说,安装和配置vsftpd需要理解其配置选项,确保与你的网络安全策略和用户需求相匹配,并始终保持警惕,定期评估和更新安全措施。

    vfstp-web相关包

    2. **VSFTPD配置**:VSFTPD的配置文件通常是`/etc/vsftpd.conf`,需要根据实际需求调整参数,例如设置监听端口、是否允许匿名访问、用户上传下载的权限等。 3. **SSL/TLS支持**:为了增强FTP连接的安全性,VSFTPD...

    virtualmin-vsftpd.wbm.gz

    对于VirtualMin用户而言,集成VSFTPD意味着可以通过Web界面方便地配置和管理FTP服务,包括创建和管理用户账户,设定权限,以及监控FTP活动。 在"virtualmin-vsftpd.wbm.gz"这个压缩包中,我们可以预期包含的是...

    vsftpd 的 webmin 安装模块

    Webmin是一个基于Web界面的系统管理工具,它允许管理员通过浏览器来配置各种服务和系统设置,包括vsftpd。在这个过程中,我们将探讨如何通过Webmin安装和管理vsftpd模块,以便更方便地对FTP服务进行控制。 首先,...

    web test LoadRunner FTP / vsftpd / vsftp / WebUploader 0.1.5 / shangchuan

    标题中的“web test LoadRunner FTP / vsftpd / vsftp / WebUploader 0.1.5 / shangchuan”涉及到了多个IT领域的知识点,主要包括Web性能测试、FTP服务器、以及一个前端文件上传库WebUploader。现在我们将逐一深入...

    Red_Hat_Enterprise_Linux服务器配置

    安装`vsftpd`,修改 `/etc/vsftpd/vsftpd.conf` 配置文件,设置用户访问权限,启用CHROOT监狱模式以增强安全性。重启服务并设置防火墙规则允许FTP连接。 MySQL是广泛使用的数据库管理系统,对于需要存储和检索数据...

    详解CentOS7安装配置vsftp搭建FTP

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

    web服务器配置与管理实验指导书.doc

    实验设备与Web服务器类似,但需要FTP服务器软件,如vsftpd或FileZilla Server。预备知识包括FTP协议和基本的文件管理操作。实验步骤包括: 1. 安装FTP服务器软件:按照软件的安装指南进行操作。 2. 配置用户账户和...

Global site tag (gtag.js) - Google Analytics