linux命令ftps,Linux下ftp+ssl实现ftps
ftps与sftp:
FTPS是借助ssl协议加密,ssl是为http/smtp等加密设计的;;SFTP是借助ssh加密,ssh是为telnet/ftp等加密、建立传输通道而设计的。ssh建立传输通道就是为了加密和传输,而且这个通道是可以用来远程登录。创建加密通道对文件进行加密。
从原理上简单的讲:FTPS是ftp-over-ssl的意思,即ftp借助ssl协议加密传输,不但要用ftp服务器还要用ssl协议加密。sftp协议是ssh中的一条独立的协议,利用sftp服务器就可以传输数据。
下面笔者以ssl来实现ftps的安全传输:
用ssl的是ftps.(传输层的加密)
SSL验证: 1、只密码验证 2、SSL证书验证,需要建立CA服务器
实验思路:首先安装wireshark抓包工具,在没有使用CA服务器的情况下抓包,查看抓包情况。然后安装CA服务器为ftp服务器颁发证书。再次抓包,查看抓包。注:此实验中CA服务器与ftp服务器处于同一个主机上
新建用户:
[root@lyt ~]# useradd user1 #新建用户user1,用于抓包测试。
[root@lyt ~]# passwd user1
安装wireshare:
[root@lyt ~]# mkdir /mnt/cdrom
[root@lyt ~]# mount /dev/cdrom /mnt/cdrom/
[root@lyt ~]# cd /mnt/cdrom/Server/
[root@lyt Server]# vim /etc/yum.repos.d/rhel-debuginfo.repo #编辑本地yum
[root@lyt Server]# yum install wireshark –y #安装wireshark抓包工具
安装vsftp:
[root@lyt Server]# rpm -ivh vsftpd-2.0.5-16.el5.i386.rpm
[root@lyt Server]# service vsftpd start
使用抓包工具,查看在没有使用ssl时的抓包情况:
[root@lyt Server]# tshark -ni eth0 -R "tcp.dstport eq 21" #由于客户端必须使用21端口与服务器建立连接,所以此处对于21号端口进行抓包
用户名和密码已经泄露:
搭建CA服务器:
[root@lyt Server]# cd /etc/pki/tls/
[root@lyt tls]# vim openssl.cnf
[root@lyt tls]# cd /etc/pki/CA/ #切换到与CA服务器有关的目录
[root@lyt CA]# mkdir certs #建立与证书有关的目录
[root@lyt CA]# mkdir newcerts #与新证书有关的目录
[root@lyt CA]# mkdir crl #证书吊销列表
[root@lyt CA]# touch index.txt
[root@lyt CA]# touch serial
[root@lyt CA]# echo "01"> serial #给serial一个初始值
[root@lyt CA]# openssl genrsa 1024 > private/cakey.pem #使用非对称加密算法rsa,采用1024为算法,得到一个密钥存放在private/cakey.pem中
[root@lyt CA]# chmod 600 private/cakey.pem #私钥不允许别人查看,所以将cakey.pem文件的权限改为600,只有所属用户可以读写
[root@lyt CA]# openssl req -new -key private/cakey.pem -x509 -out cacert.pem -days 3650 #使用CA服务器自己的私钥cakey.pem产生一个证书cacert.pem
[root@lyt CA]# mkdir -pv /etc/vsftpd/certs #创建一个目录,存放于vsftp有关的证书,证书请求,密钥
[root@lyt CA]# cd /etc/vsftpd/certs/
[root@lyt certs]# openssl genrsa 1024 >vsftpd.key #非对称加密算法rsa,使用1024位,算出一个密钥vsftp.key
[root@lyt certs]# openssl req -new -key vsftpd.key -out vsftpd.csr #利用私钥vsftp.key产生一个证书请求文件vsftp.csr
[root@lyt certs]# openssl ca -in vsftpd.csr -out vsftpd.cert #利用证书请求文件的到一个证书vsftp.cert
[root@lyt certs]# chmod 600 * #将该目录下的文件权限全部改为600,即所属用户可读写
将申请得到的CA证书和vsftp关联起来:
[root@lyt certs]# chmod 600 *
[root@lyt certs]# vim /etc/vsftpd/vsftpd.conf
[root@lyt certs]# service vsftpd restart
使用flashfXP作为测试:
[root@lyt certs]# tshark -ni eth0 -R "tcp.dstport eq 21" #抓包,查看能否获得用户名和密码
查看抓包结果:无法获得用户名和密码
linux命令ftps,Linux下ftp+ssl实现ftps相关推荐
- Linux下ftp+ssl实现ftps
ftps与sftp: FTPS是借助ssl协议加密,ssl是为http/smtp等加密设计的::SFTP是借助ssh加密,ssh是为telnet/ftp等加密.建立传输通道而设计的.ssh建立传输通道 ...
- 基于Linux命令行终端的ftp客户端程序
深入理解FTP(File Transfer Protocol)协议的有关知识,完成一个基于Linux命令行终端的ftp客户端程序专业程序代写大学生程序代写 转载于:https://www.cnblog ...
- Linux 命令行模式下退出 vim
Linux 命令行模式下退出 vim 命令 说明 :q! 强制退出,不保存 :q 退出 :wq! 强制保存并退出 :w <文件路径> 另存为 :saveas 文件路径 另存为 :x 保存并 ...
- linux cp命令 前面,盘点Linux命令之Linux cp命令使用大全
Linux命令有很多,其中Linux cp命令常用的一种,Linux cp命令如何使用,下面IT培训网将为您盘点有关Linux命令之Linux cp命令大全. Linux命令之Linux cp命令详解 ...
- Linux命令篇 linux命令大全简洁明了 linux学习笔记
Linux命令篇 linux命令大全简洁明了 linux学习笔记 Linux 命令大全 文章目录 Linux 命令大全 一. 常用的基础命令 查看目录: 切换目录: 创建和删除: 拷贝和移动文件: 查 ...
- linux命令 bind,Linux bind命令
# Linux bind命令 [![Linux 命令大全](/images/1590082124592.gif "Linux 命令大全") Linux 命令大全](/queryGr ...
- linux命令eric,Linux命令行下连接无线网
无线网卡配置 此页由Linux Wiki用户Chenxing于2008年11月27日 (星期四) 09:28的最后更改. 在1233456的工作基础上. 本文介绍在Linux命令行界面中手动配置无线网 ...
- linux 命令api,linux命令行下字典,使用有道API
Linux命令行下的字典,使用"exit"退出.大家简单申请一个key就可以用了. 这里 申请 #!/usr/bin/python3.2 import urllib.request ...
- linux命令引用,Linux下nl命令的用法详解
Linux中nl命令和cat命令很像,不过nl命令会打上行号,属于比较不常用的命令,下面随小编一起来了解下这个鲜为人知的nl命令吧. nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文 ...
- linux 命令 单词,linux常用命令的英文单词缩写
ls:list(列出目录内容) cd:Change Directory(改变目录) su:switch user 切换用户 rpm:redhat package manager 红帽子打包管理器 pw ...
最新文章
- 使用Redisson优雅关闭订单
- BP神经网络与卷积神经网络(CNN)
- LeetCode 01两数之和02两数相加
- 04-String——课后作业1:字串加密
- OpenGL pipeline (very important)
- (六)linux内核中的offsetof与container_of宏
- 使用Oracle 10g的Logminer挖掘日志
- cocoaPods 创建自己的依赖库
- android中webview的实现
- 大学生就业新神器 网络电话“通”职场
- c# Invalidate() Update() Refresh()的区别
- 三维激光雷达点云处理分类及目标检测综述
- Linux 多点电容触摸屏
- LPR基准利率BP是什么意思,银行利率bp是什么意思
- java左手画圆右手画方_左手画圆、右手画方,双手齐用同时养护、开发你的左右大脑!...
- 抖音小店开店前要准备什么?入驻流程是什么?
- 汇编语言,大写字母转换为小写
- 查看Windows10系统版本的方法
- 9.10 安卓常用工具类之一 对话 ---- DialogUtil
- 虚拟机安装Linux系列教材 (二)- 关闭Hiper-V