Linux学习12—文件服务
文章目录
- 一. FTP
- 1.1 FTP简介
- 1.2 作用
- 1.3 FTP基础
- 1.4 FTP Server配置
- 1.5 LinuxFTP客户端程序1:lftp
- 1.6 LinuxFTP客户端程序2:wget
- 1.7 启动上传功能
- 二. NFS
- 2.1 简介
- 2.2 作用原理
- 2.3 NFS案例
- 三. SSH
- 3.1 简介
- 3.2 查看SSH安装状态
- 3.3 SSH服务管理
- 3.4 远程登录
一. FTP
1.1 FTP简介
FTP是FileTransferProtocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
1.2 作用
FTP主要作用是提供文件的共享,互联网上的媒体资源和软件资源,绝大部分都是通过FTP服务器传递的。
1.3 FTP基础
- 工作原理
FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而, 用户并不真正登录到自己想要存取的计算机上面而成为完全用户, 可用FTP程序访问远程资源, 实现用户往返传输文件、目录管理以及访问电子邮件等等, 即使双方计算机可能配有不同的操作系统和文件存储方式。FTP 采用 Internet 标准文件传输协议 FTP 的用户界面, 向用户提供了一组用来管理计算机之间文件传输的应用程序。FTP 是基于客户———服务器(C/S)模型而设计的,在客户端与 FTP 服务器之间建立两个连接。
- 端口
默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。
1.4 FTP Server配置
- 安装vsftp:yum -y install vsftpd
我的centos 7中已经存在了,这里只是更新了
2. 准备一个后面我们要操作的文件并填写内容
- 启动vsftp:systemctl start/enable vsftp
- 关闭防火墙
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld
setenforce 0 #这是linux另一道防火墙
将/etc/selinux/config中修改内容为:SELINUX=disabled
yum list | grep vsftp #查看本地的ftp版本
yum -y install vsftpd. #安装vsftpd
systemctl start/enable vsftp # 启动FTP服务
systemctl stop firewalld #临时关闭防火墙
systemctl disable firewalld #关闭防火墙(下次开机时仍然生效)
vim /etc/selinux/config #修改SELINUX=disabled
setenforce 0
1.5 LinuxFTP客户端程序1:lftp
LFTP是一款非常著名的字符界面的文件传输工具。支持FTP、HTTP、FISH、SFTP、HTTPS和FTPS协议。
在客户端安装lftp
yum -y install lftp
利用lftp登录lftp服务器
lftp 172.16.23.128 #这是我的ip地址
查看ftp服务器下的文件:ls
下载文件abc.txt
get abc.txt
下载pub文件夹
mirror pub
查看下载的内容:位置就是当前位置
1.6 LinuxFTP客户端程序2:wget
wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的 TCP/IP协议 下载,并可以使用 HTTP 代理。“wget” 这个名称来源于 “World Wide Web” 与 “get” 的结合。
所谓自动下载,是指 wget 可以在用户退出系统的之后在继续后台执行,直到下载任务完成。
从前面搭建的ftp服务器上下载abc.txt
wget ftp://172.16.23.128/abc.txt
wget命令后面的-o表示指定下载文件放的位置(即存储位置)
查看下载结果
从ftp服务器上下载文件夹
wget -m ftp://172.16.23.128/pub
查看下载结果
1.7 启动上传功能
创建一个文件5.txt,并写入内容
上传文件
put 5.txt
可以发现客户端是没有权限上传文件,仔细想想在实际生活中服务器的文件是很重要的,所以并不会允许客户端随意的上传文件,所以需要服务端放开指定客户端的权限。
下面是在FTP服务器上启动上传功能的流程:
- 配置文件简介
配置FTP服务器的功能的开启和关闭的文件:vstfp.conf(内容如下)
vim /etc/vsftpd/vsftpd.conf
- 检查禁用匿名账户登录开启
在vsftpd.conf启用禁用匿名账户(默认,比较方便)
anonymous_enable=YES#yes是允许匿名登录
3. 配置上传指令
anon_upload_enable=YES #启动上传文件功能
anon_mkdir_write_enable=YES #启动创建目录的能力
- 服务器上创建上传目录
mkdir /var/ftp/upload
chmod 777 /var/ftp/upload #修改文件夹权限
完成上面后记得重启vsftpd服务
5. 客户端测试(在客户端虚拟机上面做)
- 登录服务器
lftp 172.16.23.128
- 创建并上传文件
创建文件写入内容:
touch 234.txt
echo 234 > 234.txt
登录ftp:
lftp 172.16.23.128/upload #将文件上传到ftp服务器的upload目录下,这里直接登录进入了这个目录
上传文件:
put 234.txt
ls 可以看见我们的234.txt文件上传上去了
二. NFS
2.1 简介
NFS也是一款,网络文件系统,英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送,多服务器节点同时挂载以及并发的写入。
2.2 作用原理
- 提供文件共享服务
- 为web服务器配置集中的后端存储
2.3 NFS案例
- 环境
两台centos 7虚拟机
主服务器IP地址:172.16.23.128
从机IP地址:172.16.23.137
- 关闭防火墙(两台机器都要关闭)
systemctl stop firewalld
systemctl disable firewalld
vim /etc/selinux/config #修改SELINUX=disabled
setenforce 0
- 在主服务器上安装NFS服务器
yum install -y nfs-utils
我这里已经装过了
4. 在主服务器上创建文件数据(后面测试用)
mkdir /webdata #创建一个文件夹
echo "nfs test2022" > /webdata/index.html #创建一个html文件
5. 配置NFS(/etc/exports是nfs的主配置文件)
vim /etc/exports
在exports中加入的内容如下:
/webdata 172.16.23.0/24(rw)
/webdata 指定发布资源的目录
172.16.23.0/24:允许访问nfs的客户机所在的网段,子网掩码是24位
(rw):客户机可读可写
- 启动NFS
systemctl start nfs-server
检查输出目录(可以看到我们在exports中配置的),若正常输出则配置成功
exportfs -v #可以查看我们发布了哪些文件资源
7. 客户机安装NFS客户端
yum install -y nfs-utils httpd
我这里已经安装
8. 客户机查看NFS服务器的可用目录
showmount -e 172.16.23.128
可以看到nfs服务器(主机器)释放的/webdata文件夹
9. 客户机上手动挂载
mount -f nfs 172.168.23.139:/webdata /var/www/html #这里的ip地址是nfs服务器主机的地址
此时我们可以查看/var/www/html/index.html(可以看当之前在主机上创建的html文件)
拓展:取消挂载是
umount -t nfs 172.168.23.139:/webdata /var/www/html
- df命令查看挂载(可以看见主机释放的文件已经被我们挂载在本地了)
- 使用web客户端查看服务器
任意找一台处客户机以外的机器,通过elinks访问,这里由于我只创建了两台服务器,所以使用主服务器来访问客户服务器的web,注意两点:
- 客户服务器安装并打开了httpd服务
yum install -y httpd
systemctl start httpd
- 主服务器安装了elinks
yum install -y elinks
通过elink访问客户服务器web(显示的是index.html,因为/var/www/html默认作为web服务器文件夹内容)
elinks http://172.16.23.137
12. 在主服务器上更新index.html看客户服务器index.html是否发生变化
- 在主服务器上更新index.html的内容
- 在客户机上文件是否发生了更新(可以看见发生了更新)
三. SSH
3.1 简介
SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置。
3.2 查看SSH安装状态
rpm -qa | grep ssh
我的已经安装了
若没有安装
yum install openssh-server
3.3 SSH服务管理
- 启动服务
systemctl start sshd
- 查看ssh工作的端口
netstat -antp | grep sshd
3.4 远程登录
使用ssh命令可以登录其他主机(如下是以root的身份登录ip为172.16.23.139这个机器,相当于获得了这台机器的控制权)
Linux学习12—文件服务相关推荐
- Linux学习笔记 文件服务Vsftp详细介绍
Linux学习笔记 文件服务Vsftp详细介绍 知识点: 1.FTP使用TCP连接和TCP端口 2.在进行通信时,FTP需要建立两个TCP连接: 一个用于控制信息,TCP端口号缺省为21 一个用于数据 ...
- Linux学习笔记-文件权限与路径
Linux学习笔记-文件与目录 目前从电子信息科学与技术转到了计算机专业,因此想趁着大四比较闲的时候补一些计算机的知识.我想说:你好,生活[斜眼笑]!愿生活温柔以待!哈哈,这是我写的第一篇博客,谨以此 ...
- linux学习软件有哪些,Linux学习12个有效果软件!看看哪些你用得上
原标题:Linux学习12个有效果软件!看看哪些你用得上 不管是Linux入门学习还是已经在从事Linux开发工作的人,都需要学习和掌握一些Linux开发工具和软件,那么现在已经主流实用的Linux软 ...
- Linux 操作系统之文件服务
Linux系统配置及服务管理--文件服务 一.FTP Server 简介:FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中应用层的协议之一,其作用是提供 ...
- Linux中阶—文件服务vsftpd (九)
vsftpd服务安装: yum -y install vsftpd* yum -y install pam* libdb -utils libdb* --skip-broken 软件结构如下: ...
- Linux学习-74-NTFS文件系统安装教程
16.17 NTFS文件系统安装教程 在 CentOS 6.x 中,默认 NTFS 文件系统是没有安装的,也就是说在 CentOS 6.x 中是不能直接挂载 NTFS 分区的.但是目前 Windows ...
- Linux学习笔记——文件的查找与检索
文章目录 文件的查找 按照文件名搜索 按照文件大小进行搜索 按照修改时间搜索 按照权限搜索 按照所有者和所属组搜索 按照文件类型搜索 逻辑运算符 其他选项 文件的检索 在当前目录查找 递归查找 反向查 ...
- linux 文件服务,Linux操作系统之文件服务(ftp、nfs)
一.FTP server 1.简介 名词解释:FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中应用层的协议之一. logo: 作用: 提供文件共享服务, ...
- Linux学习:文件、用户、磁盘管理总结
本章节对Linux线下的文件管理.用户管理及磁盘管理做一个总结. 一.文件管理 1.简介:linux是系统一个倒树结构,linux中所有的东西都是文件,这些文件都在系统顶级目录"/" ...
- linux的服务文件,Linux的nfs文件服务
一.NFS概念(适用于Linux与Linux的网络文件系统) 二.安装nfs启动服务 yum install nfs-utils systemctl enbale nfs-server systemc ...
最新文章
- 尺度不变特征变换匹配算法详解
- Safari调试iOS应用
- python字典和集合对象可以进行索引_Python字典和集合
- 将Java应用程序打包为一个(或胖)JAR
- 《上市公司信息披露电子化规范》简介
- Mac电脑睡眠之后苹果电脑没有声音的解决办法
- 记录三个困扰很久的问题
- android 跳转公众号,app直接跳转公众号
- tas5707php,TAS5707PHP
- 网络编程学习之经典书籍推荐
- 关于离开,请诸位保重自己
- Maven 常用镜像站地址
- python中模块打补丁
- PKCS #5: Password-Based Cryptography Specification Version 2.1 中文翻译
- 前端头像上传功能实现之base64图片/头像上传 详细解析2【扩展知识FileReader对象】
- 【AI达人创造营第二期】基于PaddleClas的新冠肺炎CT影像的分类
- 读书笔记:《冯唐成事心法》
- php nginx环境 简书,Piwik的安装使用以及php+nginx环境搭建
- 二叉搜索树 【数据结构】
- 一次 jbd2进程导致磁盘 io 高的分析解决过程
热门文章
- 单片机编程软件 UV4启动界面修改(没啥卵用系列)
- 【幅频均衡带通滤波器】基于FPGA的幅频均衡带通滤波器的设计
- java 贪吃蛇 源码+图片
- 射频微波芯片设计1:岗位以及开发工具详解
- c实现一个简单的线性反馈移位寄存器LFSR
- MSN Messenger
- 使用 GalleryView 1.1制作相册说明
- dnf外挂java代码,使用Java实现简朴的斗地主案例_rust辅助,绝地求生卡盟
- 全国计算机信息处理技术员报名官网入口,信息处理技术员考试,就是这么简单!...
- Android小游戏--2048