技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 系统运维 --> CentOS vsftpd的安装与配置

CentOS vsftpd的安装与配置

浏览:2301次  出处信息

下面这些关非人所写的.相关的内容是由post by 洪明伟 / 2010-4-4 9:20所写.因看到写的这些很有用处.所以我把它的文章直接转移过来.一个是为了自己保存他有的劳动成果.一方面是给自己留下学习的内容.

一、vsftpd软件介绍     vsftp,全称:Very security ftp。是Linux系统下最常见,常用的 FTP 服务器架设软件。除此之外,还有一个proftp(Profession ftp)。

二、访问方式     vsftp架设的FTP文件服务器,提供3种远程的登录方式:
1.匿名登录方式     不用解释了,就是不需要用户名,密码。就能登录到服务器电脑里面
2.本地用户方式     意思是,需要帐户名和密码才能登录。而且,这个帐户名和密码,都是在你linux系统里面,已经 有的用户。
3. 虚拟用户方式     同样需要用户名和密码才能登录。但是和上面的区别就是,这个用户名和密码,在你linux系统中 是没有的(没有该用户帐号)

三、vsftpd 的安装
1. 对于Debian和Ubuntu系统,可以直接通过: sudo apt-get install vsftpd 来安装 启用,停用和重新启动是: /etc/init.d/vsftpd start(stop 和 restart)
2. 对于Redhat, Fedoar和Centos一 般这3类系统,都自带vsftpd,可以通过: rpm -qa|grep vsftp,来查询下是否已经安装 了。如果没装,可以从光盘里面找到安装包双击安装,或者也可以: yum install vsftpd 来安装。(我是安装的CentOS 5.4 我用的命令就是yum install vsftpd) 注:启用、停用、重启 vsftdp service vsftpd {start|stop|restart}或/etc/init.d/vsftpd {start|stop|restart}

四、配置前的注意事项   1.查看,修改vsftp启动状态 查看vsftpd状态:service vsftpd status
查看vsftpd启动状态:chkconfig -list vsftpd 设置vsftpd 2345为启动状态:chkconfig -level 2345 vsftpd on   2.查看,修改防火墙状态 查看防火墙状态:/etc/init.d/iptables status 添加开放21号端口:/sbin/iptables -I INPUT -p tcp -dport 21 -j ACCEPT  保存配置:/etc/rc.d/init.d/iptables save  重启防火墙(启用,停 用):service iptables {start|stop|restart}    3.查看,关闭selinux (查看selinux运行情况 #/usr/sbin/sestatus)  查看selinux状态 /usr/sbin/sestatus或sestatus 修改selinux状态vi /etc/sysconfig/selinux 修改 SELINUX=disabled 保存退出并重启系统reboot

这样子vsftp也就安装好了,剩下的就是进行用户模式的配置 了

五、vsftpd 三 种模式的配置方法

vsftpd的配置由文件/etc/vsftpd/vsftpd.conf,每 种配置都要先修改配置文件,为了使配置文件的原始性,要先把配置文件拷贝并保存一份。

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.init

然后,开始我们的配置,在每次配置以前,记得把原始文件覆盖到配置文件, 以免出现不可知的意外错误。

cp /etc/vsftpd/vsftpd.conf.init /etc/vsftpd/vsftpd.conf

1. 匿名登录方式
修改配置文件  vi /etc/vsftpd/vsftpd.conf (由于JOY不懂使用VI命令,所以是把文件下载到本机上,用UltraEdit进行修改。强烈推荐)

要修改的内容如下(红色字体为解释,不要写入配置 文件)

Anon_upload_enable=yes (开放上传权限)
Anon_mkdir_write_enable=yes (可创建目录的同时可以在此目录 中上传文件)
Write_enable=yes (开放本地用户写的权限)
Anon_other_write_enable=yes (匿名帐号可以有删除的权限)
anon_world_readable_only=no(匿名帐号可以用下载的权限)

配置文件中没有的就添加,没有的就对值进行修改.

修改文件夹权限

cd /var/ftp
chmod 757 pub

注:

修改文件夹权限的命令:chmod 777 pub

777的意思就是 root root组 other 的 权限,7=4+2+1=r+w+x=读+写+执行
查看 文件夹权限的命令
ls -l ftp
chmod 757 pub
查看的时候查看当前文件夹只可以查看到下面的文件夹权限,如果要查看PUB的 文件夹权限,要到FTP的上一个目录查看FTP的权限就可以显示PUB的 文件夹权限,以此类推4-r 2-w 1-x | drwxr-xr-x = 756 | drwxr-xrwx = 757

重启vsftpd:service vsftpd restart

2. Linux本地用户,远程登录FTP(简称:本地用户模式)

修改配置文件

vi /etc/vsftpd/vsftpd.conf

要修改的内容如下(红色字体为解释,不要写入配置 文件)

listen=yes(设置为独立服务器)
local_enable=YES(允许本地用户登录FTP)
write_enable=yes(启用本地用户(登 录后)的读写权限)
local_umask=022(FTP上本地的文件权 限,默认是077)
dirmessage_enable=yes(切换目录时,显示目录下.message的 内容)
connect_from_port_20=yes(启用FTP数 据端口的数据连接)
chroot_local_user=NO(本地所有帐户都只能在自家目录)
chroot_list_enable=yes(文件中的名单可以调用)
chroot_list_file=/etc/vsftpd.chroot_list(上述文件所在的位置(绝 对路径)
ls_recurse_enable=no(禁止用户使用 ls 命 令)
userlist_enable=yes(启用 用户列表文件)
userlist_file=/etc/vsftpd.user_list(用户列表文件的绝对路径)
userlist_deny=no(用户列表名单中的人不允许访问)
pam_service_name=vsftpd(验证方式)
user_config_dir=/etc/vsftpd/vsftpd_user_conf(个人配置文件的路径(文 件所在目录)

添加用户,设置密码

useradd username
passwd password

添加用户到ftp用户组

debian或Ubuntu:

user -G username ftp

Redat,Fedoar或Centos

usermod -G ftp username

创建该用户的(FTP访 问)文件夹,并修改所有者权限(如果所有者不是该用户)

创建文件夹命令:

mkdir 具体文件夹路径和名称

修改所有者:

chown -R 用户文件夹

注:

这个步骤可以不做,因为linux下创建了用户,系统会自 动在 /home下,创建个文件夹,名字就是这个用户的,vsftpd会 默认的认为,该用户的路径就是这个文件夹。其实为了方便,我倒是建议大家直接用默认的。这样可以省去很多因为权限导致的怪问题。

建立用户配置文档
在/etc/vsftpd 下 面建立 vsftpd_user_conf 文件夹

mkdir /etc/vsftpd/vsftpd_user_conf

下面再新建个文件,名字是你本地用 户的名字

vi /etc/vsftpd/vsftpd_user_conf/username

里面内容是:

write_enable=yes(给予该本地用户读写权限)

建立用户访问列表

在/etc 文 件夹下,新建vsftpd.chroot_list 文件

vi /etc/vsftpd.chroot_list

内容为允许访问FTP的 本地用户的名字

username

在 /etc 文 件夹下,新建vsftpd.user_list 文件

vi /etc/vsftpd.user_list

内容为允许访问FTP的 本地用户的名字

username

重启vsftpd    service vsftpd restart

至此,FTP文件服务器就完成了

以上内容来自:http://www.php138.com/post-108.html

建议继续学习:

  1. 配置Nginx+uwsgi更方便地部署python应用    (阅读:105399)
  2. Linux 下 PHP 5.2.x 连接 SQL Server 数据库 FreeTDS 配置笔记    (阅读:10102)
  3. nginx的配置文件    (阅读:8821)
  4. Emacs安装配置    (阅读:7304)
  5. 如何查看Linux 硬件配置信息    (阅读:5863)
  6. Centos yum 安装nginx+PHP-FPM+eAccelerator+mysql    (阅读:5611)
  7. Apache2中俩种设置PHP的异同    (阅读:5293)
  8. Linux(Ubuntu 10.04)上安装配置apache+php+mysql+phpmyadmin    (阅读:5003)
  9. 在FreeNAS/BSD搭建基于Nginx+FastCGI+MySQL+PHP的WebServer    (阅读:4754)
  10. 在Mac OS X中运行Apache + PHP + MySQL    (阅读:4362)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1