1: 安装vsftpd
~$ sudo apt-get install vsftpd 
or
~$ yum install vsftpd
温馨提示:ubuntu10.10自己装了,这步省略。

2: 配置vsftpd
 
2.1 修改vsftpd的配置文件。此类配置文件通常位于 /etc 目录下。
~$ sudo gedit /etc/vsftpd.conf
(可以找到该文件后使用其它编辑器编辑,这里默认使用Ubuntu默认编辑器编辑)

原文件中不少指令被注释,只要启用部分即可,以下是启用的命令(配置文件中对每一条都有具体说明)
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
保存。

2.2  设置ftp相关目录
        安装完毕后,/srv下会增加一个ftp目录[/srv/ftp]。同时系统会增加一个名为ftp的用户组,可以用~$ sudo cat    /etc/shadow 查看, 如 ftp:*:14993:0:99999:7:::。我们在/srv/ftp目录下创建两个分别名为upload和download的目录,分别用于上传和下载。接下来我们为刚才创建的几个目录设置权限,如下:

权限                            /srv/ftp                     /srv/ftp/upload                 /srv/ftp/download
用户组(ftp)              读                                   读写                                    读
其他用户                     读                                   读写                                    读

执行命令:请先创建以下目录后再执行
~$ sudo chmod 755 /home/ftpuser
~$ sudo chmod 777 /home/ftpuser/upload
~$ sudo chmod 755 /home/ftpuser/download

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

3:启动vsftpd
~$ sudo service vsftpd start

查看当前所有进程: ~$ ps -e
2183 ?        00:00:00 vsftpd

至此服务器端vsftp的最基本配置已完成,vsftpd已开启。(注意你的防火墙配置,作为简单试验可以直接停用防火墙)
        当然关闭vsftpd进程只需要执行~$ sudo service vsftpd stop,同时还可以使用命令~$ pgrep vsftpd 来查看进程vsftp是否存在。

4:vsftpd 设置用户目录,如果你设置了匿名用户也可以登录上传的话~这个可以省了~
(1) 增加组:~$ sudo groupadd ftpgroup

(2 )修改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

(3) 增加用户ftpuser并设置其目录为/home/ftpuser
~$ sudo useradd -g ftpgroup -d /home/ftpuser -M ftpuser
(注:G:用户所在的组 d:表示创建用户的自己目录的位置给予指定

M:不建立默认的自家目录,也就是说在/home下没有自己的目录)

(4 )设置用户口令 $sudo passwd ftpuser

(5) 编辑chroot_list文件:
~$ sudo gedit /etc/vsftpd.chroot_list
内容为ftp用户名,每个用户占一行,如:

ftpuser=ftpuser密码
or
ftpuser
ftpuser密码 
 
(6 )重新启动vsftpd:
~$ sudo service vsftpd stop
~$ sudo service vsftpd start

[Linux]ubuntu安装ftp服务器的更多相关文章

  1. ubuntu安装ftp服务器

    ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vs ...

  2. 第21篇 ubuntu安装ftp服务器(转载)

    ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vs ...

  3. linux 下安装ftp服务器

    最后重启    # service vsftpd restart   1.查看是否安装vsftp rpm -qa | grep ftp 如果出现    vsftpd-2.0.5-16.el5_5.1 ...

  4. Linux CentOS7 安装FTP服务器

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_39680564/article/de ...

  5. 【转】ubuntu安装ftp服务器

    原文网址:https://wiki.archlinux.org/index.php/Very_Secure_FTP_Daemon_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96% ...

  6. Ubuntu 16.04 安装ftp服务器传输文件

    最近在搞深度学习,老师比较宝贝他的服务器,要求我以后负责管理服务器.往后所有要使用服务器的人都必须向我申请账号,然后只允许客户端访问,使用文件传输软件传输文件.像我这样一个linux菜逼,这种要求不是 ...

  7. 翻译:在Ubuntu 14.04上安装FTP服务器的方法

    说明: 1.原文地址:http://www.krizna.com/ubuntu/setup-ftp-server-on-ubuntu-14-04-vsftpd/ 2.今天要做一个网络日志的迁移程序,搬 ...

  8. ubuntu16.04安装ftp服务器

    参考文章: http://www.linuxidc.com/Linux/2017-01/139233.htm 1.检查是否安装vsftpd,如果安装了跳过第二步 vsftpd -v 2.安装vsftp ...

  9. CentOS 7运维管理笔记(4)----安装ftp服务器

    在CentOS 7下安装ftp服务器,可以使局域网内的主机拥有共享文件的一个站点. 在Linux系统下,vsftp是一款应用比较广泛的FTP软件,其特点是小巧轻快,安全易用.目前在开源操作系统中常用的 ...

随机推荐

  1. 手机APP上下滚动翻页效果

    //页面初期加载时        $(document).ready(function () { //加载第一页            LoadList(); //滚动换页            $( ...

  2. ArcEngine中使用上下左右键移动地图

    转自愿文ArcEngine中使用上下左右键移动地图 因项目需要,需对mapcontrol控件响应上下左右键,从网上找的方法都一样,都值提到了需要设置axMapControl1的KeyIntercept ...

  3. Linux编辑器的选择使用

    在执行 crontab -e的时候 发现编辑器不对 用的是nano 立刻 sudo select-editor 然后终端返回 Select an editor. To change later, ru ...

  4. notepad++下载Subversion插件,显示intalltion of subversion failed

    notepad++安卓subversion的插件不成功,是因为我们下载TortoiseSVN客户端的版本跟subversion的版本不兼容 一.背景: 在新浪云平台上开发微信公众账号,因为要使用SVN ...

  5. GDB反向调试 + 指令记录+函数历史记录

    http://blog.chinaunix.net/uid-26941022-id-3199961.html b.c void fun(int a, int b){ int c; c=a+b; } v ...

  6. hadoop错误Cannot load libcrypto.so (libcrypto.so cannot open shared object file No such file or directory)

    报如下错误 解决方法: 1.使用hadoop checknative –a命令检查,报如下错误 2.使用如下命令建立libcrypto.so文件的符号链接 如果,您认为阅读这篇博客让您有些收获,不妨点 ...

  7. myeclipse 编码问题

    在使用eclipse+MyEclipse开发中,许多文件编码默认是ISO-8859-1,不支持中文(如常用的JSP),这样我们每次建文件都要手动改编码,其实我们可以在设置文件默认编码,今后再创建时就不 ...

  8. OC协议

    概念:定义了一个接口,其他类负责来实现这些接口.如果你的类实现了一个协议的方法时,则说该类遵循此协议. 非正式协议:非正式协议虽名为协议,但实际上是挂于NSObject上的未实现分类(Unimplem ...

  9. Android 开发实践 ViewGroup 实现左右滑出窗口(二)

    接上一篇 <Android 开发实践 ViewGroup 实现左右滑出窗口(一)http://www.cnblogs.com/inkheart0124/p/3532862.html> 源码 ...

  10. 在自定义的web监听器中嵌入web中的定时事件

    在 http://www.cnblogs.com/myadmin/p/4806265.html 中说明了自定义web监听器的一些东西. 本文中的web定时任务也基于上篇文章的自定义web监听器. 新建 ...