最不常见的托管类型:家用计算机,Raspberry Pi和其他人的服务器



Raspberry Pi Web服务器您



无需从托管提供商处购买帐户即可公开您的内容。有许多其他选择,包括免费的。Github Pages开始,有免费的文本,图像和文件托管网站



而且,如果我们希望完全控制该站点,则可以在家用计算机,Raspberry Pi单板甚至移动电话上托管Web服务器。最主要的是设备始终在线。



家用计算机上的Web服务器





老式服务器中的家庭服务器,



始终可以使用一台旧计算机:它可以用作torrent客户端和媒体服务器(通过Plex将视频分发到所有电视,笔记本电脑和智能手机),文件存储,备份存档以及网络服务器...再简单不过了。



当然,对于标准软件堆栈,最好安装Linux,但是Windows没错。Internet上至少有29.2%的服务器在Windows下运行,因此,如果计算机最初是安装的,则无需更改操作系统,特别是如果您习惯使用ASP.NET和C等工具。



为简单起见,您可以立即安装整个程序集。选择一个AMP堆栈(Apache,MySQL / MariaDB,Perl / PHP / Python)适用于任何平台:Windows,macOS,Linux,BSD。例如,用于WindowsWampServer套件



WampServer是一个Windows Web开发平台,用于使用Apache2服务器,PHP脚本解释器和MySQL数据库的动态Web应用程序。它还包括一个用于简单数据库处理的PHPMyAdmin Web应用程序。



我们安装软件,从提供商处获取外部IP地址,在配置中指定域名,在路由器中打开端口80、3306(MySQL),21(FTP),22(SSH)或将其更改为非标准端口,以减少来自爬虫程序机器人的垃圾流量-一切都会正常。



有关更多信息,请参见文章“床头托管:家庭托管的令人毛骨悚然的做法”可以在您自己的主机上部署的大量软件



Raspberry Pi托管



算法很明确:您需要在Raspberry Pi上设置一个Web服务器并将其连接到网络。这不是某种异国情调,而是“树莓”的标准用法。官方网站甚至还提供了有关安装ApacheNginx的说明



或者,可以直接在路由器上(使用OpenWRT固件)提升Web服务器



设置Nginx之后http://localhost/,例如,在网络上设备的Pi或IP地址的地址上检查站点的可用性http://192.168.1.10。您可以使用命令查找内部IP地址hostname -I







网页默认情况下存储在目录中/var/www/html。我们去那里放置任何东西,替换标准页面。默认页面地址写入/etc/nginx/sites-available



除了Nginx之外,您还可以安装PHP以获得功能更强大的网站:



sudo apt install php-fpm


接下来,/etc/nginx/sites-available我们找到该行index index.html index.htm;并将其添加到index.php配置文件的中间,并取消注释以下各行:



location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}


完成此过程后,我们将重新加载配置文件。



通常,Raspberry Pi可用于各种有用的DIY项目。例如,制作挂历,将USB打印机变成无线打印机,设置自己的VPN服务器等。



为了进行实验,即使是Raspberry Pi官方网站(这是一个大型且受访问的网站),也曾经托管在Raspberry Pi 3微型计算机上,我不得不构建一个由八块组成的集群。





由四个Raspberry Pi Model B和一个Raspberry Pi Model B +组成的集群,系统的总成本为183.34美元(来自另一个项目)。



在实验当天,该集群为数千万的访客提供服务。



单板计算机上的家庭Web服务器消耗的功率很少,而阳台上只有一个太阳能电池板就足以运行它。2018年9月,《低科技杂志》(Low-tech Magazine)的发烧友在Olimex Olinuxino A20 Lime 2单板设备上使用这种Web服务器进行了实验,到目前为止,该设备已经连续工作了大约两年(正常运行时间约为95%)。具有充电控制器的太阳能服务器的第一个原型 根据开发人员的计算,每位唯一身份访问者的能耗为0.021 Wh。简化的Web服务器电源图。它没有12至5伏的电压转换器和安培小时表



















区块链和分布式托管



已经在区块链的基础上创建了许多实验项目,包括加密货币,智能合约,文档身份验证,电子投票等,还包括分布式托管。以太坊开发者Viktor Tron的Swarm就是此类项目中的第一个



欢迎来到群.... Bzzz Bzzzz Bzzzz
\ /
\ o ^ o /
\()/
____________(%%%%%%%)____________
(/ /)%%%%%%%(\ \)
(___ / ___ / __ / \ __ \ ___ \ ___)
(//(%%%%%%%%)\ \)
(__ / ___ /(%%%%%%%%)\ ___ \ __)
/()\
/(%%%%%)\
(%%%)


分散托管假定该站点由多个网络参与者同时存储。从理论上讲,这增加了站点对DDoS攻击或政府审查的抵抗力。



Swarm软件已针对所有主要平台发布:Linux,macOS,Windows,Raspberry Pi,Android和iOS。要引发Swarm节点,您必须从官方页面下载相应的二进制文件或在Docker容器中引发Swarm。







但是,自2020年2月以来,尚未发布Swarm节点的新版本,因此该网络现在受到质疑。开发人员编写,他们已经转移到开发新客户端是基于更先进的网络层(libp2p)。他们还发现,从头开始重写系统比修复错误要容易得多。 Swarm和Bee是一种有趣的实验,它们演示了分布式托管的概念功能。



可以提及另一个P2P项目:基于行星际文件系统的图像托管ipfs.pics。几年来它一直运转良好。文件存储在用户的P2P网络上。当图片上传到网络时,会为其计算一个46字节的哈希,作为唯一的文件标识符。哈希与文件名匹配。要下载文件,您只需要知道其哈希即可。例如:



http://ipfs.pics/ipfs/QmcT99xWRNDAYunp7Zr8wGiwMKSgVfDpfbXw9hBtLCM4Mm


IPFS分布式网络上的文件几乎无法删除或锁定。服务器源代码在Github发布



为了防止垃圾,网络仅将有人请求存储的文件分发给新的对等方。



通过指定GridFS文件系统,可以在Tornado框架上组织另一个P2P图像托管在Habré上发布了有关如何使用30行代码提供这种服务的说明



在其他人的服务器上“托管”



如果有人敢于打开计算机上的端口并查看日志,他们将立即了解他们所处的敌对环境。多次尝试在所有标准端口上进行扫描,要求提供已安装的软件。如果不采取保护措施,则几乎可以在任何服务器上找到该软件中的漏洞,并以管理员权限访问该软件。



然后,攻击者本人会选择处理掉落在他手中的资源:为lulz进行破坏,安装加密货币矿工,添加到僵尸网络中进行DDoS或放置文件以进行分发。这称为“在其他人的服务器上托管”-黑客使用的非法选项。



例如,最大的现代僵尸网络Emotet通过受感染站点的网络传播恶意负载,该站点由名为Ivan的僵尸网络管理员通过其安装的Web Shell控制。



其他几个僵尸网络也以相同的方式工作。其中包括家用计算机,Linux Web服务器,智能手机,路由器和其他IoT设备(例如Android智能电视)



在僵尸网络上的设备上,攻击者可以将其文件放置在某种分布式主机上。这是一个相当可靠的存储,因为许多用户多年都没有更新软件,不使用防火墙,也不监视流量。






通常,自我托管具有许多优势。地下室或阳台上的服务器完全在您的控制之下。您可以自行决定安装任何硬件和软件。没有人需要每月支付托管费(相反,您可以自己提供此类服务)。主要优势在于,在这种情况下,学习新知识总是很有趣-掌握工程师和开发人员的一些技能。



如果您需要像瑞士手表一样可靠的服务器,欢迎使用VDSina只有现代化的品牌设备,一些俄罗斯和荷兰最好的数据中心,开箱即用的DDoS保护,便捷的专有服务器控制面板以及许多其他好处。快点订购!






All Articles