ssh安装包_如何使用Tor设置SSH服务器以躲避Shodan和黑客

f4263e9a696801087ba2b358c9837343.png

下一代libSSH或者OpenSSH的exploit也许即将到来。在黑客找到绕过保护服务器的密码的新方法之前,不要让你的SSH服务器进入Shodan的数据库。

Shodan被称作“黑客的搜索引擎”是因为它实际上是提供了一个网络连接设备和服务器的可供搜索的数据库。任何人都可以在上面搜索网络摄像头、路由器、服务器、Raspberry Pis、交通信号灯、销售点系统、工业控制系统等等。

这个Web工具通过随机迭代扫描每一个可能的IP地址(不管它是否上线或正被使用),并且试图提取在不同端口的服务banners。这通常用来表示正在运行服务的元数据,比如服务名称、类型、版本号。

为什么要用Tor安装SSH

任何连接互联网的设备都不可避免的被Shodn或其他扫描引擎(如Censys之类的)所扫描。黑客们用这些数据库去定位那些过时的、易被攻击的服务器。但即使是经常更新服务器并遵循最佳安全实践的系统管理员也会受到攻击。 libSSH身份验证绕过漏洞就是一个很好的例子。

libSSH漏洞能让黑客不先进行身份验证就连接到SSH服务器。就算是最完整的最新服务仍然容易受到这种攻击,并使许多服务器和网站面临风险。更重要的是,全面更新补丁的系统仍然会暴露在尚未披露的漏洞中。Blackhat有时会在private communities中出售漏洞。现在还不知道有多少未公开的OpenSSH的exploits存在。

Tor onion services能够帮助减少设备暴露在公网上。就像onion网站不能通过标准网络浏览器访问一样,SSH services能配置为允只许通过Tor访问。它能让像Shodan之类的搜索引擎完全无法访问服务,也让黑客更难找到。

第一步:安装Tor

我们需要做的第一件事就是在VPS和客户端计算机上都安装上Tor。客户端可以是Debian, Ubuntu或者 Kali系统的变种。macos和windows10用户可以查看正式的tor项目文档,以便正确安装Tor。对于大多数读者来说,SSH server很可能是Debian VPS。但是,你也可以在Ubuntu桌面或Raspberry Pi上进行设置,适用于那些希望在家中计算机远程访问的用户。

Tor在很多Linux存储库中都是存在的。在大多数情况下,安装包不能得到可靠的维护或更新,这意味着会缺少关键、稳定的安全更新。因此,Tor软件应始终直接从源头(即torproject.org)获取。

登录到您的SSH服务器,并使用下面的echo命令将Tor项目的存储库添加到您的合适的存储库列表中,该命令在Debian中有效。

~$ echo -e "deb https://deb.torproject.org/torproject.org $(lsb_release -sc) main deb-src https://deb.torproject.org/torproject.org $(lsb_release -sc) main" > /etc/apt/sources.list.d/tor.list

如果你使用Kali Linux,请用下面的指令代替。

~$ echo -e "deb https://deb.torproject.org/torproject.org stretch main deb-src https://deb.torproject.org/torproject.org stretch main" > /etc/apt/sources.list.d/tor.list

然后,下载Tor Project’s package signing key并用下面的指令将其导入到您的APT keyring中。

~$ wget -O- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | sudo apt-key add - --2019-03-05 06:29:13-- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc Resolving deb.torproject.org (deb.torproject.org)... 82.195.75.101, 2001:41b8:202:deb:213:21ff:fe20:1426 Connecting to deb.torproject.org (deb.torproject.org)|82.195.75.101|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 19665 (19K) [text/plain] Saving to: 'STDOUT' - 100%[================================>] 19.20K 54.8KB/s in 0.4s 2019-03-05 06:29:16 (54.8 KB/s) - written to stdout [19665/19665]

当signing key被添加到您的keying时,您将看到“OK”输出。接下来,使用下面的apt-get命令更新。

~$ apt-get update Get:2 https://deb.torproject.org/torproject.org stretch InRelease [4,965 B] Get:4 https://deb.torproject.org/torproject.org stretch/main Sources [1,169 B] Get:5 https://deb.torproject.org/torproject.org stretch/main amd64 Packages [2,400 B] Fetched 8,534 B in 8s (1,091 B/s) 

使用下面的apt-get指令安装Tor,完成!

~$ apt-get install tor deb.torproject.org-keyring torsocks Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: mixmaster torbrowser-launcher socat tor-arm apparmor-utils obfs4proxy The following NEW packages will be installed: deb.torproject.org-keyring The following packages will be upgraded: tor

运行SSH server的客户和VPS都应该安装Tor.请确保在这两个系统中都遵循上面的步骤。

第二步:在服务器上创建Onion Service

Tor进程可能在安装后立即执行,因此,以root(sudo)方式停止进程。这可以使用systemctl命令完成。

~$ sudo systemctl stop tor

然后,用一个文本编辑器去打开 /etc/tor/torrc文件。这是Tor用来修改其行为和创建onion services的配置文件。

~$ sudo nano /etc/tor/torrc

这个文件里有巨量的信息,其中的大多数和这项协议并没有关系。向下滚动一点到“此部分仅用于位置隐藏服务”部分。在Debian 和 Kali Linux中,其显示如下:

############### This section is just for location-hidden services ### ## Once you have configured a hidden service, you can look at the ## contents of the file ".../hidden_service/hostname" for the address ## to tell people. ## ## HiddenServicePort x y:z says to redirect requests on port x to the ## address y:z. #HiddenServiceDir /var/lib/tor/hidden_service/ #HiddenServicePort 80 127.0.0.1:80 #HiddenServiceDir /var/lib/tor/other_hidden_service/ #HiddenServicePort 80 127.0.0.1:80 #HiddenServicePort 22 127.0.0.1:22删除 (#) “HiddenServiceDir” and “HiddenServicePort” 选项, 如:############### This section is just for location-hidden services ### ## Once you have configured a hidden service, you can look at the ## contents of the file ".../hidden_service/hostname" for the address ## to tell people. ## ## HiddenServicePort x y:z says to redirect requests on port x to the ## address y:z. #HiddenServiceDir /var/lib/tor/hidden_service/ #HiddenServicePort 80 127.0.0.1:80 HiddenServiceDir /var/lib/tor/other_hidden_service/ #HiddenServicePort 80 127.0.0.1:80 HiddenServicePort 22 127.0.0.1:22

保存并退出文本编辑器。然后,用下面的指令重启tor

~$ sudo systemctl restart tor

在/var/lib/tor/other_hidden_service/目录中的“hostname”文件将保存新的洋葱地址。使用cat读取文件。注意这个洋葱地址,下一步需要它。

~$ cat /var/lib/tor/other_hidden_service/hostname pkgsxmtmdrlxp7l3gfqysi3ceaochd4vnv7eax2fuyridmcz7ucvluad.onion

第三步: 验证the Onion Service是否有效(可选)

在运行进程之前,最好先确定新的洋葱地址可用于访问SSH服务。我们可以使用torsocks来快速验证,它是一个shell包装器,可配合命令行应用程序进行Tor网络访问(如curl、wget或nmap)。

接下来的torsocks和curl 命令将会查询新的onion service.请确保附加上SSH端口号(:22),否则curl将默认查询端口80并失败。成功的查询将返回ssh版本的标题,如下所示。

~$ torsocks curl http://pkgsxmtmdrlxp7l3gfqysi3ceaochd4vnv7eax2fuyridmcz7ucvluad.onion:22 SSH-2.0-OpenSSH_7.4p1 Debian-10+deb9u5

第四步:将SSH服务私有化

默认情况下,大多数ssh服务都在每个ipv4接口上监听。虽然不是所有Linux发行版都是这样,但Ubuntu 和 Debian这样的流行Linux系统正是如此。这通常在/etc/ssh/sshd_config文件中表示为“0.0.0.0”, ssh在上述文件中存储了所有的服务配置。

通过这种方式配置的ssh服务可以从世界上任何一台计算机访问服务器。这对于那些需要从不同设备和网络进行网站管理的网站管理员来说是很方便的。

首先,让我们来看看在后台运行的SSH服务。使用ss(一种调查套接字的工具)来显示TCP(-t)连接的进程(-p)监听(-l)。

~$ ss -plt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:ssh *:* users:(("sshd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值