1 更新源列表

打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"-->回车,就可以了。

2 安装vsftpd

打开"终端窗口",输入"sudo apt-get install vsftpd"-->回车-->安装完成。

3 新建"/home/uftp"目录作为用户主目录

打开"终端窗口",输入"sudo mkdir /home/uftp"-->回车-->输入"sudo ls /home"-->回车-->有一个uftp目录,目录新建成功。

4 新建用户uftp并设置密码

打开"终端窗口",输入"sudo useradd -d /home/uftp -s /bin/bash uftp"-->回车-->用户新建成功-->输入"sudo passwd uftp"设置uftp用户的密码-->回车-->输入两次密码-->回车-->密码设置成功。

sudo adduser xxx 这样的命令会在home目录下添加一个帐号
sudo useradd xxx 仅仅是添加用户, 不会在home目录添加帐号

彻底删除用户方法

在root用户下:userdel -r newuser
在普通用户下:sudo userdel -r newuser

加上-r的选项,在删除用户的同时一起把这个用户的宿主目录和邮件目录删除。

5 使用gedit修改配置文件/etc/vsftpd.conf

打开"终端窗口",输入"sudo gedit /etc/vsftpd.conf"-->回车-->打开了vsftpd.conf文件,向文件中添加
"userlist_deny=NO

userlist_enable=YES
userlist_file=/etc/allowed_users"和
"seccomp_sandbox=NO"-->使文件中的
"local_enable=YES"  //允许本地用户登录

-->保存。

#指定登录转向目录
local_root=/home/ftp/ftp

#同时允许4客户端连入,每个IP最多5个进程
max_clients=200
max_per_ip=4

6 使用gedit新建/etc/allowed_users文件

打开"终端窗口",输入"sudo gedit /etc/allowed_users"-->回车-->输入uftp-->保存, 文件创建成功。

7使用gedit查看/etc/ftpusers文件中的内容

打开"终端窗口",输入"sudo gedit /etc/ftpusers"-->回车-->打开这个文件后,看一看有没有uftp这个用户名,如果没有,就直接退出。如果有就删除uftp,因为这个文件中记录的是不能访问FTP服务器的用户清单。

8 如果想要用户登陆后限制他们只能在自己的home目录,可以在vsftpd.conf配置文件中添加下面3行

  1. chroot_local_user=YES
  2. chroot_list_enable=YES
  3. chroot_list_file=/etc/vsftpd/chroot_list

另一种方案

  1. chroot_local_user=YES
  2. chroot_list_enable=YES(这行可以没有, 也可以有)
  3. chroot_list_file=/etc/vsftpd/chroot_list

凡是加在文件vsftpd.chroot_list中的用户都是不受限止的用户,即, 可以浏览其主目录的上级目录.

操作完之后,登录报  500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

解决办法

可以用命令chmod a-w /home/user去除用户根目录的写权限,注意把目录替换成你自己的。

或者你可以在vsftpd的配置文件中增加下列两项中的一项:

  1. allow_writeable_chroot=YES

9 可以使用下列命令来打开,关闭,重启ftp服务

  1. sudo /etc/init.d/vsftpd start
  2. sudo /etc/init.d/vsftpd stop
  3. sudo /etc/init.d/vsftpd restart

问题:

1 修改过vsftp配置文件后vsftpd不能启动,解决办法,先卸载,再重新装。

  1. sudo apt-get purge vsftpd
  2. sudo apt-get install vsftpd
  3. ps -ef |grep vsftpd

2 最近在ubuntu14.4中进行配置,上面无论如何不行。经过多次尝试可以使用下面配置

  1. write_enable=YES
  2. seccomp_sandbox=NO
  3.  
  4. userlist_file=/etc/allowed_users
  5. background=NO

含义和上面一样。

3 对于中文乱码问题

由于系统编码的不同常常会出现中文乱码问题。涉及的部分有:linux 系统默认编码 UTF-8、windows 系统默认编码 GBK、ftp 服务器和客户端编码

在最近项目中需要使用 ftp 服务,在 ubuntu 上搭建了 vsftp 服务,使用 commons-net 的  FTPClient 进行传输文件,发现中文会出现乱码。上网查资料发现编码不一致,需要设置为统一的编码。要么都设置为 GBK, 要么设置为 UTF-8。

我采用 UTF-8,

1)首先 ubuntu 系统设置为 utf-8

  1. sudo apt-get update
  2. # 先安装一下中文支持
  3. sudo apt-get install language-pack-zh-hans
  4. # 更新对应的locale文件
  5. dpkg-reconfigure locales -> 一路确认
  6. #查看编码设置
  7. locale
  8.  
  9. LANG=zh_CN.utf8
  10. LANGUAGE=
  11. LC_CTYPE="zh_CN.utf8"
  12. LC_NUMERIC="zh_CN.utf8"
  13. LC_TIME="zh_CN.utf8"
  14. LC_COLLATE="zh_CN.utf8"
  15. LC_MONETARY="zh_CN.utf8"
  16. LC_MESSAGES="zh_CN.utf8"
  17. LC_PAPER="zh_CN.utf8"
  18. LC_NAME="zh_CN.utf8"
  19. LC_ADDRESS="zh_CN.utf8"
  20. LC_TELEPHONE="zh_CN.utf8"
  21. LC_MEASUREMENT="zh_CN.utf8"
  22. LC_IDENTIFICATION="zh_CN.utf8"
  23. LC_ALL=zh_CN.utf8
  24. #重启系统更新配置
  25. reboot

2) vsftp 配置文件设置 utf-8

  1. vi /etc/vsftpd.conf
  2. # 在文件末尾添加
  3. utf8_filesystem=YES

重启 vsftp 服务

3)对于使用 commons-net 的 FTPClient 上传下载文件、获取文件列表等操作包含中文的需要对字符编码进行设置

ubuntu14.4开启ftp服务的更多相关文章

  1. ubuntu14.04 server ftp 服务安装配置详解

    ubuntu14.04 server ftp 服务安装配置详解 cheungmine 2016-01-27 http://wiki.ubuntu.com.cn/Vsftpd 0 安装好vsftpd服务 ...

  2. ubuntu 开启 ftp 服务 | mingming-killer

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  3. AIX系统开启ftp服务

    http://blog.itpub.net/28227905/viewspace-1060183/ 当然,首先网络工程师给你放开策略,开通ftp端口之后,你才能做下一步. [@more@] AIX开启 ...

  4. 如何在linux下开启FTP服务

    如何在linux下开启FTP服务 1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下:   #which vsftpd   如果看到有vsftpd的目录说明服务器已经安装了ftp软件 2. ...

  5. 检测FTP服务并开启FTP服务

    1. 检测FTP服务是否开启 1.1. 通过查询提供FTP服务的进程是否存在,并未找到任何包含ftp关键字的进程信息,可判断服务未开启. root@lb- ~ # ps -ef | grep ftp ...

  6. liunx和aix 系统开启ftp服务

    AIX开启ftp服务: 1.ftp服务的守护进程是否存在 #lssrc -s inetd 2.ftp服务的开启与关闭 #startsrc -t ftp #stopsrc -t ftp 3.ftp服务是 ...

  7. Windows 下开启FTP服务并创建FTP用户

    Windows 下开启FTP服务,并创建用户 此教程教你怎么开启 Windows 的 FTP 服务,并创建用于登入 FTP 的用户.教程用到的操作系统是 Windows 7. 一.创建用于登入 FTP ...

  8. centos下开启ftp服务

    如果要ftp访问linux需要安装ftp服务,vsftpd是Linux下比较好的的FTP服务器. 一.检查安装vsftp //检查是否安装vsftpd rpm -qa | grep vsftpd // ...

  9. centos7.4 开启ftp服务

    1.安装vsftpd yum install -y ftp vsftpd 2.配置/etc/vsftpd/vsftpd.conf 修改项如下: #不允许匿名访问 anonymous_enable=NO ...

随机推荐

  1. Transformer中引用iqd作为数据源的时候数据预览出现乱码

    在cognos开发利用transform建模的过程中导入iqd数据源预览乱码问题,下面先描述一下环境 操作系统版本: [root@enfo212 ~]# cat /proc/version Linux ...

  2. (转)U3D不同平台载入XML文件的方法——IOS MAC Android

    自:http://www.cnblogs.com/sifenkesi/archive/2012/03/12/2391330.html 在PC上和IOS上读取XML文件的方式略有差别,经测试,IOS上不 ...

  3. Java 中 Map 的使用

    Map接口提供了一组能够以键-值对(key,value)形式存储的数据结构. Map对存入元素仅仅有一个要求.就是键(key)不能反复,Map对于key.value要求不是非常严格,key仅仅要是引用 ...

  4. [CSS] Collapsing Margins

    Refactor the spacing between <header>, <article>, and <aside> so that elements wil ...

  5. jsAnim简单使用教程

    引入jsAnim.js 定义动画元素 元素需要有position:relative;或者position:absolute;属性 添加js <!DOCTYPE HTML> <html ...

  6. 破解无线网络密码-BT3如何使用1

    一分钟制作 BT3 U盘版 方便,快捷简单 光盘版BT3, 大概694MB,直接刻盘,然后用光盘引导,即可进入bt3,连接为: http://ftp.heanet.ie/mirrors/backtra ...

  7. Activiti Designer 5.14.1插件安装和使用

    1.离线包下载 离线安装包下载:https://files.cnblogs.com/files/modou/Activiti_BPMN_2.0_designer.rar 2.安装 先把jars文件夹中 ...

  8. Appium Python 四:怎样获取APP的Package以及Activity

    看到一篇很好的博客:[Android测试][随笔]获得App的包名和启动页Activity 除了博客上的方法,我还找到两种方法: 方法一:aapt 前提需要使用SDK Manager.exe 下载 A ...

  9. 页面载入时通过获取GridView某行某列的值来控制某一列的控件属性

    通过获取状态来控制"查看"button的Visible属性值. 在前台GridView中加入 OnRowDataBound="GridView1_RowDataBound ...

  10. PHPstorm自定义快捷键

    Ctrl+alt+S 打开设置 PHPstorm 设置 PHPstorm 主题安装 自定义快捷键设置 ·全屏 F11 ·另外一种全屏alt+F11 Database数据库管理 alt+d Termin ...