知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

linux服务之FTP服务配置

发布时间:2014-09-05 17:41:32作者:知识屋

一:FTP工作原理:

a:主动模式

1: 客户端向服务端发起控制连接 端口号为21。并发送一个自己随机生成的传输端口给服务器

2:服务器收到传输端口号,与客户端建立数据传输连接,数据传送完成后断开连接。

b:被动模式

1:客户端与服务端的控制连接建立联系,并请求被动连接。

2: 服务端接受到客户端的被动请求,随机生成一个数据传输端口,发送给客户端。

3:客户端使用服务端发送的端口,来跟服务器进行数据传输。

在实际的过程中,绝大多数都是使用被动模式,因为如果客户端随机生成的端口发给服务端,服务主动连接客户端,会被客户端的防火墙阻挡! 所以一般使用被动模式

二:FTP的配置:

1:首先安装服务器 vsftpd包。

2:客户端使用命令wget lftp ftp 来进行连接。

a. wget用法

下载文件:wget -user=hello -password=123 ftp://172.16.28.19/file

下载文件夹:wget -r ftp://172.16.28.19/soft/dir -nH --cut-dir=1 -P /etc -r表示rescure递归文件,-nH选项表示去除上层目录,--cut-dir表示在根目录上再去除多个目录。-P表示目录重定向

b. lftp 172.16.17.25

下载文件 get 下载文件夹 mirror 上传文件put 上传文件夹 put -r ./dir

c. ftp 172.16.25.42

!ls 命令查看本机的目录,lcd 切换本机的当前目录,

三:服务器端配置

1:用户分为匿名用户,本地用户,虚拟用户

匿名用户的ftp共享目录为 /var/ftp 不需要输入密码。不能切换根目录。

anon_root=/var/dir 设置共享目录的路径。

2:本地用户的上传目录为默认为用户的家目录。可以切换根。可以通过增加字段user_config_dir=/etc/vsftpd/usersdir 来分别对用户进行局部配置。创建的文件名和用户名相同

3:通过增加userlist_enable=yes 启用用户控制列表文件。

userlist_deny=yes 表示禁止/etc/vsftpd/user_list中的所有用户使用ftp。

userlist_deny=no 表示允许/etc/vsftpd/user_list中的所有用户使用ftp.

/etc/vsftpd/ftpusers文件中的用户优先user_list配置,所有ftpusers的都允许使用ftp.

4:创建虚拟用户

a.创建一个虚拟用户映射的本地账户

useradd -d home_dir -s /sbin/nologin user

b.创建虚拟账户的用户名和密码,建立一个文件 vi /etc/vsftp/vname

在vname中加入用户名和密码,格式:一行用户名,一行密码。

c 生成数据库文件 db_load -T -t hash -f ./vname vname.db

d. 建立PAM认证文件,vi /etc/pam.d/vname.vu

在文件中添加两行 auth required pam_userdb.so db=/etc/vsftpd/vname

account required pam_userdb.so db=/etc/vsftpd/vname

e. 在/etc/vsftpd/vsftpd.conf中启用配置,添加字段 guest_enable=YES local_enable=YES pam_service_name=vsftpd.vu

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜