linux配置ftp

本章重点:

1.FTP的连接方式:

FTP默认使用20号端口建立数据连接,并传输文件协议;使用21号端口进行建立控制连接,并传输FTP控制命令;

主动模式:服务器主动发起数据连接;

被动连接:服务器被动等待数据连接;

注意:无论主动或被动都是先由客户端向服务器的21号端口建立ftp控制连接;详细内容参考课本p51-52

2.ftp 服务器软件的种类:windows系统中:IIS,Serv-U;

Linux系统中:proftpd,pureftpd,vsftpd(可支持15000个用户并发连接); 还有一些ftp客户端工具

注;这个不做重点,简单了解一下

3.ftp的配置文件:

(1)用户列表文件ftpusers和user_list

Ftpusers相当于黑名单,此文件中列出的用户将禁止被登录,默认已包括:root,bin,daemon等用于登录系统的特殊用户;

User_list文件:此文件中包含的用户可能被禁止登陆,也可能被允许登陆,主要取决于主配置文件vsftpd.conf的设置,当存在userlist_enable=YES 时userlist列表文件方可生效,若指定userlist_deny=YES 时,则尽禁止此列表中的用户登陆;若指定userlist_deny=NO 时,则允许列表中的用户登陆

(2.)ftp的主配置文件:vsftpd.conf(具体的配置在后面详解,可以参考课本p56)

3.安装ftp服务,也是基于RedHat的系统光盘里的包装一个vsftpd的软件包,也可用yum装包

4.基于匿名用户的ftp

将服务安装好后,修改主配置文件/etc/vsftpd/vsftpd.conf 中的anonymous_enable=YES(允许匿名访问)

执行 service  vsftpd  start 将服务启动即可

注意下面几个关于权限的配置项

Write_enable=YES   开放服务器的写权限

Anon_umask=022  设置匿名用户上传数据的权限设置

Anon_upload_enable=YES 允许匿名用户上传文件

Anon_mkdir_write_enable=YES  允许匿名用户创建目录

5.需用户验证的FTP服务

将anonymous_enable=YES改正为NO

可根据具体的需要将上述提到的几个权限设置更改一下,例如:为提高上传的文件权限,可将权限设为077(仅属主用户拥有权限):local_umask=077

由于是用户验证的FTP,所以可以用到前面提到的user_list用户列表文件,当配置了user_list,它位于/etc/vsftpd/user_list,一定记得要在这配置文件中将它启用(userlist_enable=YES)

6.vsftpd服务的其他配置:

(1)修改vsftpd服务的监听地址,端口、

(2)允许使用FTP服务器的被动模式

(3)限制FTP连接的并发数,传输速度

在这里就不做详解了,可参考课本p61

7.基于虚拟用户的账号数据库

Vsftpd服务使用Berkeley DB 格式的数据库文件来存放虚拟用户账户,所以要装一个db4_utils 的软件包,也是在RedHat的系统光盘里安装

Rpm -vih /media/cdrom/Server/db4_utils-4.3........

(1)创建文本格式的用户名和密码

Vi  /etc/vsftpd/vusers.list

Zhangsan

123.Asd

Lisi

456.Asd

注:一个用户名对应一个密码

(2.)创建Berkeley DB 格式的数据库文件

cd  /etc/vsftpd

db_load  -T  -t  hash  -f   vusers.list  vusers.db

file   vusers.db    查看转换后的文件类型

注:db_load命令中,-t 是用于指定数据源文件,-T 允许非Berkeley  DB 的应用程序使用从文本格式转换的DB数据文件,-t hash ,是指定一个hash 算法

(3)为提高虚拟用户账号文件的安全性,应将文件权限设为600,以免数据外泄

Chmod  600 /etc/vsftpd/vusers.*

(4) 添加虚拟用户的映射账号,创建FTP根目录

Useradd  -d /var/ftproot  -s  /sbin/nologin  virual(将使用的FTP根目录设为/var/ftproot/, 映射账号的名称为virtual)

(5)为虚拟用户建立PAM认证文件

Vi  /etc/pam.d/vsftpd.vu

#%PAM-1.0

auth  required  pam_userdb.so db=/etc/vsftpd/vuser

account  同上

(6)修改vsftpd配置,添加虚拟用户支持,在这配置文件中添加下列配置即可:

guest_enable=YES 启用映射功能

guest_username=virtual 指定映射的系统用户名称

pam_service_name-vsftpd.vu 制定新的PAM认证文件

(7)为不同的虚拟用户建立独立的配置文件,需要在主配置文件中添加user_config_dir 的配置项:

user_config_dir=/etc/vsftpd/vusers_conf

有了上述配置后,就可以在/etc/vsftpd/vusers_dir目录中为每个虚拟用户分别建立独立的配置文件了

mkdir  /etc/vsftpd/vusers_dir  创建用户配置文件

cd   /etc/vsftpd/vusers_dir

vi  join          为用户join建立独立的配置文件

anon_upload_enable=YES

anon_mkdir_write_enable=YES

最后一步,重新加载或重启服务即可;

注意:本文中的所有第一个配置单词都为小写

时间: 2024-12-17 03:02:58

linux配置ftp的相关文章

linux 配置ftp服务

需求:定时远程上传文件,windows->linux linux是一个云服务器,centos7 1:安装vsftpd yum install vsftpd 2:设置开机启动服务chkconfig vsftpd on 3:启动服务  service vsftpd start 4:防火墙端口打开 打开/etc/sysconfig/iptables文件 vi /etc/sysconfig/iptables 在REJECT行之前添加如下代码 -A RH-Firewall-1-INPUT -m state

linux 配置ftp服务器

[实现步骤] 1.检查安装vsftpd服务器 以root进入终端后(其他账户进入终端的可以用su root 输入密码后进入root 模式)之后,在终端命令窗口输入以下命令进行验证:# rpm –qa | grep vsftpd.如果结果显示为"vsftpd-1.1.3-8",则说明系统已经安装vsftpd服务器.若没有回复,即系统中没有安装. 2.如已安装可以使用命令删除: yum remove vsftpd 或者 rpm -e --nodeps 安装名称 3.系统中没有安装vsftp

Linux下FTP虚拟账户配置

参考模版/usr/share/doc/vsftpd-2.0.5/EXAMPLE/VIRTUAL_USERS) 1.创建虚拟账户 [[email protected] ~]#yum install db4-utils [[email protected] ~]#vim /etc/vsftpd/vlogin tomcat #账户名称 123456 #密码 jerry #账户名称 654321 #密码 [[email protected] ~]#db_load -T -t hash -f /etc/v

Linux 下 FTP虚拟用户的使用配置

Linux下FTP虚拟用户的使用配置 Linux的FTP服务支持3种用户: 1.匿名帐户 2.本地帐户 3.虚拟用户 为什么要使用虚拟用户: 匿名帐户可以很好的保证FTP服务器的安全性,但是,对匿名用户的权限管理不够灵活.如果想对访问FTP的帐户给予更多的权限,就可以用本地帐户来实现.但是,本地帐户默认情况下是可以登陆Linux系统的,这样对Linux系统来说是一个安全隐患.那么怎么能在灵活的赋予FTP用户权限的前提下,保证FTP服务器乃至整个Linux系统的安全呢?使用虚拟用户就是一种解决办法

讲述一下自己在linux中配置ftp服务的经历

本人大二小白一名,从大一下学期就开始接触到linux,当时看到学校每次让我们下载资源都在一个ftp服务器中,感觉特别的高大上,所以自己就想什么时候自己能够拥有自己的ftp服务器,自己放一点东西进去,让别人访问. 那么,就从那时开始,就有了一系列的艰难旅程.... 要不然先不说经历了,就先直捅技术吧,最后在说经历,要不然有些人就懒得看这篇初级又傻傻的文章了. 小白,那就需要手把手的教,同时还要图文并茂. 第一步: 自己的linux必须是要有的,如果没有,而且你还不会装,那么就可以看一下小弟我以前的

Linux中配置ftp服务器

1. 先用rpm -qa| grep vsftpd命令检查是否已经安装,如果ftp没有安装,使用yum  -y  install vsftpd 安装,(ubuntu 下使用apt-get install vsftpd) 2. service vsftpd start / service vsftpd restart 启动要让FTP每次开机自动启动,运行命令:  chkconfig --level 35 vsftpd on 3. 设置ftp权限 vi  /etc/vsftpd/vsftpd.con

linux中ftp配置

防火墙开启 [[email protected] ~]# service iptables start 添加规则20主动端口,21被动端口 [[email protected] ~]# iptables -I INPUT 1 -p tcp --dport 20:21 -j ACCEPT 保存配置 [[email protected] ~]# service iptables save iptables: Saving firewall rules to /etc/sysconfig/iptabl

Linux学习之八-配置FTP连接Linux服务器

配置ftp连接Linux服务器 通过配置ftp服务器,可以实现局域网内共享文件,甚至不同用户具有不同权限,需要的工具有Windows平台ftp客户端FileZilla(免费开源) 下载地址:https://download.filezilla-project.org/client/FileZilla_3.32.0_win64-setup_bundled.exe 登录到Linux服务器端,安装ftp服务端yum install vsftpd –y 启动ftp服务端/etc/init.d/vsftp

linux下FTP服务器的安装与配置

FTP服务器安装与配置 1. 切换到root用户:  su root 2. 查看系统中是否安装了vsftpd,可以通过执行命令 :  rpm -qa | grep vsftpd 3. 如果没有安装 vsftpd,则安装 :  yum -y install vsftpd 4. 创建ftp用户,比如ftp_test.命令:   useradd -s /sbin/nologin -d /home/ftp_test ftp_test 5. 设置ftp_test用户密码.命令:  passwd ftp_t