美文网首页
vsftp的安装与配置

vsftp的安装与配置

作者: alexbo | 来源:发表于2017-05-22 09:27 被阅读0次

    环境mint17.2

    1.安装

    dpkg -l|grep ftp

    sudo apt-get install vsftpd

    2.去根目录创建一个文件上传的文件夹

    sudo mkdir /ftpfile

    3.创建一个用户,他只对上传文件有权限,对系统登录无权限

    sudo useradd ftpuser -d /ftpfile/ -s /bin/bash

    4.用chown修改ftpfile的用户和组

    sudo chown -R ftpuser.ftpuser /ftpfile/

    5.重置用户的密码

    sudo passwd ftpuser

    6.去ftpfile文件夹中创建一个html文件

    sudo gedit /ftpfile/index.html

    7.配置ftp服务器

    先找到ftp的安装位置: whereis vsftpd

    修改配置文件:sudo gedit /etc/vsftpd.conf

    ftpd_banner=Welcome to vsftp service.(用户登录ftp服务器时候的欢迎信息)

    local_root=/ftpfile(本地目录) 

    use_localtime=yes

    重要的是增加这几句:

    userlist_deny=NO

    userlist_enable=YES

    userlist_file=/etc/allowed_users

    write_enable=YES

    seccomp_sandbox=NO

    在/etc/allowed_users增加ftpuser,这个文件表示可以登录ftp服务器的账户

    设置端口范围

    pam_service_name=vsftpd(采用被动模式)

    pasv_min_port=61001

    pasv_max_port=62000

    配置防火墙iptables

    sudo apt-getinstall iptables-persistent(安装配置iptables的文件)

    添加防火墙规则

    -A INPUT -p TCP --dport 61001:62000 -j ACCEPT

    -A OUTPUT -p TCP --sport 61001:62000 -j ACCEPT

    -A INPUT -p TCP --dport 20 -j ACCEPT

    -A OUTPUT -p TCP --sport 20 -j ACCEPT

    -A INPUT -p TCP --dport 21 -j ACCEPT

    -A OUTPUT -p TCP --sport 21 -j ACCEPT

    查看修改这个文件/etc/ftpusers,这个文件里面记录的是不能登录ftp服务器的用户

    sudo gedit /etc/ftpusers

    重新启动防火墙 

    重启ftp服务器

    sudo service vsftpd restart

    8.ftp服务器的验证

    附上/etc/vsftpd.conf整个配置文件:# Example config file /etc/vsftpd.conf

    #

    # The default compiled in settings are fairly paranoid. This sample file

    # loosens things up a bit, to make the ftp daemon more usable.

    # Please see vsftpd.conf.5 for all compiled in defaults.

    #

    # READ THIS: This example file is NOT an exhaustive list of vsftpd options.

    # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's

    # capabilities.

    #

    #

    # Run standalone?  vsftpd can run either from an inetd or as a standalone

    # daemon started from an initscript.

    listen=YES

    #

    # Run standalone with IPv6?

    # Like the listen parameter, except vsftpd will listen on an IPv6 socket

    # instead of an IPv4 one. This parameter and the listen parameter are mutually

    # exclusive.

    #listen_ipv6=YES

    #

    # Allow anonymous FTP? (Disabled by default)

    anonymous_enable=NO

    #

    # Uncomment this to allow local users to log in.

    local_enable=YES

    #

    # Uncomment this to enable any form of FTP write command.

    write_enable=YES

    #

    # Default umask for local users is 077. You may wish to change this to 022,

    # if your users expect that (022 is used by most other ftpd's)

    local_umask=022

    #

    # Uncomment this to allow the anonymous FTP user to upload files. This only

    # has an effect if the above global write enable is activated. Also, you will

    # obviously need to create a directory writable by the FTP user.

    #anon_upload_enable=YES

    #

    # Uncomment this if you want the anonymous FTP user to be able to create

    # new directories.

    #anon_mkdir_write_enable=YES

    #

    # Activate directory messages - messages given to remote users when they

    # go into a certain directory.

    dirmessage_enable=YES

    #

    # If enabled, vsftpd will display directory listings with the time

    # in  your  local  time  zone.  The default is to display GMT. The

    # times returned by the MDTM FTP command are also affected by this

    # option.

    use_localtime=YES

    #

    # Activate logging of uploads/downloads.

    xferlog_enable=YES

    #

    # Make sure PORT transfer connections originate from port 20 (ftp-data).

    connect_from_port_20=YES

    #

    # If you want, you can arrange for uploaded anonymous files to be owned by

    # a different user. Note! Using "root" for uploaded files is not

    # recommended!

    #chown_uploads=YES

    #chown_username=whoever

    #

    # You may override where the log file goes if you like. The default is shown

    # below.

    #xferlog_file=/var/log/vsftpd.log

    #

    # If you want, you can have your log file in standard ftpd xferlog format.

    # Note that the default log file location is /var/log/xferlog in this case.

    #xferlog_std_format=YES

    #

    # You may change the default value for timing out an idle session.

    #idle_session_timeout=600

    #

    # You may change the default value for timing out a data connection.

    #data_connection_timeout=120

    #

    # It is recommended that you define on your system a unique user which the

    # ftp server can use as a totally isolated and unprivileged user.

    #nopriv_user=ftpsecure

    #

    # Enable this and the server will recognise asynchronous ABOR requests. Not

    # recommended for security (the code is non-trivial). Not enabling it,

    # however, may confuse older FTP clients.

    #async_abor_enable=YES

    #

    # By default the server will pretend to allow ASCII mode but in fact ignore

    # the request. Turn on the below options to have the server actually do ASCII

    # mangling on files when in ASCII mode.

    # Beware that on some FTP servers, ASCII support allows a denial of service

    # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd

    # predicted this attack and has always been safe, reporting the size of the

    # raw file.

    # ASCII mangling is a horrible feature of the protocol.

    #ascii_upload_enable=YES

    #ascii_download_enable=YES

    #

    # You may fully customise the login banner string:

    ftpd_banner=Welcome to blah FTP service.

    local_root=/ftpfile

    #

    # You may specify a file of disallowed anonymous e-mail addresses. Apparently

    # useful for combatting certain DoS attacks.

    #deny_email_enable=YES

    # (default follows)

    #banned_email_file=/etc/vsftpd.banned_emails

    #

    # You may restrict local users to their home directories.  See the FAQ for

    # the possible risks in this before using chroot_local_user or

    # chroot_list_enable below.

    #chroot_local_user=YES

    #

    # 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().

    # (Warning! chroot'ing can be very dangerous. If using chroot, make sure that

    # the user does not have write access to the top level directory within the

    # chroot)

    #chroot_local_user=YES

    #chroot_list_enable=YES

    # (default follows)

    #chroot_list_file=/etc/vsftpd.chroot_list

    #

    # You may activate the "-R" option to the builtin ls. This is disabled by

    # default to avoid remote users being able to cause excessive I/O on large

    # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume

    # the presence of the "-R" option, so there is a strong case for enabling it.

    #ls_recurse_enable=YES

    #

    # Customization

    #

    # Some of vsftpd's settings don't fit the filesystem layout by

    # default.

    #

    # This option should be the name of a directory which is empty.  Also, the

    # directory should not be writable by the ftp user. This directory is used

    # as a secure chroot() jail at times vsftpd does not require filesystem

    # access.

    secure_chroot_dir=/var/run/vsftpd/empty

    #

    # This string is the name of the PAM service vsftpd will use.

    pam_service_name=vsftpd

    pasv_min_port=61001

    pasv_max_port=62000

    #

    # This option specifies the location of the RSA certificate to use for SSL

    # encrypted connections.

    rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

    # This option specifies the location of the RSA key to use for SSL

    # encrypted connections.

    rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

    userlist_deny=NO

    userlist_enable=YES

    userlist_file=/etc/allowed_users

    write_enable=YES

    seccomp_sandbox=NO

    相关文章

      网友评论

          本文标题:vsftp的安装与配置

          本文链接:https://www.haomeiwen.com/subject/lgsmxxtx.html