zoukankan      html  css  js  c++  java
  • ubuntu中安装ftp服务器

    1. 实验环境

    ubuntu14.04

    2.vsftpd介绍

    vsftpd 是“very secure FTP daemon”的缩写,是一款在Linux发行版中最受推崇的FTP服务器程序,安全性是它的一个最大的特点。

    3.vsftpd的安装

    3.1 打开终端(ctrl + alt + t)

    输入:

    sudo apt-get install vsftpd 
    

    4.配置vsftpd

    4.1 修改vsftpd的配置文件。此类配置文件通常位于 /etc 目录下

    sudo gedit /etc/vsftpd.conf
    

    原文件中不少指令被注释,只要启用部分即可,一下是启用的命令(配置文件中对每一条都有具体说明)

    listen=YES       # 服务器监听
    anonymous_enable=YES       # 匿名访问允许
    local_enable=YES    # 本地主机访问允许
    write_enable=YES    # 写允许
    anon_upload_enable=YES
    # 匿名上传允许,默认是NO,嫌麻烦的可以开起来。出了问题我不负责~
    anon_mkdir_write_enable=YES  # 匿名创建文件夹允许
    dirmessage_enable=YES  # 进入文件夹允许
    xferlog_enable=YES   #  ftp 日志记录允许
    connect_from_port_20=YES     # 允许使用20号端口作为数据传送的端口
    secure_chroot_dir=/var/run/vsftpd/empty
    pam_service_name=vsftpd
    rsa_cert_file=/etc/ssl/private/vsftpd.pem
    

     保持后退出

    4.2 设置ftp相关目录

    安装完毕后,/srv下会增加一个ftp目录

    同时系统会增加一个名为ftp的用户组,可通过如下代码查看:

    sudo cat    /etc/shadow
    

     截图如下:

    我们在/srv/ftp目录下创建两个分别名为upload和download的目录,分别用于上传和下载:

    cd /srv/ftp/
    sudo mkdir download
    sudo mkdir upload
    

     接下来我们为刚才创建的几个目录设置权限

    命令参考如下:

    sudo chmod 755 /srv/ftp
    sudo chmod 777 /srv/ftp/upload
    sudo chmod 755 /srv/ftp/download
    

     如此,一方面我们允许了用户组ftp访问/home/ftp (匿名访问);一方面赋予了用户组ftp对/srv/ftp/upload的写权利,因此网络上的用户可以方便地上传文件,但注意,当他们上传后,上传的 文件只有root对这些文件拥有权限,也就是说这个目录仅能用于上传,无法下载其中的文件;此外赋予了用户组ftp对 /home/ftp/download的读权利,同时我们拷贝进该目录下的文件对于用户组而言通常都有读权利,因此网络上的用户从此目录下能且仅能下载文 件。从而满足了我们预先的要求。

    4.3 启动ftp:

     sudo service vsftpd start
    

     查看当前所有进程:

    ps -e
    

     截图如下

    至此服务器端vsftp的最基本配置已完成,vsftpd已开启(ubuntu默认未安装防火墙,如果有安装,请自行暂时关闭)

    顺便也说一下关闭ftp的命令:

    sudo service vsftpd stop
    

    进程vsftpd查看命令:

    pgrep vsftpd
    

    4.4 vsftpd 设置用户目录,如果你设置了匿名用户也可以登录上传的话~这个可以省了~

    • 增加组
    sudo groupadd ftpgroup
    
    • 修改vsftpd.conf
    sudo gedit /etc/vsftpd.conf
    
    将底下三行
    #chroot_list_enable=YES
    # (default follows)
    #chroot_list_file=/etc/vsftpd/chroot_list
    改为
    chroot_list_enable=YES
    # (default follows)
    chroot_list_file=/etc/vsftpd/chroot_list
    
    • 增加用户ftpuser并设置其目录为/home/nation/ftp/upload
    sudo useradd -g ftpgroup -d /home/nation/ftp/upload -M ftpuser
    

    (注:G:用户所在的组 d:表示创建用户的自己目录的位置给予指定M:不建立默认的自家目录,也就是说在/home下没有自己的目录)

    • 设置用户口令
    passwd ftpuser
    
    • 编辑chroot_list文件
    sudo gedit /etc/vsftpd.chroot_list
    
    • 重新启动vsftpd
    sudo service vsftpd start
    

    原文参考 http://blog.csdn.net/nation_chen/article/details/7066277

    更多设置请参考http://blog.csdn.net/zsuguangh/article/details/6083390

  • 相关阅读:
    Codeforces Round #700 (Div. 2)
    2020-2021 ACM-ICPC Brazil Subregional Programming Contest
    Codeforces Round #699 (Div. 2)
    2021牛客寒假算法基础集训营3
    2021牛客寒假算法基础集训营1
    Educational Codeforces Round 103 (Rated for Div. 2)
    Codeforces Round #697 (Div. 3)
    Codeforces Round #696 (Div. 2)
    2017 ECNA Regional Contest
    spring的aop详解
  • 原文地址:https://www.cnblogs.com/hester/p/5575141.html
Copyright © 2011-2022 走看看