Linux基础(day58)
时间:2022-04-27
本文章向大家介绍Linux基础(day58),主要内容包括15.4 xshell使用xftp传输文件、15.5 使用pure-ftpd搭建ftp服务、使用pure-ftpd搭建ftp服务、测试pure-ftpd、扩展、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
15.4 xshell使用xftp传输文件
- 在xshell按快捷键 ctrl+alt+f ,会自动弹出一个xftp的提示下载界面
- 进入到下载界面
- 选择下载以后,会进入一个填写资料的页面,上面的是免费的,下面的收费的,我们选择上面一个填写资料
- 邮箱项,很重要。因为会在你的邮箱里有下载地址和使用教程,是通过邮箱发送,而且最好使用一些比较权威的邮箱;如果是qq邮箱国外发送邮件会有一些延迟;
- 获取到下载地址开始下载,就可以直接下载了
- 下载完成后,直接默认安装,就可以使用了,这时再使用xshell登录主机,按下ctrl+alt+f;就会弹出一个xftp的页面
- 打开之后会进入到root目录下,使用的是ssh协议
- 这时在虚拟机上暂停掉21端口,会发现仍然可以传输文件
systemctl stop vsftpd
- 若是需要下载linux系统里的文件,只需双击,或者直接拖动到左边(桌面)就会有下载的文件
总结
- xftp走的是ssh协议,不属于ftp,这种只要是linux开启了sshd服务就可以用。
- vsftp获取其他ftp软件实现的是ftp服务,windows上可以搭建,linux上也可以搭建
15.5 使用pure-ftpd搭建ftp服务
使用pure-ftpd搭建ftp服务目录概要
- yum install -y epel-release
- yum install -y pure-ftpd
- vim /etc/pure-ftpd/pure-ftpd.conf//找到pureftpd.pdb这行,把行首的#删除
- systemctl stop vsftpd
- systemctl start pure-ftpd
- mkdir /data/ftp
- useradd -u 1010 pure-ftp
- chown -R pure-ftp:pure-ftp /data/ftp
- pure-pw useradd ftp_usera -u pure-ftp -d /data/ftp
- pure-pw mkdb
- pure-pw list/userdel/usermod/passwd
使用pure-ftpd搭建ftp服务
- pure-ftpd 比vftpd更加的轻量,更加简单
- 首先需要安装pure-ftpd——>yum install -y pure-ftpd,但有时会提示pure-ftpd不存在,那是因为你缺少epel扩展源——>yum install -y epel-release
[root@hf-01 ~]# yum install -y pure-ftpd
- 安装完之后,更改 /etc/pure-ftpd/pure-ftpd.conf 配置文件,找到pureftpd.pdb这行,把行首的# 号 删除,目的是为了把密码配置文件要指定
[root@hf-01 ~]# vim /etc/pure-ftpd/pure-ftpd.conf
搜索/pureftpd.pdb行首的 #号 删除
PureDB /etc/pure-ftpd/pureftpd.pdb
保存退出
- 因为pure-ftpd也属于ftp软件,也会监听21端口,所以需要先关闭之前vsftpd监听打开的21端口,否则就会报错
[root@hf-01 ~]# systemctl stop vsftpd
[root@hf-01 ~]#
- 然后再启动pure-ftpd服务,并查看端口,查看pure-ftpd服务
- systemctl start pure-ftpd
[root@hf-01 ~]# systemctl start pure-ftpd
[root@hf-01 ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1617/master
tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:56265 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 0.0.0.0:20048 0.0.0.0:* LISTEN 1264/rpc.mountd
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 3142/pure-ftpd (SER
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1237/sshd
tcp 0 0 0.0.0.0:48248 0.0.0.0:* LISTEN 1234/rpc.statd
tcp6 0 0 ::1:25 :::* LISTEN 1617/master
tcp6 0 0 :::32863 :::* LISTEN 1234/rpc.statd
tcp6 0 0 :::2049 :::* LISTEN -
tcp6 0 0 :::45956 :::* LISTEN -
tcp6 0 0 :::3306 :::* LISTEN 1645/mysqld
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::20048 :::* LISTEN 1264/rpc.mountd
tcp6 0 0 :::21 :::* LISTEN 3142/pure-ftpd (SER
tcp6 0 0 :::22 :::* LISTEN 1237/sshd
[root@hf-01 ~]# ps aux |grep ftp
root 3142 0.0 0.1 200952 1180 ? Ss 04:33 0:00 pure-ftpd (SERVER)
root 3145 0.0 0.0 112676 984 pts/0 S+ 04:34 0:00 grep --color=auto ftp
[root@hf-01 ~]#
- 创建测试目录,为了给pure-ftpd用户使用,再创建用户
[root@hf-01 ~]# mkdir /data/ftp
[root@hf-01 ~]# useradd -u 1010 pure-ftp
[root@hf-01 ~]#
- 把/data/ftp的属主和属组改成pure-ftp
[root@hf-01 ~]# chown -R pure-ftp:pure-ftp /data/ftp
[root@hf-01 ~]#
- 用pure-pw useradd 命令创建一个用户
- pure-pw useradd [指定用户] -u [指定系统用户] -d [指定虚拟用户的家目录]
[root@hf-01 ~]# pure-pw useradd ftp_usera -u pure-ftp -d /data/ftp
Password: //密码为 hanfeng
Enter it again:
[root@hf-01 ~]#
- 可以使用pure-pw --help查看该命令支持那些用法
- 命令pure-pw mkdb,是用来把密码生成系统,也就是pure-ftpd服务所识别的一种文件
- pure-pw mkdb //不执行这一步是无法登录的
[root@hf-01 ~]# pure-pw mkdb
[root@hf-01 ~]#
- 查看命令说明文件,命令pure-pw list/userdel/usermod/passwd 和pure-pw --help 命令一样的用户
测试pure-ftpd
- 先在/data/ftp/目录下创建一个文件
[root@hf-01 ~]# pure-pw useradd ftp_usera -u pure-ftp -d /data/ftp^C
[root@hf-01 ~]# touch /data/ftp/123.txt
[root@hf-01 ~]#
- 使用pure-ftpd
[root@hf-01 ~]# lftp ftp_usera@127.0.0.1
口令:
lftp ftp_usera@127.0.0.1:~>
- 可以查看到刚创建的123.txt文件,uid和gid为root
lftp ftp_usera@127.0.0.1:~> ls
drwxr-xr-x 2 1010 pure-ftp 20 Jan 19 04:51 .
drwxr-xr-x 2 1010 pure-ftp 20 Jan 19 04:51 ..
-rw-r--r-- 1 0 0 0 Jan 19 04:51 123.txt
lftp ftp_usera@127.0.0.1:/>
- 退出pure-ftpd,只需要输入 quit命令 即可
- 这时我们改变123.txt文件的属主和属组
[root@hf-01 ~]# chown pure-ftp:pure-ftp /data/ftp/123.txt
[root@hf-01 ~]#
- 在登录pure-ftpd中去查看123.txt文件的属主和属组,会看到属主为uid,属组映射为系统中组的名字pure-ftpd
[root@hf-01 ~]# lftp ftp_usera@127.0.0.1
口令:
lftp ftp_usera@127.0.0.1:~> ls
drwxr-xr-x 2 1010 pure-ftp 20 Jan 19 04:51 .
drwxr-xr-x 2 1010 pure-ftp 20 Jan 19 04:51 ..
-rw-r--r-- 1 1010 pure-ftp 0 Jan 19 04:51 123.txt
lftp ftp_usera@127.0.0.1:/>
扩展
- ASP.NET进程优化
- 多说 提速:js内页页脚加载、静态文件CDN
- 微信小程序的王者时代
- [程序设计语言]-[核心概念]-02:名字、作用域和约束(Bindings)
- NUMA架构
- 如何处理 Python 入门难以进步的现象?
- 编写前置和后置条件的连贯接口库:CuttingEdge.Conditions
- [程序设计语言]-[核心概念]-03:控制流
- 简单代码实现“网站维护中”“coming soon” 效果
- 使用Topshelf创建Windows 服务
- 自定义AuthorizeAttribute
- 系统进程管理工具Process Explorer
- jquery 操作DOM元素(1)
- 开源的读取Excel文件组件-ExcelDataReader
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Scrapy框架: settings.py设置
- 干货 | Elasticsearch 开发实战常用命令清单
- Scrapy框架: 登录网站
- Scrapy框架: middlewares.py设置
- Scrapy框架: pipelines.py设置
- Scrapy框架: 通用爬虫之CrawlSpider
- Scrapy框架: 通用爬虫之XMLFeedSpider
- Scrapy框架: 通用爬虫之CSVFeedSpider
- Scrapy框架: 通用爬虫之SitemapSpider
- Scrapy框架: 异常错误处理
- Scrapy框架: Request回调函数
- Python快速设置Excel表格边框
- SwiftUI:contextMenu 菜单
- [已解决]报错: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/User
- Python建立pip.ini