搭建FTP服务器

FTP服务器软件:

  FTP服务使用FTP协议来进行文件的上传和下载。

注:如果新下载了一个软件而不会安装,则先将软件解压,然后进入软的目录,打如下命令来查看软             件的安装帮助:

         #man   INSTALL   或#man   README

实验拓扑:

Linux Client

-----RHEL5.9(vmnet1)----------(vmnet1)

Win7 Client

实验一:测试默认安装vsftpd的结果

匿名用户与本地用户都可以登录

匿名用户登录到/var/ftp,只能下载不能上传

本地用户登录到本地用户的家目录,可以上传和下载

[[email protected] ~]# rpm -q vsftpd         //查询是否安装

package vsftpd is not installed

[[email protected] ~]# cd /misc/cd/Server

[[email protected] Server]# ls *vsftpd*      //查找包

vsftpd-2.0.5-28.el5.x86_64.rpm

[[email protected] Server]# rpm -ivh vsftpd-2.0.5-28.el5.x86_64.rpm  [[email protected] Server]# service vsftpd restart

[[email protected] Server]# chkconfig vsftpd on

[[email protected] Server]# ls -lh /etc > /var/ftp/pub/etc.txt

[[email protected] ~]# useradd kaka

[[email protected] ~]# echo "redhat" | passwd --stdin kaka

Changing password for user kaka.

passwd: all authentication tokens updated successfully.

验证:(客户端测试)

[[email protected] ~]# ftp 192.168.10.253  //登录FTP

Connected to 192.168.10.253.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as an authentication type

Name (192.168.10.253:root): ftp   // 匿名用户

331 Please specify the password.

Password:                 //输入密码

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> cd pub

250 Directory successfully changed.

ftp> ls

227 Entering Passive Mode (192,168,10,253,75,98)

150 Here comes the directory listing.

-rw-r--r--    1 0        0           11627 Jun 13 02:04 etc.txt

226 Directory send OK.

ftp> get etc.txt     // 下载

local: etc.txt remote: etc.txt

227 Entering Passive Mode (192,168,10,253,136,141)

150 Opening BINARY mode data connection for etc.txt (11627 bytes).

226 File send OK.

11627 bytes received in 0.00082 seconds (1.4e+04 Kbytes/s)

ftp> !ls

anaconda-ks.cfg  etc.txt      install.log.syslog

Desktop          install.log

ftp> put install.log                //上传

local: install.log remote: install.log

227 Entering Passive Mode (192,168,10,253,46,17)

550 Permission denied.

ftp> quit

[[email protected] ~]# lftp 192.168.10.253    // 以 LFTP 登录

lftp 192.168.10.253:~> user kaka

口令:

lftp [email protected]:~> put install.log

实验二

禁止匿名用户登录

修改FTP默认端口为2121

禁锢本地用户在自己家目录

实验步骤:

[[email protected] ~]# cd /etc/vsftpd/

[[email protected] vsftpd]# cp vsftpd.conf vsftpd.conf.bak   // 备份配置文件

[[email protected] vsftpd]# vim vsftpd.conf   // 进入配置文件

...

12 anonymous_enable=NO    //禁止匿名用户登录

...

119 listen_port=2121            //更改端口 2121

120 chroot_local_user=YES        // 禁锢本地用户在自家目录

[[email protected] vsftpd]# service vsftpd restart

[[email protected] vsftpd]# netstat -tulnp | grep vsftpd

tcp        0      0 0.0.0.0:2121         0.0.0.0:*           LISTEN   4705/vsftpd

测试:

ftp 192.168.10.253 2121

实验三:验证黑/白名单

/etc/vsftpd/ftpusers黑名单

/etc/vsftpd/user_list

[[email protected] ~]# useradd jerry

[[email protected] ~]# useradd mike

[[email protected] ~]# echo "redhat" | passwd --stdin jerry

Changing password for user jerry.

passwd: all authentication tokens updated successfully.

[[email protected] ~]# echo "redhat" | passwd --stdin mike

Changing password for user mike.

passwd: all authentication tokens updated successfully.

[[email protected] ~]# grep kaka /etc/vsftpd/ftpusers

kaka

//请问kaka能否登录FTP???

[[email protected] ~]# grep jerry /etc/vsftpd/user_list

jerry

//请问jerry能否登录FTP???

[[email protected] ~]# vim /etc/vsftpd/vsftpd.conf

...

121 userlist_deny=NO

[[email protected] ~]# service vsftpd restart

//请问kaka、jerry、mike谁可以登录???

实验完毕,请将主配置文件121 userlist_deny=NO注释,将user_list和 ftpusers里面添加的账户去掉

如果实验不成功请关闭防火墙

关闭防火墙

[[email protected] ~]# iptables -F

[[email protected] ~]# service iptables save

关闭Selinux

[[email protected] ~]# vim /etc/sysconfig/selinux

...

SELINUX=disabled

...

[[email protected] ~]# setenforce 0

[[email protected] ~]# getenforce

Disabled

实验四:

本地用户登录到/data/ftproot目录

up上传/下载,down仅下载。拒绝所有用户登录包括匿名用户

最多20个并发,每IP地址最多2个并发

限制下载速度限制为100KB/s

[[email protected] ~]# mkdir -p /data/ftproot

[[email protected] ~]# useradd up

[[email protected] ~]# useradd down

[[email protected] ~]# echo "redhat" | passwd --stdin up

[[email protected] ~]# echo "redhat" | passwd --stdin down

[[email protected] ~]# vim /etc/vsftpd/vsftpd.conf

...

12 anonymous_enable=NO  // 匿名用户不允许登录

...

18 write_enable=YES       // 允许写入权限

...

117 userlist_enable=YES   // 启用userlist

118 local_max_rate:100    // 限制下载速度

119 max_clients=20     //  客户端最多并发

120 max_per_ip=2      //  每个IP最多并发

121 userlist_deny=NO  // 不禁用userlist 中的用户

122 local_root=/data/ftproot

[[email protected] ~]# service vsftpd restart

[[email protected] ~]# setfacl -m u:up:rwx /data/ftproot/  // 定义用户UP可以写

[[email protected] ~]# tail -n 2 /etc/vsftpd/user_list    // 黑白名单加入up down

up

down

[[email protected] ~]# dd if=/dev/zero of=/data/ftproot/local.tgz bs=1M  count=1000     //  建立一个测试文件

测试:

[[email protected] ~]# wget  ftp://up:redhat // 用户名密码@192.168.10.253:2121 //端口号 /local.tgz //下载的文件位置

wget  ftp://up:redhat // 用户名密码@192.168.10.253 /local.tgz

搭建FTP服务器,布布扣,bubuko.com

时间: 2024-12-13 07:31:14

搭建FTP服务器的相关文章

Windows server 2008 r2搭建FTP服务器

最近需要搭建FTP服务器,顺着书上的教程走一遍流程. 1. 安装FTP服务 图一 图二 图三 可以看到上面提示并未启动windows自动更新,这个需要注意一下. 2. 新建FTP站点 准备FTP文件夹: 图四 开始新建站点: 图五 图六 此步由于没有SSL证书所以选择无. 图七 这里给予所有用户读取的权限. 图八 图九 这样子可以算是初步弄好,虽然在服务器端是可以访问的,但是由于没有设置防火墙,所以外面是暂时访问不了的. 图十 如果只是测试用的话,可以将防火墙关闭,但是真正使用的话则需要进一步的

RedHat5.9下搭建FTP服务器

FTP服务:基于C/S结构的文件传输协议 FTP会话属于复合TCP连接: 控制连接:TCP 21端口,发送FTP命令信息 数据连接:TCP 20端口,上传/下载数据 实验环境: Linux Client -----RHEL5.9(vmnet1)----------(vmnet1) Win7 Client 一. 实验要求:配置可匿名上传FTP服务 1.安装软件包 [[email protected] ~]# rpm -q vsftpd package vsftpd is not installed

centos7 搭建ftp服务器

本文采用最新的centos7 来学习搭建linux各种服务器,今天分享的是搭建ftp服务器(ps:不建议使用最新的系统去学习,因为系统发生了改变,好多以前的搭建服务器的方法就不行了,比如说centos7将防火墙由iptables换为了firewall,再按照原来的教程去搭建就会遇到很多问题.....,当然如果只是想用服务器大可在安装的时候勾选相应的选项系统会自动安装好相关的服务)由于本人运气比较差,所以在安装的过程遇到了各种奇葩的问题,并且本人还是一个刚入门的小菜鸟,因此花了足足3天才算把ftp

RedHat6.2搭建FTP服务器

我的环境: A:Red Hat Enterprise 6.2 IP:192.168.16.12 此机作测试端 B:Red Hat Enterprise 6.2 IP:192.168.16.13 此机做FTP服务端 B机上搭建FTP服务器: 下载并安装vsftpd-2.2.2-6.el6_0.1.i686 [[email protected] ~]# rpm -ivh vsftpd-2.2.2-6.el6_0.1.i686.rpm 创建测试用户: [[email protected] ~]# us

ubuntu12.04下搭建ftp服务器

楼主想把同学硬盘里面的200多G电影共享给实验室的小伙伴们看,就打算在内网服务器上搭建一个ftp的服务器. 1.安装ftp 首先在终端下键入如下内容,安装ftp服务器: sudo apt-get install vsftpd 2.配置ftp 修改ftp的配置文件,该文件在/etc目录下,在终端中键入如下命令以打开配置文件: sudo gedit /etc/vsftpd.conf 简单的修改以下几个配置项即可: #禁止匿名访问 anonymous_enable=NO #接受本地用户 local_e

Linux系统搭建FTP服务器

在Linux系统中搭建FTP服务器 一.搭建概述: 在Linux系统中搭建一台FTP服务器是很必要的,这个服务器只要你搭建成功以后就可以在这个服务器上存放一些你自己需要的一些软件.文档.手册等等.搭建好以后就可以直接使用这个服务器,提升了你自己的一个工作速度和一些工作的简便方法.下面就来具体的搭建一下.本问是自己一个人摸索搭建的,如有什么不妥的地方请多多指教.谢谢! 二.搭建步骤: 1.启动Linux虚拟机,并在命令终端上操作. 2.检测一下系统中是否安装FTP服务器 命令:rpm-qa | g

Ubunton下搭建ftp服务器 实现虚拟用户、本地用户、匿名用户的登陆及权限

#在ubunton系统下安装和配置ftp可以说是比较简单的 本篇教程是为了解决一下问题 需要搭建ftp服务器实现三种用户的登陆及权限管理 其中 anon可以自由的到特定的目录里下载东东: stu则可以到特定的目录里上传东东; 而tearcher,则可以对特定的目录里上传.下载东东; admin则可以对stu.teacher的数据进行统一的管理. 另外,做为系统上已经有的本地用户则可以登录自己的home目录. 针对上面的需求,ftp需要开通对匿名用户.本地用户.及虚拟用户的支持.并且特别对虚拟用户

win10搭建ftp服务器的操作方法【图文教程】

我们知道FTP是TCP/IP网络上两台计算机传送文件的协议,使得主机间可以共享文件.对于win10版本的ftp服务器搭建方法可能有部分用户还不是很清楚,下面这篇文章就是关于win10搭建ftp服务器的操作方法的教程. 具体方法如下: 1.右键开始菜单,选中控制面板: 2.在控制面板的页面中选中"程序": 3.在打开的对话框中选择"启用或者关闭windows功能"找到"Internet信息服务",并选中"FTP服务"."

【原】Nginx搭建FTP服务器的细节问题

关于文件服务器很多实现方法,比如采用阿里的分布式文件系统FastDFS,以及自己内部搭建FTP服务器,这里记录一下关于nginx搭建FTP文件系统流程. ftp服务器搭建的步骤网上也是很多,这里贴一下具体流程,方便以后参考: yum -y install vsftpd useradd ftpuser  (添加用户) passwd ftpuser (对ftpuser添加密码,需要重复输入2次,最好是8位密码) 默认ftp的路径是在/etc/vsftpd,这时候进入 home目录就可以查看到ftpu