本文目录一览:
- 1、电视剧中黑客猛敲键盘,屏幕满是看不懂的代码,这是真的还是影视效果?
- 2、如果linux被入侵了,黑客会做什么
- 3、如何使用ssh进行安全的连接
- 4、如何使用 DenyHosts 来阻止 SSH暴力攻击
- 5、Linux服务器SSH防止被黑客攻击,保护root账号
电视剧中黑客猛敲键盘,屏幕满是看不懂的代码,这是真的还是影视效果?
首先需要确定的一点,就是,这是真实情况,并不是电影特效!
其实,关于黑客题材的电影,这几年非常的多,黑客们在展现高超程序员技能的同时,也向我们展示了黑客们不同于普通人的日常!
在黑客题材的电影中,首先黑客们是不用鼠标的,直接用键盘操作电脑,其实在现实中,有很多程序员就是不用鼠标的!
再者,就是黑客们飞快地敲打键盘,一层层破解要侵入对手的电脑防火墙,并且因为做这个事情的时候,往往是在特殊的情况下,时间紧张,环境危险,所以黑客们都是快速的敲击电脑,用最快的速度入侵别人的系统,完事之后消除入侵的痕迹,急匆匆离开!
电影中的黑客可谓是无所不能,连联邦调查局、中情局都能侵入,公安系统更不用说,就像家常便饭一样简单。还有在影视作品中黑客总是能够在一两次之内顺利的猜中密码,进入保密计算机,他们能在2秒内启动计算机,3秒内将所需要的保密文件传输到指定地方。
从《黑客帝国》系列电影开始,众多黑客形象被神化,更有甚者能直接触摸服务器,用手指拨弄大数据信息。应该没有人会天真地认为那是真实存在的吧,黑客也是人类,他们用ssh/powershell远程连接服务器,是指令型可执行程序,再牛逼的黑客也要坐在电脑前使用键盘。所以我们在电影中看到黑客那些炫酷的技能都要归功于特效场面。
其实早期的电脑界面就是黑黑的亮着一行行的命令,因为国外的电脑发展比中国要早。国人电脑普及的时候,windows系统早就充斥着各种盗版了吧,使用linux和dos系统那种感觉在国人印象中还真的不多见。
黑客会在事先根据入侵目标的信息,准备好各种应付不同情况的入侵工具,不会事到临头了再编写程序。
即使是用命令行模式,那也是在根据返回的信息,输入指令,指令也不会太长,更何况还有批处理,不会出现噼里啪啦打上很长一段的情况。
关于指令,要说明一下。系统自带的指令,DOS时代称为内部指令。而各种批处理文件、程序、游戏的主程序的名字,则叫外部指令。所以,运行程序,一样也可以叫输入指令,只不过是输入外部指令。黑客技术,不体现在手速上。
黑客技术本身很难很复杂
这个世界上的确存在很多很厉害的黑客。包括曾经的传说级人物凯文·米特尼克这类的人物,但是你会发现这些黑客都是存在于上个世纪那个时候电脑或者网络刚新起的阶段。
现在恨少在出现这样厉害的人物,不是现在计算机高手不在高,而是那个年代的计算机软件系统和安防系统本身就很脆弱,还有就是有些黑客完全是人物的以讹传讹的故意将其能力放大,因为不将这些人物的传奇事情说得很厉害的话,那些暗访设备和各种安全应用软件如何才能卖得出去。
这个世界上的确存在很多很厉害的黑客。包括曾经的传说级人物凯文·米特尼克这类的人物,但是你会发现这些黑客都是存在于上个世纪那个时候电脑或者网络刚新起的阶段,现在恨少在出现这样厉害的人物。
不是现在计算机高手不在高,而是那个年代的计算机软件系统和安防系统本身就很脆弱,还有就是有些黑客完全是人物的以讹传讹的故意将其能力放大,因为不将这些人物的传奇事情说得很厉害的话,那些暗访设备和各种安全应用软件如何才能卖得出去。
如果linux被入侵了,黑客会做什么
留后门,然后集群继续爆破ssh服务器
而且不需要root用户,只需要一个可以登录tty的用户即可。
这些不是黑客做的,而是工具自动实现的,全自动
如何使用ssh进行安全的连接
MindTerm、socat 还有 VNC,哦,天哪!虽然能够远程工作一直都是系统程序员和管理员最喜欢的 Linux 优点之一,但设置远程访问却不是一件简单的事情。 选择合适的远程服务 紧接着的第二个话题便是本篇专栏文章的主题:安全性。 您的服务器在物理上应当是被隔离的,应当禁用所有不必要的联网访问,并且只能通过 ssh 或更好的方式访问服务器。特别值得一提的是,尽可能少使用实时的 telnet 、 ftp 、 rlogin 和 rsh 以及相关服务;它们实在是太危险了。 首先,您当然应该尝试一番。程序员和管理员本可以在正常的上班时间里在自己比较安静的工作场所工作,但是他们却喜欢强迫自己突击完成这些工作,这可是出了名的。您可别让自己成为这种行为的牺牲品!确信您进行的连接具有合法的业务目的,并非违规行为。 但是,如果您过去有这些组织问题,那么连接问题的答案便是使用 ssh。即使您原则上更依赖于虚拟专用网(VPN)而非 ssh,我还是认为出现紧急情况时,如若不能使用常规方法,那么设置 ssh 访问会比较谨慎些。VPN 仍然有些难以处理,并且需要依靠特别的硬件配置。如果您是通过客户机的网络(多半是使用普通桌面机器)呼叫主机的,则您可以进行的选择是极其有限的。 ssh 满足需要 好消息是 ssh 在这些限制的夹缝之中通常还能满足需要。即使您外出办事,但在公共接入点(比如网吧),您还是可能有足够的资源使 ssh 工作。 您或许不能依赖于自己的设备。说得严重些,带着任何比手持设备大的设备到处走,是另一个安全性风险;更糟的是,许多地方不准插入外来的硬件。您通常必须使用提供给您的硬件。 但是下载 puTTY、ssh 或 MindTerm 客户机一般都很快。而且我也喜欢那样做。任何具有足够的网络栈、可以连接到您的服务器室的主机,都可能有准许进行下载的 Web 浏览器。使用已经安装好的客户机要小心;对于某些人而言,将客户机替换成经过修改的、能捕获击键信息(或更糟的情况)的客户机实在是太容易了。 另一种方式是构造嵌入了 MindTerm 客户机作为 applet 的 Web 页面,这表面上看起来挺吸引人的。而我的经验告诉自己这种方法没什么用处。大多数地方都禁用 Java、或提供只具有旧的 Java 运行时引擎(JRE)的浏览器,或者采用别的方式来降低 applet 的便利性。如果我要使用 MindTerm,则只想下载和安装该客户机以及兼容的 JRE。对于构造针对最终用户的应用程序,applet 通常是一种好技术。applet 还适合进行只读配置。但是,我发现这种用法非常少。因此,为使自己的工作具有效率,不值得花时间去解决 applet 环境中可能存在的难题。我一直觉得,找到一个兆字节的空闲大容量存储器并在上面安装 ssh 客户机会更加方便。 您坐下一会后就应当安装新的 ssh 客户机并启动它。但是,这可能还不够。某些地方防火墙关闭了大多数端口,或者至少关闭了包括 ssh 的标准端口 22 在内的许多端口。 这里有另一种准备提供帮助的方法。在我的至少一台主机上,我希望让 sshd(ssh 守护程序)在通常被指派给常见因特网服务(比如 ftp、http、smtp 或 pop3)的端口上运行。即使是最严密的防火墙也要打开端口 21、8080、25 和 110 中的一个。将您的一台机器设置为捕获这样的通信,您就可以使它穿过大多数的防火墙。 这听起来是否象是非法闯入者在说话呀?我 不赞成滥用网络。经常有其它公司的雇员 邀请我使用他们的网络,虽然他们也知道,用敏感的方式(比如临时打开端口 22)更改他们的防火墙就公司制度而言是不可行的。我逐渐接受了这种认识:准备采用旁门左道也是当前专业实践的一部分,但我需要确保自己只以一种负责任的方式完成这个工作。 这样就启动了我的工作会话,然后:我下载引用 ssh 客户机,快速安装并启动它们,然后用 SSL 保护的密码往回验证我留在服务器室中运行的某个 sshd。 请注意,我仍然容易受到篡改过的主机的攻击。一个经过充分修改的桌面机器或一个警惕的窥视狂可以在击键信息到达 SSL 库之前将其记入日志。 这种情况的解决方案就是使用一次性密码(OTP)系统。到目前为止,在我看来 OTP 带来的麻烦多于安全性。OTP 给您自己带来的代价和收益肯定至少会略微有所不同。无论如何,回到日常的工作场所可能是更新密码的好时机。 使用标准部件 我希望 服务器诊所每个月都显示工作代码。在本文中,很难添加任何代码。我推荐的配置很简单,在标准的参考资料中都作了充分的记录。例如,要在第二个端口上添加 ssh 服务,只要将如下行:Port 8080 添加到现有的 /etc/ssh/sshd_config,然后重新启动 sshd。另一个方法是使用网络代理程序或端口转发器(比如 netcat 或 socat),将它指回本地主机(localhost)的标准 ssh 端口,这个方法在运行试验和调优日志记录或额外安全性方面很有用。 代理程序这里的上下文中的代理程序是一个小型转换程序,它只是让网络流量通过。如果我在端口 22 上设置了 sshd 服务器,并且希望在端口 110 上设置另一台 sshd 服务器,那么实现这个想法的一个方法是安装网络代理程序。这样的代理程序在端口 110 上用作服务器,接收来自外界的流量。它通过在端口 22 上充当客户机来处理这些分组。基本 sshd 服务器完成所有的实际工作;代理程序的作用只是从一个端口转换到另一个端口(可能在另一台主机上)。 这篇特别的专栏文章的真正价值并不在于深奥的代码,而只是在于传达了一个清晰的概念,您应该以此为目标来启用自己的远程服务。我已经尝试过许多方法。利用这些经验,尤其要了解 不要做什么,至少要了解在您首次设置服务器室时不要做什么:禁止 Telnet,不要让不用的服务一直开着,不用担心 applet(尤其不要担心 applet 签名),以及如若感到不对劲就不要进行远程登录。 另一方面,一定要使用标准部件。我已经尝试过许多聪明的想法,用于调整 ssh 协议或自己的防火墙,以阻止黑帽黑客(指专门利用网络技巧入侵网络进行破坏的人,译者注)。与这些想法所提供的安全性方面的小小增强相比,它们的维护比较困难,因此有些得不偿失。除非我编制一个明确的安全性项目的预算,并具有明确的长期目标,否则最好将时间花在使用 ssh 上,而不是花时间设法改进它。 采用以上步骤,您将拥有一个服务器室,它的安全性要比您只使用标准的 Linux 服务器安装时要好得多。您还能够从全球可以找到几乎所有的同步连接上远程管理它。
如何使用 DenyHosts 来阻止 SSH暴力攻击
Denyhosts是一个Linux系统下阻止暴力破解SSH密码的软件,它的原理与DDoS Deflate类似,可以自动拒绝过多次数尝试SSH登录的IP地址,防止互联网上某些机器常年破解密码的行为,也可以防止黑客对SSH密码进行穷举。
众所周知,暴露在互联网上的计算机是非常危险的。并不要因为网站小,关注的人少或不惹眼就掉以轻心:互联网中的大多数攻击都是没有目的性的,黑客们通过大范围IP端口扫描探测到可能存在漏洞的主机,然后通过自动扫描工具进行穷举破解。笔者的某台服务器在修改SSH 22号端口之前,平均每天接受近百个来自不同IP的连接尝试。而DenyHosts正是这样一款工具。下文将对该工具的安装与使用方法进行介绍。
DenyHosts阻止攻击原理
DenyHosts会自动分析 /var/log/secure 等安全日志文件,当发现异常的连接请求后,会自动将其IP加入到 /etc/hosts.deny 文件中,从而达到阻止此IP继续暴力破解的可能。同时,Denyhosts还能自动在一定时间后对已经屏蔽的IP地址进行解封,非常智能。
官方网站
Denyhosts的官方网站为: (杜绝Putty后门事件,谨记安全软件官网)
安装方法
1、下载DenyHosts源码并解压(目前最新版为2.6)
1 [root@www ~]# wget
2 [root@www ~]# tar zxvf DenyHosts-2.6.tar.gz
3 [root@www ~]# cd DenyHosts-2.6
2、安装部署
1 [root@www DenyHosts-2.6]# yum install python -y
2 [root@www DenyHosts-2.6]# python setup.py install
3、准备好默认的配置文件
1 [root@www DenyHosts-2.6]# cd /usr/share/denyhosts/
2 [root@www denyhosts]# cp denyhosts.cfg-dist denyhosts.cfg
3 [root@www denyhosts]# cp daemon-control-dist daemon-control
4、编辑配置文件denyhosts.cfg
1 [root@www denyhosts]# vi denyhosts.cfg
该配置文件结构比较简单,简要说明主要参数如下:
PURGE_DENY:当一个IP被阻止以后,过多长时间被自动解禁。可选如3m(三分钟)、5h(5小时)、2d(两天)、8w(8周)、1y(一年);
PURGE_THRESHOLD:定义了某一IP最多被解封多少次。即某一IP由于暴力破解SSH密码被阻止/解封达到了PURGE_THRESHOLD次,则会被永久禁止;
BLOCK_SERVICE:需要阻止的服务名;
DENY_THRESHOLD_INVALID:某一无效用户名(不存在的用户)尝试多少次登录后被阻止;
DENY_THRESHOLD_VALID:某一有效用户名尝试多少次登陆后被阻止(比如账号正确但密码错误),root除外;
DENY_THRESHOLD_ROOT:root用户尝试登录多少次后被阻止;
HOSTNAME_LOOKUP:是否尝试解析源IP的域名;
大家可以根据上面的解释,浏览一遍此配置文件,然后根据自己的需要稍微修改即可。
5、启动Denyhosts
1 [root@www denyhosts]# ./daemon-control start
如果需要让DenyHosts每次重启后自动启动,还需要:
6、设置自动启动
设置自动启动可以通过两种方法进行。
第一种是将DenyHosts作为类似apache、mysql一样的服务,这种方法可以通过 /etc/init.d/denyhosts 命令来控制其状态。方法如下:
1 [root@www denyhosts]# cd /etc/init.d
2 [root@www init.d]# ln -s /usr/share/denyhosts/daemon-control denyhosts
3 [root@www init.d]# chkconfig --add denyhosts
4 [root@www init.d]# chkconfig -level 2345 denyhosts on
第二种是将Denyhosts直接加入rc.local中自动启动(类似于Windows中的“启动文件夹”):
1 [root@www denyhosts]# echo '/usr/share/denyhosts/daemon-control start' /etc/rc.local
如果想查看已经被阻止的IP,打开/etc/hosts.deny 文件即可。
Linux服务器SSH防止被黑客攻击,保护root账号
可以禁止root远程登录,然后新建个账户(不常用的账户名),然后用该用户su切换到root。
可以用证书来认证