Linux(RadHat)基础学习—FTP服务

RedHat下的ftp服务

1.ftp服务的启动

1.编辑文件:vim /etc/sysconfig/selinux
第6行selinux=disabled

保存退出。
重启主机。

2.安装vsftpd

yum install vsftpd -y

安装完成:

开启ftp服务:

systmctl start vsftpd
systemctl enable vsftpd

3.防火墙允许ftp连接

firewall-cmd --permanent --add-service=ftp   ##允许ftp连接
firewall-cmd --reload   ##重启火墙使设置生效

4.测试:ftp访问此主机ftp://172.25.254.157

2.ftp的基本信息

访问数据端口:21
数据传输端口:>1024随机端口

默认发布目录:/var/ftp/
访问方式:

    lftp ip地址   ##匿名登陆

    lftp ip地址 -u username   ##用户登陆

有关ftp的配置文件: /etc/vsftpd/vsftpd.conf

3.ftp的安全部署


编辑配置文件:vim /etc/vsftpd/vsftpd.conf

(1)anonymous_enable=YES|NO:匿名用户是否可登陆
(2)local_enable=YES|NO:本地用户是否可以登陆
(3)write_enable=YES|NO:本地用户是否可写文件
(4)设置匿名用户可写:
    a.改变目录权限,使用户组有可写权限:chmod 775 /var/ftp/pub
    b.目录的所有组改成ftp组:chgrp ftp /var/ftp/pub(匿名登陆用户属于ftp组)
编辑文件/etc/vsftpd/vsftpd.conf第29行,改为YES
(5)anon_upload_enable=YES|NO:匿名用户可上传
(6)anon_world_readable_only=YES|NO:匿名用户可下载(NO表示可下载)
(7)anon_mkdir_write_enable=YES|NO:匿名用户建立目录
(8)anon_other_write_enable=YES|NO:匿名用户删除和重命名
(9)anon_root=目录:匿名用户家目录修改
(10)anon_umask=xxx:匿名用户上传文件默认权限修改
(11)匿名用户的身份修改:
    chown_uploads=YES
    chown_username=student(修改为student身份)
(12)anon_max_rate=102400:最大上传速率
(13)max_clients=5:最大连接数


每次更改/etc/vsftpd/vsftpd.conf文件后,都需要重启服务使更改生效:

systemctl restart vsftpd

1.建立用户白名单:

在名单内的用户可以登陆,其他用户无法登录。

(1)编辑白名单文件:
vim /etc/vsftpd/chroot_list
写入允许登陆的用户帐号
(2)更改配置文件:
vim /etc/vsftpd/vsftpd.conf

再文件中写入内容:

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

2.限制本地用户登陆

编辑黑名单文件:
vim /etc/vsftpd/ftpusers    ##用户永久黑名单
写入拒绝登陆的用户帐号

或者

vim /etc/vsftpd/user_list   ##用户临时黑名单
写入拒绝登陆的用户帐号


临时黑名单,再一定情况下它可以变成白名单,如下面所示:

3.第二种用户白名单设定

编辑文件:vim /etc/vsftpd/vsftpd.conf
写入内容
userlist_deny=NO        ##设定参数,此文件从临时黑名单变成白名单,只在名单中出现的用户可登陆ftp

4.ftp虚拟帐号身份

1.创建虚拟帐号身份

(1)编辑新建文件:

vim /etc/vsftpd/userfile(文件名任意)

写入内容:(写入登陆用的帐号和密码,注意在帐号密码之后不要有空格)


保存退出。

(2)帐号密码文件哈希加密:

db_load -T -t hash -f /etc/vsftpd/userfile /etc/vsftpd/userfile.db

(3)新建编辑密码验证文件:

vim /etc/pam.d/usercheck

写入内容:

(4)编辑ftp配置文件:vim /etc/vsftpd/vsftpd.conf
写入内容:

(5)最后一步,重启vsftpd服务:

systemctl restart vsftpd

经过以上设置,就可以用设定的帐号密码登陆了。

2.给虚拟帐号指定身份(用户组)
编辑vsftp配置文件:vim /etc/vsftpd/vsftpd.conf
写入内容:

guwst_username=ftp  ##指定为ftp用户组身份

重启ftp服务。

3.虚拟帐号独立家目录设定

我们在根目录下创建目录ftphome作为虚拟用户的的家目录。
mkdir /ftphome

(1)编辑文件:vim /etc/vsftpd/vsftpd.conf
添加内容:

local_root=/ftphome/$USER
user_sub_token=$USER

(2)重启ftp服务。

(3)测试:建立目录区分虚拟帐号登陆后进入哪一个家目录:
mkdir /ftphome/user1/user1dir -p
mkdir /ftphome/user2/user2dir -p
mkdir /ftphome/user3/user3dir -p
(这里没有改变这个家目录的权限)

登陆虚拟帐号测试。

user2登陆进去能看见目录user2dir表示user2用户的家目录是/ftphome/user2


user3登陆进去能看见目录user3dir表示user3用户的家目录是/ftphome/user3

5.虚拟账户独立权限配置

(1)新建存储各个虚拟帐号的独立权限的目录:mkdir /etc/vsftpd/userconfig

(2)编辑文件:vim /etc/vsftpd/vsftpd.config
写入内容:
user_config_dir=/etc/vsftpd/userconfig

(3)新建文件:vim /etc/vsftpd/user1(这个文件以虚拟用户的家目录作文件名)
写入相关权限.例如:

保存退出,重启fvstpd服务生效。


关于一些ftp的错误提示代码:

350:认证失败

500:权限过大

530:密码帐号错误、认证策略错误

550:服务本身不允许操作

原文地址:http://blog.51cto.com/13885935/2154588

时间: 2024-08-29 09:23:19

Linux(RadHat)基础学习—FTP服务的相关文章

linux系统如何启用ftp服务

在linux操作系统中,ftp功能是最常用的服务之一,平常写代码都是在windows下完成再通过ftp传到linux下.由此ftp服务必不可少. 但在刚安装的linux操作系统中,ftp服务一般是不启用的,有些甚至都没有安装这个服务.下面记录下ftp服务的安装与启动过程: 安装(red hat下): #yum install vsftpd 启动ftp服务: #service vsftpd start 安装ftp客户端组件(用来验证是否vsftpd) #yum install ftp 验证: #f

用三种不同的方法访问Linux系统上的FTP服务过程详解

今天向大家介绍一下,如何在Linux上配置ftp服务,并且使用三种不同的方式访问Linux系统上的FTP服务. 实验环境:一台windows7系统虚拟机,一台Linux系统虚拟机. 实验目的:搭建FTP文件传输服务,并进行匿名访问.虚拟用户访问和本地用户验证. 匿名访问用户名为ftp或anonymous,提供任意密码(包括空密码)都可以通过服务器认证 安装软件包,关闭防火墙和关闭selinux功能. 在ftp服务中创建一个wen.txt文件 测试(window7) 匿名登录ftp服务 从ftp服

关于linux服务器上搭建ftp服务的流程

小龙最近折腾了一个阿里云的服务器,买完了就要开始做那么多那么多的功课,小龙对ssh也是一知半解的状态,做个小笔记,发布下整个ftp服务的搭建过程,大神勿喷:) 一.aliyun Linux(Redhat)安装vsftp软件 1.更新yum源首先需要更新系统的yum源,便捷工具下载地址:update_source.zip.这里需要注意的是,目前文件无法传输,所以想要运行 update_source.sh 只能用文本打开,复制粘贴到阿里云服务器系统运行. 2.安装vsftp使用yum命令安装vsft

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服务

1.安装ftp服务包:2.编辑虚拟用户文件:3.编辑pam认证模块支持虚拟账户登录:4.编辑配置文件5.开启服务:6.验证: 原文地址:http://blog.51cto.com/13659182/2117420

linux菜鸟基础学习(二 ) 上篇

一.linux系统结构 首先我们学习linux的系统结构,linux系统中一切皆文件! 由上图,可以看到linux是一个倒树结构linux中所有的东西都是文件这些文件都在系统顶级目录"/" /就是根目录/目录以下为二级目录这些目录都是系统装机时系统自动建立的二级目录的作用/bin ##二进制可执行文件也就是系统命令/sbin ##系统管理命令存放位置/boot ##启动分区,负责系统启动/dev ##设备管理文件/etc ##大多数系统管理文件/home ##普通用户的家目录/lib

linux菜鸟基础学习 (五) 系统日志

系统日志 1.系统日志默认分类 /var/log/messages ##系统服务及日志,包括服务的信息,报错等等/var/log/secure ##系统认证信息日志/var/log/maillog ##系统邮件服务信息/var/log/cron ##系统定时任务信息/var/log/boot.log ##系统启动信息 2.日志管理服务rsyslog 1.rsyslog负责采集日志和分类存放日志2.rsyslog日志分类vim /etc/rsyslog.conf ##主配置文件服务.日志级别 /存

linux菜鸟基础学习 (六) 网络

linux下的网络配置 1.什么是IP ADDRESS internet protocol ADDRESS ##网络协议地址 ipv4 internet protocol version 4 1.2x32 ip是由32个0和1组成 11111110.11111110.11111110.11111110 = 254.254.254.254 2.子网掩码 用来划分网络区域 子网掩码非0的位对应的ip上的数字表示这个ip的网络位 子网掩码0位对应的数字是ip的主机位 网络位表示网络区域 主机位表示网络

Linux的基础学习

Linux的基本原则: 1.由目的单一的小程序组成:我用的时候必须组合小程序完成复杂的任务处理. 2.一切皆文件,什么东西都是以文件的方式存储. 3.尽量避免捕获用户命令接口. 4.配置文件保存成文本模式.一个简单的文本编辑器足以完成复杂的配置的工作. GUI接口:双击鼠标等. CLI接口: 命令提示符.prompt 管理员展现为:# 普通用户为:$ 敲完回车后,shell把命令行送到内核判断命令是否可以执行. 命令格式: 命令格式通常由三部分组成: 命令  格式  参数 格式:修改命令的执行方