ubuntu中安装ftp服务器
Posted 风清扬001
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu中安装ftp服务器相关的知识,希望对你有一定的参考价值。
1. 实验环境
ubuntu14.04
2.vsftpd介绍
vsftpd 是“very secure FTP daemon”的缩写,是一款在Linux发行版中最受推崇的FTP服务器程序,安全性是它的一个最大的特点。
3.vsftpd的安装
3.1 打开终端(ctrl + alt + t)
输入:
sudo apt-get install vsftpd
4.配置vsftpd
4.1 修改vsftpd的配置文件。此类配置文件通常位于 /etc 目录下
sudo gedit /etc/vsftpd.conf
原文件中不少指令被注释,只要启用部分即可,一下是启用的命令(配置文件中对每一条都有具体说明)
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
保持后退出
4.2 设置ftp相关目录
安装完毕后,/srv下会增加一个ftp目录
同时系统会增加一个名为ftp的用户组,可通过如下代码查看:
sudo cat /etc/shadow
截图如下:
我们在/srv/ftp目录下创建两个分别名为upload和download的目录,分别用于上传和下载:
cd /srv/ftp/ sudo mkdir download sudo mkdir upload
接下来我们为刚才创建的几个目录设置权限
命令参考如下:
sudo chmod 755 /srv/ftp sudo chmod 777 /srv/ftp/upload sudo chmod 755 /srv/ftp/download
如此,一方面我们允许了用户组ftp访问/home/ftp (匿名访问);一方面赋予了用户组ftp对/srv/ftp/upload的写权利,因此网络上的用户可以方便地上传文件,但注意,当他们上传后,上传的 文件只有root对这些文件拥有权限,也就是说这个目录仅能用于上传,无法下载其中的文件;此外赋予了用户组ftp对 /home/ftp/download的读权利,同时我们拷贝进该目录下的文件对于用户组而言通常都有读权利,因此网络上的用户从此目录下能且仅能下载文 件。从而满足了我们预先的要求。
4.3 启动ftp:
sudo service vsftpd start
查看当前所有进程:
ps -e
截图如下
至此服务器端vsftp的最基本配置已完成,vsftpd已开启(ubuntu默认未安装防火墙,如果有安装,请自行暂时关闭)
顺便也说一下关闭ftp的命令:
sudo service vsftpd stop
进程vsftpd查看命令:
pgrep vsftpd
4.4 vsftpd 设置用户目录,如果你设置了匿名用户也可以登录上传的话~这个可以省了~
- 增加组
sudo groupadd ftpgroup
- 修改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
- 增加用户ftpuser并设置其目录为/home/nation/ftp/upload
sudo useradd -g ftpgroup -d /home/nation/ftp/upload -M ftpuser
(注:G:用户所在的组 d:表示创建用户的自己目录的位置给予指定M:不建立默认的自家目录,也就是说在/home下没有自己的目录)
- 设置用户口令
passwd ftpuser
- 编辑chroot_list文件
sudo gedit /etc/vsftpd.chroot_list
- 重新启动vsftpd
sudo service vsftpd start
原文参考 http://blog.csdn.net/nation_chen/article/details/7066277
更多设置请参考http://blog.csdn.net/zsuguangh/article/details/6083390
以上是关于ubuntu中安装ftp服务器的主要内容,如果未能解决你的问题,请参考以下文章