`
cocos
  • 浏览: 400401 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

CentOS–FTP安装与配置

阅读更多
useradd -d /data -g ftp -s /sbin/nologin ftpuser
passwd ftpuser

dirmessage_enable=yes


touch /data/.message
xferlog_file=/var/log/vsftpd.log

chroot_local_user=yes

touch /etc/vsftpd/vsftpd.chroot_list 
touch /etc/vsftpd/vsftpd_user_conf/ftpuser 
echo 'local_root=/data'>>/etc/vsftpd/vsftpd_user_conf/ftpuser
service vsftpd restart




1.安装vsftpd

yum install vsftpd

2.启动/重启/关闭vsftpd服务器

[root@localhost ftp]# /sbin/service vsftpd restart

Shutting down vsftpd: [ OK ]

Starting vsftpd for vsftpd: [ OK ]

OK表示重启成功了.

启动和关闭分别把restart改为start/stop即可.

如果是源码安装的,到安装文件夹下找到start.sh和shutdown.sh文件,执行它们就可以了.

3.与vsftpd服务器有关的文件和文件夹

vsftpd服务器的配置文件的是: /etc/vsftpd/vsftpd.conf

vsftpd服务器的根目录,即FTP服务器的主目录:

[root@localhost ftp]# more /etc/passwd|grep ftp

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

这样你就能看到FTP的服务器的目录在/var/ftp处

如果你想修改服务器目录的路径,那么你只要修改/var/ftp到别处就行了

4.添加FTP本地用户

有的FTP服务器需要用户名和密码才能登录,就是因为设置了FTP用户和权限.

FTP用户一般是不能登录系统的,只能进入FTP服务器自己的目录中,这是为了安全.这样的用户就叫做虚拟用户了.实际上并不是真正的虚拟用户,只是不能登录SHELL了而已,没能力登录系统.

/usr/sbin/adduser -d /opt/ftp -g ftp -s /sbin/nologin ftpuser

这个命令的意思是:

使用命令(adduser)添加ftpuser用户,不能登录系统(-s /sbin/nologin),自己的文件夹在(-d /opt/ftp)),属于组ftp(-g ftp)

然后你需要为它设置密码 passwd ftp

这样就添加了一个FTP用户了.下面的示例可以帮助你进入FTP服务器了.

要保证自己能读写自己的目录,就要在配置文件vsftpd.conf里设置一下就可以读写了.

local_enable=yes

write_enable=yes

local_umask=022

5.匿名上传下载

修改配置文件即可vsftpd.conf,确定有以下几行,没有自己添加进去就可以了.

anonymous_enable=yes

anon_upload_enable=yes

anon_mkdir_write_enable=yes

anon_umask=022

然后你可以新建一个文件夹,修改它的权限为完全开放,任何用户就可以登录这个文件夹,并上传下载文件:

mkdir /var/ftp/guest

chmod 777 /var/ftp/guest

6.定制进入FTP服务器的欢迎信息

在vsftpd.conf文件中设置:

dirmessage_enable=yes

然后进入用户目录建立一个.message文件,输入欢迎信息即可。

7.实现虚拟路径

将某个目录挂载到FTP服务器下供用户使用,这就叫做虚拟路径.

比如将gxl用户的目录挂载到FTP服务器中,供FTP服务器的用户使用,使用如下命令即可:

[root@localhost opt]# mount –bind /home/gxl /var/ftp/pub #使用挂载命令

[root@localhost opt]# ls /var/ftp/pub

LumaQQ Screenshot.png 桌面

8.打开vsFTPd的日志功能

添加下面一行到vsftpd.conf文件中,一般情况下该文件中有这一行,只要把前面的注释符号#去掉即可,没有的话就添加,或者修改:

xferlog_file=/var/log/vsftpd.log

9.限制链接数,以及每个IP最大的链接数

修改配置文件中,例如vsftp最大支持链接数100个,每个IP能支持5个链接:

max_client=100

max_per=5

10.限制传输速度

修改配置文件中,例如让匿名用户和vsftd上的用户(即虚拟用户)都以80KB=1024*80=81920的速度下载

anon_max_rate=81920

local_max_rate=81920

11.将用户(一般指虚拟用户)限制在自家目录

修改配置文件中,这样用户就只能访问自己家的目录了:

chroot_local_user=yes

如果只想某些用户仅能访问自己的目录,其它用户不做这个限制,那么就需要在chroot_list文件(此文件一般是在/etc/vsftpd/中)中添加此用户.

编辑此文件,比如将test用户添加到此文件中,那么将其写入即可.一般的话,一个用户占一行.

[root@localhost vsftpd]# cat chroot_list

ftpuser

12.绑定某个IP到vsFTPd

有时候要限制某些IP访问服务器,只允许某些IP访问,例如只允许192.168.0.33访问这个FTP,同样修改配置文件:

listen_address=192.168.0.33



配置vsftpd.conf

                         anonymous_enable=NO            #禁止匿名

                         local_enable=YES                       #允许本地登录

                   write_enable=YES                       #允许写,如需上传,则必须

                   local_umask=027                        #将上传文件的权限设置为:777-local_umask

                   anon_upload_enable=YES          #允许虚拟用户和匿名用户上传

                   anon_other_write_enable=YES #允许虚拟用户和匿名用户修改文件名和删除文件

                   dirmessage_enable=YES         

                   xferlog_enable=YES                      #打开日志记录

                   connect_from_port_20=YES

                   xferlog_file=/var/log/vsftpd.log     #日志存放位置

                   xferlog_std_format=YES              #标准日志格式

                   idle_session_timeout=600        #空闲连接超时

                   data_connection_timeout=120

                   ftpd_banner=Welcome to ChinaRise FTP service       #欢迎信息

                   guest_enable=yes                       #允许虚拟用户

                   guest_username=vsftpdguest #虚拟用户使用的系统账号

                   virtual_use_local_privs=YES     #虚拟用户拥有本地系统权限

                   chroot_local_user=NO             

                   chroot_list_enable=YES

                     #以上两行将虚拟用户限制在其目录下,不能访问其他目录,或者直接用                           

                   chroot_local_user=YES                              

                   listen=yes                #监听/被动模式

                   listen_port=21        #监听端口

                   chroot_list_file=/etc/vsftpd/vsftpd.chroot_list       #虚拟用户名单保存在文件/etc/vsftpd/vsftpd.chroot_list 中

                   user_config_dir=/etc/vsftpd/vsftpd_user_conf   #每个虚拟用户名的更加详细的培植保存在/etc/vsftpd/vsftpd_user_conf 中

虚拟用户其他设置

      在/etc/vsftpd/vsftpd.chroot_list 文件中写入允许登陆的虚拟用户名称,每行一个

      在/etc/vsftpd/vsftpd_user_conf 文件夹中创建一个以虚拟用户用户名命名的文件,

      写入:local_root = /var/FTP/子目录名

      然后在/var/FTP下创建一个对应的目录即可
分享到:
评论

相关推荐

    阿里云centOs安装Ftp Jdk Tomcat Nginx Mysql Oracle

    阿里云CentOs安装Ftp Jdk Tomcat Nginx Mysql Oracle 本文将指导您在阿里云CentOs服务器上安装FTP、JDK、Tomcat、Nginx、Mysql和Oracle。 一、FTP服务器安装 * 安装vsftpd:`yum -y install vsftpd` * 设置开机...

    Centos环境下安装curl

    #### 三、Centos环境下配置安装curl 本文将详细介绍如何在Centos环境中安装curl,并确保PHP能够使用curl功能。 ##### 1. 安装curl库 首先需要确保系统中已经安装了curl库,这通常可以通过包管理器来完成。在...

    CentOS FTP服务器的搭建

    如果不再需要FTP服务,可以使用`yum –y remove vsftpd`命令卸载,并删除配置目录和用户目录。记得重启电脑以确保更改生效。 FTP服务器的主要配置文件有: - `/etc/vsftpd.ftpusers`:禁止访问FTP服务器的用户列表...

    CentOS6.0安装Oracle

    #### 安装准备:依赖包与用户组配置 安装Oracle前,需确保服务器上已安装一系列必需的软件包,这些软件包类似于.NET框架之于SQL Server 2008。具体包括但不限于: - binutils - compat-libstdc++ - elfutils-...

    CentOS中vsftp安装与配置详解

    一般我们在安装完系统后都会自动安装了vsftp服务了,但是有时候还是得需要自己动手的,比如这两天就在给我朋友配置了一下,顺手把过程记录下来,以便需要的时候查阅或者给需要的朋友提供方便:) 1. 安装 使用...

    Oracle 11g 安装文档-CentOS6.3

    在CentOS 6.3操作系统上安装Oracle 11gR2需要一系列的配置步骤,以确保系统能够支持数据库的顺利运行。 首先,Linux软件包的选择对于Oracle数据库的安装至关重要。在安装CentOS 6.3时,务必确保选择了以下关键...

    centos65-VSFTP服务器配置.doc

    ### CentOS 6.5 VSFTPD 服务器配置详解 #### 一、VSFTPD 基础知识与操作 **1. 安装 VSFTPD** 在 CentOS 6.5 上安装 VSFTPD 服务非常简单,可以使用 `yum` 命令来完成: ``` yum install vsftpd ``` **2. ...

    centos6.5安装oracle11g数据库指南.docx

    ### Oracle 11g 在 CentOS 6.5 上的安装指南 #### 1. 前言 本文档提供了一套全面的指南,用于在 CentOS 6.5 64位操作系统上安装 Oracle 11g 数据库。该指南同样适用于其他基于 Red Hat 的操作系统,如 Red Hat ...

    CentOS搭建PHP服务器

    四、CentOS 7 配置 FTP 用户 在CentOS 7中,需要创建FTP用户以便用户可以访问FTP服务器。使用命令`useradd –d /opt/nginx/html ftpman`创建FTP用户ftpman,并指定主目录为/opt/nginx/html。然后,使用命令`passwd ...

    CentOS6.0安装oracle说明

    ### CentOS6.0安装Oracle详解 #### 工具准备与远程连接 ...通过以上详尽的准备步骤,可以确保CentOS6.0环境下Oracle数据库的顺利安装,减少因环境配置不当引发的安装障碍,从而提高部署效率和稳定性。

    阿里云ECS服务器Linux CentOS7安装与配置vsftpd

    阿里云ECS服务器Linux CentOS7安装与配置vsftpd 1. 查看是否安装vsftp rpm –qa|grep vsftpd 2. 安装vsftp yum -y install vsftpd 3. 配置vsftpd服务 vim /etc/vsftpd/vsftpd.conf 按 i 键进入编辑模式 vsftpd.conf ...

    vsftp3.0.4适用于el7(centos7.x),规避3.0.2版本的漏洞

    3) 备份配置文件: cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak 4) 如果运行了vsftpd,则先停止: systemctl stop vsftpd 5) 安装升级vsftpd 3.0.4 rpm -Uvh vsftpd-3.0.4-1.el7.x86_64.rpm rpm...

    CentOS6.9中搭建FTP服务器的方法

    在客户端需要接收数据时,ftp_client(大于1024的随机端口)—-port命令—–ftp_server(21)发送port命令,这个port命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ftp_server将通过自己...

    CentOS 5.3 / RHEL 5.4 安装 Oracle 11gR2

    此过程不仅包括了必要的系统准备,还涵盖了软件配置与优化策略。 #### 系统与环境配置 - **操作系统**: 使用的是VMWARE 6.5.3作为虚拟化平台,运行CentOS 5.3和RHEL 5.4作为目标操作系统。为了保持一致性和减少...

    制作自定义CentOS系统

    你可以通过运行`yum install –y wget`来确保已经安装了wget工具,然后使用`wget`命令下载源文件,例如`wget ftp://ftp.mondorescue.org/centos/7/x86_64/mondorescue.repo`。确保替换URL为你实际需要的版本和架构。...

    iptable和selinux下的FTP

    在CentOS 6.0下搭建FTP服务器,需要配置iptables和selinux以确保FTP服务器的安全和稳定运行。下面将详细介绍FTP服务器的配置过程。 一、配置vsftpd.conf文件 vsftpd.conf文件是FTP服务器的主要配置文件,在这个...

Global site tag (gtag.js) - Google Analytics