Linux下FTP服务(一)—— Ubuntu安装

参考:http://www.cnblogs.com/likwo/p/3154868.html

 

实验环境:Ubuntu 14.04 VMware虚拟机1. 安装

apt-get install vsftpd

2. 创建用户、目录

创建FTP目录

# mkdir /srv/ftp/data

注:/srv/ftp/ 默认创建

创建FTP用户

# useradd -d /srv/ftp/data/ -s /usr/sbin/nologin  -M pwftp

注:

-d :指定用户家目录,

-s:指定用户登入后所使用的shell,/usr/sbin/nologin即为不允许登录,

-M:不要自动建立用户的登入目录,即不复制默认用户文件等。

添加密码

# passwd pwftp

更改分享目录所属

# chown -R pwftp.pwftp /srv/ftp/data/

3. 配置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的账户名(pwftp)添加进去,保存退出.

注意:每个账户名独占一行。

若无此文件,则创建

# vi /etc/vsftpd.chroot_list

pwftp

 

4. 配置防火墙

在配置文件/et/vsftpd.conf中,有这样的配置:

所以,需要同时开启20,21两个端口。

# ufw allow 20

# ufw allow 21

此命名同时开启20,21的tcp和udp协议的端口,也可执行协议端口。

# ufw allow 21/tcp

 

5. 修改shell配置

编辑/etc/shells,如果该文件里没有/usr/sbin/nologin 或者/sbin/nologin(具体看当前系统配置)则追加进去

# vi /etc/shells

5. 重启服务

# service vsftpd restart

 

6. 客户端连接

1)Linux

以本机为例:

# ftp localhost

连接本机ftp服务。提示登录用户名,及其密码。

输入:pwftp 及密码

输入:

pwd :查看当前目录

ls : 查看目录

上传文件:put local-file [remote file]

在/tmp/下,存在文件test

ftp> put /tmp/test /srv/ftp/data/test

其他命令,请自行查阅

 

2)Windows

使用Xftp、WinSCP、Filezila等客户端进连接。下以Xftp为例:

打开终端

点击上图按钮,新建或打开已有会话。

选项注解:

名称:即为会话名称,以区分其他连接

主机:即为目标主机的主机名或IP

协议:即为使用的协议,默认FTP,SFTP建立在SSH基础之上,加密传输。

端口:FTP使用21,SFTP使用22

代理服务器:无

说明:对该会话连接做说明

 

登录选型:

匿名登录: 需要主机配置,在主机配置文件中/etc/vsftpd.conf中。

默认不允许,不安全。

方法:默认为Password,密码登录

用户名:即上述创建的用户,pwftp

密码:即为用户pwftp的密码

参考下图,实际配置:

连接后,显示内容:

 

测试:

在主机分享目录(/srv/ftp/data)下创建文件,Xftp中显示。如下图所示:

在分享目录中创建文件text.txt,同时在Xftp会话中刷新,即可看见新建文件。

 

 

如有不当之处,请不吝指正!!

 

posted @ 2016-11-03 20:22  寻找普拉多  阅读(538)  评论(0编辑  收藏  举报