在 Ubuntu 16.04上安装 vsFTPd

Ubuntu
vsFTPd

关于 vsFTPd

vsFTPd 代表 Very Secure File Transfer Protocol Daemon (非常安全的文件传输协议守护进程)。它是一个用于 Unix 和 Linux 操作系统的开源、轻量、稳定、最安全和最快的 FTP 服务器。
一些流行的FTP站点的Debian,FreeBSD,RED HAT,SUSE,Kernel,KDE,GENOME等,就是基于VSFTPD。
它是大多数Linux和Unix操作系统(例如Red Hat,CentOS,Fedora和Ubuntu)的默认FTP服务器。
它支持IPv6和SSL。因此,您可以使用VSFTPD为您的组织设置安全的FTP服务器。它是根据GPL许可的,完全免费。

1.更新软件仓库

root@mail:/# apt-get update
root@mail:/# apt-get upgrade

2.安装vsFTPd

root@mail:/# apt-get install vsftpd

备份下配置文件

root@mail:/# cp /etc/vsftpd.conf /etc/vsftpd.conf.backup

3.编辑配置文件

使用 nano 打开 vsftpd.conf

root@mail:/# nano /etc/vsftpd.conf

使用CTRL+W搜索并修改以下配置项:

anonymous_enable=NO
local_enable=YES
write_enable=YES
allow_writeable_chroot=YES
chroot_local_user=YES
file_open_mode=0777
local_umask=022

如果存在则取消注释,否则添加行。

4.配置只允许特定用户访问

userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/vsftpd.allowed_users

5.创建文件 vsftpd.allowed_users

sudo touch /etc/vsftpd.allowed_users

该文件包含了可以访问的用户名:

m.slavov
yourSECONDuser
yourTHIRDuser

如果你想的话还可以做一些高级配置:

#Useful to not write over hidden files:
force_dot_files=YES #Hide the info about the owner (user and group) of the files.
hide_ids=YES #Maximum number of clients:
max_clients=20 #Connection limit for each IP:
max_per_ip=2 #Chnage listen port from 21 to other
listen_port=999

6.添加ftp用户并且修改它的家目录

这点很重要,因为你能够限制这个用户只能访问一个目录。你可以允许它访问/var/www下的所有站点或只能访问其中某一个站点。
例如,如果你想创建用户ftp并只允许它访问一个站点,输入以下命令,并且不要忘了在/etc/vsftpd.allowed_users中添加这个用户:

root@mail:/# adduser ftp
root@mail:/# usermod –home /var/www/YOURFOLDERSITE ftp

或者打开文件/etc/passwd,然后搜索你想改变家目录的用户,把/home/ftpuser修改为/var/www

root@mail:/# nano /etc/passwd
root@mail:/# ftpuser:x:1001:1001:FTP USER,,,:/var/www:/bin/bash

7.重启vsFTPd

为了使修改生效,你必须重启vsFTPd服务。

root@mail:/# systemctl restart vsftpd

现在当用户通过 ftpzilla 连接 ftp,只能看到一个站点。
如果你想看到命令的输出,用命令/etc/init.d/vsftpd restart
显示vsFTPd状态,用命令:systemctl status vsftpd

8.配置权限

如果你想所有用户都有权限写入到这个文件夹,你必须设置全部权限777。
如果你只想某个组有权限写入、其他用户只能读,你就得设置权限为775.

root@mail:/# chmod 777 -R /var/www/YOURFOLDERSITE
root@mail:/# chown ftp:ftp -R /var/www/YOURFOLDERSITE

9.使用 Xftp 连接

新建连接,输入 ip 地址和刚才新建的 ftp 用户以及密码。

这里我遇到一个问题:

在命令行用ftp命令可以连接到 ftp 服务器,但是用 Xftp 连接却总是提示“无法显示远程文件夹”。

解决:

在“会话属性”的“选项”窗口,勾掉“使用被动模式”,重试。


参考:
http://linux-sys-adm.com/ubuntu-16.04-lts-how-to-install-and-configure-vsftpd-on-ubuntu/
https://www.ostechnix.com/install-vsftpd-server-ubuntu-16-04-lts/

在 Ubuntu 16.04上安装 vsFTPd的更多相关文章

  1. 如何在Ubuntu 16.04上安装配置Redis

    如何在Ubuntu 16.04上安装配置Redis Redis是一个内存中的键值存储,以其灵活性,性能和广泛的语言支持而闻名.在本指南中,我们将演示如何在Ubuntu 16.04服务器上安装和配置Re ...

  2. 在 Ubuntu 16.04 上安装 Eclipse Oxygen

    2017 年 6 月 28 日,Eclipse 社区(the Eclipse Community)发布了 Eclipse Oxygen.本文记录了我在 Ubuntu 16.04 上安装 Eclipse ...

  3. Ubuntu 16.04上安装SkyEye及测试

    说明一下,在Ubuntu 16.04上安装SkyEye方法不是原创,是来自互联网,仅供学习参考. 一.检查支持软件包 gcc,make,vim(optional),ssh,subversionbinu ...

  4. Ternsorflow 学习:000-在 Ubuntu 16.04 上安装并使用 TensorFlow_v1.14 (改)

    声明:本人已经对原文链接根据情况做出合理的改动. 本系列文章使用的是Tensorflow v1.14 引言 TensorFlow 是由谷歌构建的用于训练神经网络的开源机器学习软件.TensorFlow ...

  5. 如何在Ubuntu 16.04上安装Apache Web服务器

    转载自:https://www.howtoing.com/how-to-install-the-apache-web-server-on-ubuntu-16-04 介绍 Apache HTTP服务器是 ...

  6. 如何在Ubuntu 16.04上安装Nginx

    原文链接https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-16-04 介绍 Nginx是世 ...

  7. ubuntu 16.04上安装php5.6

    php --ini 按下面的步骤,在ubuntu 16.04上面安装成功了 php5.6 dpkg -l | grep php| awk '{print $2}' |tr "\n" ...

  8. 在 Ubuntu 16.04 上安装 LEMP 环境之图文向导

    导读 LEMP 是个缩写,代表一组软件包(注解 ① L:Linux OS,E:Nginx 网络服务器,M:MySQL/MariaDB 数据库和 P:PHP 服务端动态编程语言),它被用来搭建动态的网络 ...

  9. Ubuntu 16.04上安装并配置Postfix作为只发送SMTP服务器

    如果大家已经在使用第三方邮件服务方案发送并收取邮件,则无需运行自己的邮件服务器.然而,如果大家管理一套云服务器,且其中安装的应用需要发送邮件通知,那么运行一套本地只发送SMTP服务器则更为理想. 如何 ...

随机推荐

  1. Getting svn to ignore files and directories

    August 27, 2013Software Developmentresources, subversion, svn, tutorial, version control Who knew it ...

  2. 第二周java学习收获

    JAVA学习第二周总结 教材学习内容总结 第二章:讲了标识符与关键字,以及基本数据类型:逻辑类型.整数类型.字符类型.浮点类型. 输入输出,System.in,System.out和数组. 第三章:运 ...

  3. Shortest Unsorted Continuous Subarray LT581

    Given an integer array, you need to find one continuous subarray that if you only sort this subarray ...

  4. json ubuntu下安装

    1.首先安装scons scons是linux下的自动构建工具,类似cmake. 下载地址wget http://prdownloads.sourceforge.net/scons/scons-2.2 ...

  5. javascript声明对象时 带var和不带var的区别

    2015/11/25补充: 关于变量声明这里有详细的解释: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Stat ...

  6. 导入mysql报错问题

    今天数据导入报错:Got a packet bigger than‘max_allowed_packet’bytes的问题 2个解决方法: 1.临时修改:mysql>set global max ...

  7. CHAPITRE II

    J'ai ainsi vécu seul, sans personne avec qui parler véritablement, jusqu'à une panne[pan][机]故障 dans ...

  8. ac自动机板子

    hdu2222 #include<bits/stdc++.h> #define ll long long #define M 500005 using namespace std; int ...

  9. s4-6 二层交换

    为什么需要二层交换?  有很多LAN,如何将它们连接起来? 可用网桥(bridges )将它们连接起来.  网桥工作在DLL层,通过检查MAC地址做出转发帧的决策 不会检查网络层,所以,IPv ...

  10. understand试用笔记一阅读VS2010项目

    一.查看vs2010项目 打开understand,File—New—Project...—Next—Next [向导第三步,选“Import Visual Sudio project files”] ...