ubuntu14.4开启ftp服务
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行
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
另一种方案
chroot_local_user=YES
chroot_list_enable=YES(这行可以没有, 也可以有)
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的配置文件中增加下列两项中的一项:
allow_writeable_chroot=YES
9 可以使用下列命令来打开,关闭,重启ftp服务
sudo /etc/init.d/vsftpd start
sudo /etc/init.d/vsftpd stop
sudo /etc/init.d/vsftpd restart
问题:
1 修改过vsftp配置文件后vsftpd不能启动,解决办法,先卸载,再重新装。
sudo apt-get purge vsftpd
sudo apt-get install vsftpd
ps -ef |grep vsftpd
2 最近在ubuntu14.4中进行配置,上面无论如何不行。经过多次尝试可以使用下面配置
write_enable=YES
seccomp_sandbox=NO userlist_file=/etc/allowed_users
background=NO
含义和上面一样。
3 对于中文乱码问题
由于系统编码的不同常常会出现中文乱码问题。涉及的部分有:linux 系统默认编码 UTF-8、windows 系统默认编码 GBK、ftp 服务器和客户端编码
在最近项目中需要使用 ftp 服务,在 ubuntu 上搭建了 vsftp 服务,使用 commons-net 的 FTPClient 进行传输文件,发现中文会出现乱码。上网查资料发现编码不一致,需要设置为统一的编码。要么都设置为 GBK, 要么设置为 UTF-8。
我采用 UTF-8,
1)首先 ubuntu 系统设置为 utf-8
sudo apt-get update
# 先安装一下中文支持
sudo apt-get install language-pack-zh-hans
# 更新对应的locale文件
dpkg-reconfigure locales -> 一路确认
#查看编码设置
locale LANG=zh_CN.utf8
LANGUAGE=
LC_CTYPE="zh_CN.utf8"
LC_NUMERIC="zh_CN.utf8"
LC_TIME="zh_CN.utf8"
LC_COLLATE="zh_CN.utf8"
LC_MONETARY="zh_CN.utf8"
LC_MESSAGES="zh_CN.utf8"
LC_PAPER="zh_CN.utf8"
LC_NAME="zh_CN.utf8"
LC_ADDRESS="zh_CN.utf8"
LC_TELEPHONE="zh_CN.utf8"
LC_MEASUREMENT="zh_CN.utf8"
LC_IDENTIFICATION="zh_CN.utf8"
LC_ALL=zh_CN.utf8
#重启系统更新配置
reboot
2) vsftp 配置文件设置 utf-8
vi /etc/vsftpd.conf
# 在文件末尾添加
utf8_filesystem=YES
重启 vsftp 服务
3)对于使用 commons-net 的 FTPClient 上传下载文件、获取文件列表等操作包含中文的需要对字符编码进行设置
ubuntu14.4开启ftp服务的更多相关文章
- ubuntu14.04 server ftp 服务安装配置详解
ubuntu14.04 server ftp 服务安装配置详解 cheungmine 2016-01-27 http://wiki.ubuntu.com.cn/Vsftpd 0 安装好vsftpd服务 ...
- ubuntu 开启 ftp 服务 | mingming-killer
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- AIX系统开启ftp服务
http://blog.itpub.net/28227905/viewspace-1060183/ 当然,首先网络工程师给你放开策略,开通ftp端口之后,你才能做下一步. [@more@] AIX开启 ...
- 如何在linux下开启FTP服务
如何在linux下开启FTP服务 1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下: #which vsftpd 如果看到有vsftpd的目录说明服务器已经安装了ftp软件 2. ...
- 检测FTP服务并开启FTP服务
1. 检测FTP服务是否开启 1.1. 通过查询提供FTP服务的进程是否存在,并未找到任何包含ftp关键字的进程信息,可判断服务未开启. root@lb- ~ # ps -ef | grep ftp ...
- liunx和aix 系统开启ftp服务
AIX开启ftp服务: 1.ftp服务的守护进程是否存在 #lssrc -s inetd 2.ftp服务的开启与关闭 #startsrc -t ftp #stopsrc -t ftp 3.ftp服务是 ...
- Windows 下开启FTP服务并创建FTP用户
Windows 下开启FTP服务,并创建用户 此教程教你怎么开启 Windows 的 FTP 服务,并创建用于登入 FTP 的用户.教程用到的操作系统是 Windows 7. 一.创建用于登入 FTP ...
- centos下开启ftp服务
如果要ftp访问linux需要安装ftp服务,vsftpd是Linux下比较好的的FTP服务器. 一.检查安装vsftp //检查是否安装vsftpd rpm -qa | grep vsftpd // ...
- centos7.4 开启ftp服务
1.安装vsftpd yum install -y ftp vsftpd 2.配置/etc/vsftpd/vsftpd.conf 修改项如下: #不允许匿名访问 anonymous_enable=NO ...
随机推荐
- (转)NGUI制作转圈的技能CD特效
在技能图标上面放个半透明的精灵,用来做技能冷却的特效,如下图所示,我就用NGUI中的图标来带代替. NGUI制作转圈的技能CD特效 然后修改一下特效的精灵类型,它是在技能图标上面悬浮半透明可旋转的精灵 ...
- 【Window OS】”对于目标文件系统,文件XXXXX过大“导致无法进行文件操作的解决方法
问题原因:这是目标文件系统不支持这么大的文件的操作问题.例如:目标文件系统的格式是FAT32,FAT32最大支持4G,如果你要进行发送或粘贴4G以上的文件就会出现这个问题. 解决办法:把目标文件系统的 ...
- shell常用调试方法
检查语法 -n选项只做语法检查,而不执行脚本. sh -n script_name.sh 启动调试 sh -x script_name.s 进入调试模式后,Shell依次执行读入的语句,产生的输出中有 ...
- oracle 给用户赋表空间
alter user fortune_test quota unlimited on data01;
- C#.NET常见问题(FAQ)-如何强制退出进程
可以使用Process.Kill方法,但是有时候执行完了该进程还在,要等一会才会自动关掉 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/ac ...
- Your Customers Do Not Mean What They Say
Your Customers Do Not Mean What They Say Nate Jackson I'VE NEVER MET A CUSTOMER YET that wasn't all ...
- Oracle 之 表新增字段后修改字段顺序
工作中遇到:在为一个表新增字段后,新增字段在最后,想调整新增字段的位置. 1.原始方法: --新建临时表以存储正确的顺序 create table A_2 as select (column1,col ...
- MVC模式下值的传递
公司项目转用MVC开发,故学习总结一下mvc会用到的常用传值方法: 正如大家都熟悉的,MVC路由及运行机制是: 首先,Web 浏览器向服务器发送一条URL 请求,如http:/ ...
- iOS判断日期A是否在日期B到日期C之间
方法一: 可以用nsdate 的 timeIntervalSince1970 方法把时间转换成时间戳进行比较,这里timeIntervalSince1970返回的是NSTimeInterval(dou ...
- HTML5 坦克大战
代码 点击打开链接