作者:hacker发布时间:2022-12-29分类:破解邮箱浏览:93评论:1
:TLS/SSl(libssl,libcryto,openssl),TSL PKI
telnet,TCP/23,远程登录
认证明文(密码认证)
数据传输明文
ssh:Secure Shell ,TCP/22
C/S架构 套接字监听
SSH -- SSH
openssh(开源) 即是协议,又是软件
ssh V1(中间人攻击),V2
客户端:
LINUX:ssh
Windows:putty,SecureCRT(商业版),SSHsecureShellClient,Xmanger
服务器端:(linux,unix)
sshd
openssh(ssh,sshd)
ssh---telnet
ssh:主机密钥
client--------server
yes:接受服务器主机发来的公钥
RSA,DSA
客户端生成临时对称密钥(会话)随机生成
对称密钥使用服务器的公钥加密后传给服务器,只有服务器的私钥可以解密。
账号和密码用对称密钥加密后传给服务器进行认证。
认证通过,建立一个永久的会话通道。
基于口令的认证
基于密钥的认证
客户端生成一对密钥,公钥传到服务器的对应用户的家目录下,身份认证是客户端利用自己的私钥加密一段数据,服务器用客户的公钥解密。可解,则认证通过。
不允许root直接登录,而是用普通用户,在su切换。
一台主机为客户端(基于某个用户实现 ),
基于ssh的远程复制命令,可以实现在主机之间传输数据。
简单说,SSH是一种网络协议,用于计算机之间的远程加密登录。
SSH 为 Secure Shell的缩写,由 IETF 的网络小组(Network Working Group)所制定,SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH安装容易、使用简单,而且比较常见,一般的Unix系统、Linux系统、FreeBSD系统都附带有支持SSH的应用程序包。Windows如果需要使用SSH,可以安装PuTTY或者Cygwin。
SSH 服务基于非对称加密(public-key cryptography,也称公开密钥加密)技术实现数据加密传输。该技术会生成一对数学相关的密钥, 其中一个用于对数据进行加密,而且只能用于加密,而另一个只能用于解密 。使用加密密钥加密后的数据,只能用对应的解密密钥才能解密。而且,只知道其中一个密钥,无法计算出另一个。因此,如果公开了一对密钥中的一个,并不会危害到另一个的秘密性质。通常把公开的密钥称为公钥(public key),而不公开的密钥称为私钥(private key)。
一般来说,非对称加密的应用场景有两个:
与对称密钥加密相比,非对称加密的优点在于不存在共享的通用密钥。由于解密用的私钥无需发送给任何用户,所以可以避免密钥被劫持或篡改。而加密用的公钥即便被劫持或篡改,如果没有与其匹配的私钥,也无法解密数据。所以,截获的公钥是没有任何用处的。
当前,SSH主要采用 RSA 算法(协议 V2 默认算法)和 DSA 算法(协议 V1 仅支持该算法)来实现非对称加密技术。
SSH连接时,整个交互过程如上图。,主要可以分为三个阶段
服务端在每次启动 SSH 服务时,都会自动检查 /etc/ssh/ 目录下相关密钥文件的有效性。如果相关文件检查发现异常,则会导致服务启动失败,并抛出相应错误信息。 如果文件相关不存在,则会自动重新创建。
默认创建的相关文件及用途说明如下:
当服务器SSH服务启动,客户端也安装了SSH后,就可以进行连接了。
后续登录校验及正常的数据传输,都会通过双向加密方式进行。相关交互说明如下:
从这个连接过程中,可以看出,主要使用到两个文件夹下的内容:
在连接中的两个过程:
之所以有多组密钥,是因为使用了不同的加密算法。
客户端接收到之后,会存储在 ~/.ssh/known_hosts 文件里,查看这个文件,可以看到有一行与服务器 ssh_host_ecdsa_key.pub 内容一致。
所以, ~/.ssh/authorized_keys 里表示本机可以被哪些机器访问
~/.ssh/known_hosts 里表示本机访问过哪些机器
SSH配置文件有两个,一个是 ssh_config ,一个是 sshd_config 。前者是客户端配置,后者是服务器配置。也就是说,如果本机是作为客户端,那么就修改第一个配置,如果本机是作为服务器,那么就修改第二个配置,
一般来说,和密钥登录的配置有关的有以下几个,如果密钥配置好后无法登录,尝试配置以下三项。
其他
传统的网络服务程序,如FTP、Pop和Telnet在传输机制和实现原理上是没有考虑安全机制的,其本质上都是不安全的。因为它们在网络上用明文传送数据、用户帐号和用户口令,别有用心的人通过窃听等网络攻击手段非常容易地就可以截获这些数据、用户帐号和用户口令。而且,这些网络服务程序的简单安全验证方式也有其弱点,那就是很容易受到"中间人"(man-in-the-middle)这种攻击方式的攻击。
所谓"中间人"的攻击方式,就是"中间人"冒充真正的服务器接收你的传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送被"中间人"一转手做了手脚之后,就会出现很严重的问题。中间人能够攻击,主要原因在于他能认识截取的信息,也能发出让接受者认识的信息。
使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS欺骗和IP欺骗。使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、Pop、甚至为PPP提供一个安全的"通道"。
最初的SSH是由芬兰的一家公司开发的。但是因为受版权和加密算法的限制,现在很多人都转而使用OpenSSH。OpenSSH是SSH的替代软件包,而且是免费的,可以预计将来会有越来越多的人使用它而不是SSH。
常用的四款Linux ssh工具:
1、putty
putty是最有名的SSH和telnet客户端,由Simon Tatham为Windows平台开发。putty是一款开源软件,提供可用的源代码并有一批志愿者进行开发和支持。
2、secureCRT
secureCRT支持SSH,同时支持Telnet和rlogin协议。secureCRT是一款用于连接运行包括Windows、Unix和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。有流行CRTTelnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100、VT102、VT220和ANSI竞争,能从命令行中运行或从浏览器中运行。其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等。secureCRT的SSH协议支持DES、3DES和RC4密码和密码与RSA鉴别。
3、EasySSH
EasySSH是一款便捷的GUI SSH客户端,提供了一种连接远程Linux服务器的快捷工具。
尽管EasySSH没有提供Putty中提供的大量配置选项,但是它非常易于使用。EasySSH的最佳功能之一是提供标签式界面,因此你可以打开多个SSH连接并在它们之间快速切换。
EasySSH的功能包括:分组、保存用户名密码、外观选项、支持本地和远程隧道。
4、Xshell
Xshell是一个强大的安全终端模拟软件,它支持SSH1、SSH2以及Microsoft Windows平台的TELNET协议。xshell通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。
对服务器性能是会有一些影响,但最大的影响是你的服务器root密码被破解,被完全控制。ssh攻击的目的就是暴力破解你的密码。最直接的影响就是设备瘫痪(服务器死机)SSH暴力破解是指攻击者通过密码字典或随机组合密码的方式尝试登陆服务器(针对的是全网机器),这种攻击行为一般不会有明确攻击目标,多数是通过扫描软件直接扫描整个广播域或网段。 怎样防御暴力破解攻击?一:系统及网络安全1、定期检查并修复系统漏洞2、定期修改SSH密码,或配置证书登陆3、修改SSH端口4、禁Ping5、若你长期不需要登陆SSH,请在面板中将SSH服务关闭6、安装悬镜、云锁、安全狗等安全软件(只安装一个)
标签:ssh攻击软件
已有1位网友发表了看法:
访客 评论于 2022-12-29 18:00:04 回复
很多功能,它既可以代替Telnet,又可以为FTP、Pop、甚至为PPP提供一个安全的"通道"。 最初的SSH是由芬兰的一家公司开发的。但是因为受版权和加密算法的限制,现在很