Chinaunix首页 | 论坛 | 博客
  • 博客访问: 428065
  • 博文数量: 112
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1085
  • 用 户 组: 普通用户
  • 注册时间: 2013-01-15 09:42
个人简介

上善若水,不浮不沉!

文章存档

2021年(2)

2020年(3)

2018年(2)

2017年(1)

2016年(8)

2015年(11)

2014年(57)

2013年(28)

我的朋友

分类: LINUX

2014-01-23 13:01:03

    FTP=File Transfer Protocol(PFC959)

    系统环境Linux 2.6.15-1.2054_FC5

    只安装了开发工具,无图形环境

    建立ftp前的一些准备工作

    # useradd nobody

    # mkdir /usr/share/empty/

    # mkdir /var/ftp/

    # useradd -d /var/ftp ftp

    # chown root.root /var/ftp

    # chmod og-w /var/ftp

    如果系统已经做好这些工作我们就可以直接进行以下工作

    下载

    

    安装VSFTP

    cd /usr/src

    tar xvzf vsftpd-2.0.5.tar.gz

    cd vsftpd-2.0.5

    make

    make install

    安装配置文件

    cp vsftpd.conf /etc/

    cp RedHat/vsftpd.pam /etc/pam.d/

    mv /etc/pam.d/vsftpd.pam /etc/pam.d/ftp

    编辑配置文件/etc/vsftpd.conf 在末尾处加入一句话:

    listen=YES(使VSFTP采用单独运行模式运行)

    禁用xinetd方式启动

    chkconfig vsftpd off

    chkconfig vsftpd --list 显示 vsftpd off

    添加到开机自启动

    vi /etc/rc.local添加一句话

    /usr/local/sbin/vsftpd &

    手动启动服务

    /usr/local/sbin/vsftpd & 或/etc/rc.local停止服务 killall -9 vsftpd

    察看端口,如果有21端口处于监听状态,则ftp服务运行。

    netstat -tln


    配置匿名用户访问及上传

    vi /etc/vsftpd.conf

    anonymous_enable=YES #允许匿名用户登录服务器

    local_enable=YES #允许本地用户登录

    write_enable=YES #允许客户端写命令

    local_umask=022 #本地用户新文件的umask值(文件对同组和其他用户 来说是只读的)

    anon_upload_enable=YES #允许匿名用户上传文件

    anon_mkdir_write_enable=YES #允许匿名用户创建目录

    dirmessage_enable=YES #允许使用目录信息(将目录下.message文件打印给用 户)

    ftp_banner=welcome to ... #登录欢迎词

    listen=YES #运行在监听模式

    配置:

    anonymous_enable=YES

    local_enable=YES

    write_enable=YES

    local_umask=022

    anon_upload_enable=YES

    dirmessage_enable=YES

    重启服务

    killall -9 vsftpd

    /usr/local/sbin/vsftpd &

    上面两句话可用killall -HUP vsftpd 代替

    此时可以尝试登陆FTP服务器,

    ftp localhost

    匿名用户anonymous/ftp可访问下载。

    由于匿名帐户属于ftp组,但是/var/ftp 属于root组,且权限为755其他由户不可写

    所以可以新建目录,将文件属性改为FTP组

    mkdir /var/ftp/incoming

    chgrp ftp incoming/

    此时匿名用户可访问可以在incoming文件夹内下载上传。

    但是所有匿名用户都可以看到下载删除其他匿名用户上传得东西

    所以可以把ftp组可读权限去掉,这样匿名用户能上传但是不能访问不能下载。

    chmod g-r incoming/

    ls -ld incoming/

    显示drwx-wxr-x 2 root ftp 4096 Oct 21 18:13 incoming

    普通用户的目录锁定

    匿名用户默认配置被锁定在:“/”目录下即/var/ftp

    普通用户登录ftp时也可以锁定

    需要打开

    chroot_list-enable=YES

    在中chtoot_list_file=/etc/vsftpd.chroot_list

    写入普通用户名

    redhat

    test

    用户控制

    写入/etc/ftpusers:的用户将被拒绝访问ftp(但是可以通过修改/etc/pam.d/ftp中的sense值为allow来改成允许的用户列表)

    此方法并未成功,但是可以用下列方法实现本地用户访问控制

    在/etc/vsftpd.conf中添加

    userlist_enalbe=YES

    userlist_deny=YES

    userlist_file=/etc/vsftpd.user_list

    vi /etc/vsftpd.user_list

    test

    这样在vsftpd.user_list中的test帐户不能访问ftp。如果是userlist_deny=NO

    就变成只有test可以访问ftp


    强烈推荐使用man vsftpd.conf

    察看更多详细内容。



阅读(756) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~