ubuntu安装ftp服务器
1: 安装vsftpd
~$ sudo apt-get install vsftpd
ubuntu10.10自己装了,这步省略。
2: 配置vsftpd
2.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
保存。
2.2 设置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/ftp
~$ sudo chmod 777 /home/ftp/upload
~$ sudo chmod 755 /home/ftp/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/nation/ftp/upload
sudo useradd -g ftpgroup -d /srv/ftp/upload -M ftpuser
(注:G:用户所在的组 d:表示创建用户的自己目录的位置给予指定
M:不建立默认的自家目录,也就是说在/home下没有自己的目录)
(4 )设置用户口令 passwd ftpuser
(5) 编辑chroot_list文件:
sudo gedit /etc/vsftpd.chroot_list
内容为ftp用户名,每个用户占一行,如:
ftpuser
(6 )重新启动vsftpd:
sudo service vsftpd start
参考
http://blog.csdn.net/nation_chen/article/details/7066277
注意:ftp用户,是不能删除的
-----------------------
以下为阿里云官方教程
----------------------
http://help.aliyun.com/manual?spm=0.0.0.0.rlX3yy&helpId=273
Linux FTP服务配置
目录:1.Redhat/CentOS安装vsftp软件2.Ubuntu/Debian安装vsftp软件
Ø Redhat/CentOS安装vsftp软件
1. 更新yum源
首先需要更新系统的yum源,便捷工具下载地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2. 安装vsftp
使用yum命令安装vsftp
#yum install vsftpd -y
3. 添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建账户,该命令指定了/alidata/www/wwwroot为用户pwftp的家目录,您可以自己定义账户名和目录:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改该账户密码:
#passwd pwftp
修改指定目录的权限
#chown -R pwftp.pwftp /alidata/www/wwwroot
4. 配置vsftp
编辑vsftp配置文件,命令如下:
#vi /etc/vsftpd/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
保存修改,按ESC键,输入:wq
5. 修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
6. 启动vsftp服务并测试登录
使用命令启动vsftp服务:
#service vsftpd start
然后用帐号pwftp测试下是否可以登陆ftp。目录是/alidata/www/wwwroot。
Ø Ubuntu/Debian安装vsftp软件
1. 更新软件源
首先需要更新系统的软件源,便捷工具下载地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2. 安装vsftp
使用apt-get命令安装vsftp
#apt-get install vsftpd -y
3. 添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建账户,该命令指定了/alidata/www/wwwroot为用户pwftp的家目录,您可以自己定义账户名和目录:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改该账户密码:
#passwd pwftp
修改指定目录的权限
#chown -R pwftp.pwftp /alidata/www/wwwroot
4. 配置vsftp
编辑vsftp配置文件,命令如下:
#vi /etc/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
保存退出
编辑/etc/vsftpd.chroot_list文件,将ftp的账户名添加进去,保存退出
5. 修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin 或者/sbin/nologin(具体看当前系统配置)则追加进去
6. 重启vsftp服务并测试登录
使用命令启动vsftp服务:
#service vsftpd restart
然后用帐号pwftp测试下是否可以登陆ftp。目录是/alidata/www/wwwroot。