Linux之FTP服务
ftp是一个文件传输协议(File Transfer Protocal)。lftp相当于一个浏览器,用来向服务器发送请求的。
进行FTP服务的相关操作的时候,要先修改 vim /etc/sysconfig/selinux第七行为disabled。修改之后重启reboot,然后使用getenforce查看你的状态,为disabled代表环境时可以的。(修改环境为了更好第看到相关现象)
1.ftp的启用
yum install vsftpd ##安装vsftpd服务
systemctl start vsftpd ##开启服务
systemctl enable vsftpd ##设置开机自启动
firewall-cmd --permanent --add-service=ftp ##设置在防火墙中允许使用ftp服务
firewall-cmd --reload ##防火墙重新加载
ftp://172.25.254.97 ##浏览器中设置ftpd虚拟机的ip来测试
或者再另一台安装lftp的虚拟机中进行测试 :
lftp 172.25.254.97
访问数据端口:21
数据传输端口:>1024随即端口
默认发布目录为:/var/ftp
登陆方式分为:
lftp 172.25.254.97 ## 匿名用户登陆,进去默认目录为/var/ftp
lftp 172.25.254.97 -u student ##本机用户登陆,进去默认目录为/home/student
配置文件:/etc/vsftpd/vsftpd.conf
注意:可以使用man vsftpd 或者rpm -qc vsftpd进行该服务的配置文件的查询
3.ftp的安全部署(/etc/vsftpd/vsftpd.conf)
anonymous_enable=YES|NO ##匿名用户是否可以登陆
local_enable=YES|NO ##本地用户是否可以登陆
write_enable=YES|NO ##本地用户是否可写
注意:对配置文件操作后,要重启服务:systemctl restart vsftpd
4.匿名用户相关操作
【1】匿名用户的上传
chmod 775 /var/ftp/pub ##修改目录的权限为755
chgrp ftp /var/ftp/pub ##修改目录用户组为ftp,因为本机上传文件到远程主机后,所生成文件的用户组为ftp
vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES ##编辑匿名用户可写
systemctl restart vsftpd
示例:修改/var/ftp/put的权限和组 :
编辑匿名用户可写属性:
[root@localhost ftp]# systemctl restart vsftpd.service
在77主机上进行测试:文件是可以上传的
【2】匿名用户的下载
anon_world_readable_only=NO ##匿名用户可以进行下载
【3】匿名用户建立目录
anon_mkdir_write_enable=YES
示例:默认情况下,匿名用户不可以新建目录,修改之后结果如下:
【4】匿名用户是否可以删除和重命名
anon_other_write_enable=YES
示例:默认匿名用户不可以进行删除重命名操作,修改属性之后,结果如下:
【5】匿名用户加目录的修改
anon_root=/direcotry
示例: 修改匿名用户加目录为/var/ftp/westos
[root@localhost westos]# ll
total 0
drwxrwxr-x 2 root ftp 19 Aug 5 05:54 xniu
在主机77中进行测试:
此时,上传后的文件所在的目录为:/westos/xniu
[root@localhost xniu]# ls
passwd
【6】匿名用户上传文件默认权限修改
anon_umask=xxx
【7】匿名用户上传使用的用户身份修改(默认是ftp)
chown_uploads=YES
chown_username=student
示例:使上传的用户属于student,修改内容如下;
在主机97中连接ftp,并上传:
上传文件显示:
total 4
-rw------- 1 student ftp 2411 Aug 5 06:12 passwd
【8】最大上传速率
anon_max_rate=102400
【9】上传文件的最大连接数
max_client=2
5.本地用户的设定
local_enable=YES|NO ##本地用户登陆限制
write_enable=YES|NO ##本地用户写权限限制
local_root=/direction ##本地用户加目录的修改
local_umask=xxx ##本地用户上传文件权限
chroot_local_user=YES ##限定本地用户浏览目录,所有用户被锁定到自己的加目录中(默认可以到根目录下)
chmod u-w /home/* ##设置后出现500权限过大,所以要去掉加目录的写权限
【1】切换根目录用户黑名单的建立
chroot_local_user=NO ##代表用户可以进入根目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list ##不存在的时候,建立文件;在名单里面的,只能切换在自己加目录下
【2】切换根目录用户白名单的建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
【3】限制本地用户的登陆
vim /etc/vsftpd/ftpusers ##用户黑名单
vim /etc/vsftpd/user_list ##用户临时黑名单
用户白名单设定
userlist_deny=NO
/etc/vsftpd/user_list ##设定之后,此文件变为白名单;文件里面的用户可以登,其余用户不可以
注意:当user_list为白名单时,与ftpusers文件相比,ftpusers等级高(永久的)
6.ftp虚拟用户的制作
【1】创建虚拟帐号,在/etc/vsftpd/目录中创建一个文件
vim /etc/vsftpd/user_file ##文件名称任意
ser1 ##把用户名和密码写进去
123
ser2
123
db_load -T -t hash -f user_file user_file.db ## -T代表转换 -t指定加密方式 -f指定转换文件和生成文件
【3】在/etc/pam.d/目录下创建文件usercheck,并进行用户名和密码的验证(认证策略)
vim /etc/pam.d/usercheck ##文件名任意
【4】在/etc/vsftpd/vsftpd.conf中进行如下修改
vim /etc/vsftpd/vsftpd.conf
注释:
pam_service_name=usercheck ##用户验证策略修改为自己写的usercheck
补充:
用?查看在ftp环境中可以使用的操作
get命令文件下载,下载在主机当前目录
put命令上传文件,从本地上传到远程主机,匿名或用户对应目录下
530报错说明认证失败(用户不可以登陆情况)
550表示服务本身不允许操作(mkdir等操作不可以执行)
500权限过大
Linux之FTP服务的更多相关文章
- 阿里云linux配置ftp服务
阿里云linux配置ftp服务 一.ftp服务安装 运行以下命令安装ftp yum install -y vsftpd 运行以下命令打开及查看etc/vsftpd cd /etc/vsftpd ls ...
- Linux 安装FTP服务
Linux 安装FTP服务,简单入门 环境: 虚拟机:Oracle VM VirtualBox. 系统:CentOS 7. (1)判断是否安装了ftp: rpm -qa | grep vsftpd 或 ...
- Linux安装FTP服务
转自:http://blog.csdn.net/huangbiao86/article/details/6641952 ftp服务器 1. 在Linux和其他机器之间共享文件(在linux下安装ft ...
- Linux SSH,FTP服务配置
CentOS-6.4-x86_64-minimal 0.网卡配置 参考:Linux系统\Centos没有网卡eth0配置文件怎么办? - http://jingyan.baidu.com/articl ...
- Linux下FTP服务(一)—— Ubuntu安装
参考:http://www.cnblogs.com/likwo/p/3154868.html 实验环境:Ubuntu 14.04 VMware虚拟机1. 安装 apt-get install vsft ...
- linux 配置ftp服务
需求:定时远程上传文件,windows->linux linux是一个云服务器,centos7 1:安装vsftpd yum install vsftpd 2:设置开机启动服务chkconfig ...
- Linux学习-FTP服务
一.FTP相关介绍 1.文本传输协议FTP FTP (File Transfer Protocol) 文件传输协议,是因特网中使用最广泛的文件传输协议: 基于C/S结构的双通道协议(数据和命令连接) ...
- Linux安装ftp服务-详细步骤
最近项目中用到了FTP服务器,于是整理了一份在Linux服务器上安装FTP的详细步骤供大家分享. 1.首先连接上自己的Linux服务器.我的Linux是CentOS 6 2.检查Linux服务器上是否 ...
- linux之FTP服务搭建 ( ftp文件传输协议 VSFTPd虚拟用户)
FTP服务搭建 配置实验之前关闭防火墙 iptables -F iptables -X iptables -Z systemctl stop firewalld setenforce 0 1.ftp简 ...
- linux 搭建ftp服务并设置限制访问目录
服务器有好几个项目,新项目前端外包,因为要微信授权登陆,所以前端没有办法本地调试,必须上次ftp在我们服务器上调试代码,当然要限制ftp访问的目录,否则整个服务器项目都能看到了. 安装vsftpd s ...
随机推荐
- H5 播放视频常见bug及解决方案
本文摘自:本文来自“小时光茶社(Tech Teahouse)”公众号 原文:https://mp.weixin.qq.com/s/MM5ZwCiWLAeHalsNYMImnw 1. 自动播放问题 通过 ...
- 【c++ primer, 5e】参数传递
p187~p199: [传值参数] [传引用参数] 使用引用形参返回额外信息:传入一个(或者多个)额外的引用实参,令其保存字符出现的次数. 6.11 #include <iostream> ...
- Django学习笔记之CBV和FBV
FBV FBV(function base views) 就是在视图里使用函数处理请求. 在之前django的学习中,我们一直使用的是这种方式,所以不再赘述. CBV CBV(class base v ...
- Kafka学习之(三)Centos下给PHP开启Kafka扩展(rdkafka)
Centos版本:Centos6.4,PHP版本:PHP7. 在上一篇文章中使用IP为192.168.9.154的机器安装并开启了Kafka进行了简单测试,充当了Kafka服务器. 本篇文章新开启一台 ...
- 20145314郑凯杰 《Java程序设计》第7周学习总结
20145314郑凯杰 <Java程序设计>第7周学习总结 教材学习内容总结 首先放上代码托管图片和本地代码图片: 插图4: 插图5: 插图6: 第十三章 时间与日期 13.1 认识时间与 ...
- [专业亲测]Ubuntu16.04安装Nvidia显卡驱动(cuda)--解决你的所有困惑【转】
本文转载自: 因为要做毕设需要安装caffe2,配置cuda8.0,但是安装nvidia驱动真的是把我难倒了,看了很多篇博文都没有效果,现在我自己重新总结了下几种 安装方法(亲测有效),希望能帮到大家 ...
- IE8下打印内容缩小问题
去掉启动缩小字体填充的设置项勾选 来自为知笔记(Wiz)
- 【尺度不变性】An Analysis of Scale Invariance in Object Detection – SNIP 论文解读
前言 本来想按照惯例来一个overview的,结果看到1篇十分不错而且详细的介绍,因此copy过来,自己在前面大体总结一下论文,细节不做赘述,引用文章讲得很详细,另外这篇paper引用十分详细,如果做 ...
- VirtualBox 安装增强功能失败 解决方法
参考:virtualbox安装增强功能时[未能加载虚拟光盘] 在安装VirtualBox并配置虚拟机之后,想要安装增强功能:设备 => 安装增强功能. 出现未能加载虚拟光盘问题. 解决方法: 进 ...
- 安装mysql数据库中的技巧、错误排查
针对解压版本5.7.16(博主使用的这个版本.在某些低版本中部分命令失效) 一.安装.初始化data目录(解压版解压后没有data目录) 安装:配置path环境变量,然后管理员运行命令提示符cmd ...