自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

看我如何巧妙配置兩款安全工具防范蠻力攻擊

譯文
安全 黑客攻防 數(shù)據(jù)安全
蠻力攻擊是應(yīng)用程序采用的反復(fù)嘗試方法,以破解你的加密數(shù)據(jù)。加密數(shù)據(jù)可能是任何密碼或密鑰。簡(jiǎn)單來(lái)說(shuō),蠻力攻擊應(yīng)用程序會(huì)嘗試所有可能的密碼或密鑰組合,反復(fù)嘗試,直到找到正確的密碼或密鑰為止。這就需要一段時(shí)間,具體取決于密碼的復(fù)雜性。

蠻力攻擊簡(jiǎn)介

我們都知道這句流行語(yǔ):“預(yù)防勝過(guò)治療。”如果你是個(gè)Linux系統(tǒng)管理員,可能知道“蠻力攻擊應(yīng)用程序”如何在你的本地或遠(yuǎn)程服務(wù)器引發(fā)問(wèn)題。設(shè)想一下:如果你的服務(wù)器遭到了身份未知的攻擊者的攻擊,服務(wù)器上的數(shù)據(jù)就會(huì)落到壞人手里。這肯定會(huì)讓你和貴公司陷入從未想過(guò)的大麻煩。蠻力攻擊是應(yīng)用程序采用的反復(fù)嘗試方法,以破解你的加密數(shù)據(jù)。加密數(shù)據(jù)可能是任何密碼或密鑰。簡(jiǎn)單來(lái)說(shuō),蠻力攻擊應(yīng)用程序會(huì)嘗試所有可能的密碼或密鑰組合,反復(fù)嘗試,直到找到正確的密碼或密鑰為止。這就需要一段時(shí)間,具體取決于密碼的復(fù)雜性。如果要花過(guò)長(zhǎng)的時(shí)間才能找到密碼,那么可以說(shuō)你的密碼很安全、很強(qiáng)壯。

現(xiàn)在可以使用一些巧妙的工具來(lái)阻止或預(yù)防蠻力攻擊。今天,我們就來(lái)探討下列工具。

1. SSHGuard ;
2. Fail2Ban.

提醒一下:不要將這兩個(gè)工具都安裝在同一個(gè)系統(tǒng)上。你可能無(wú)法獲得正確的結(jié)果。

首先,讓我們看一下SSHGuard,以及如何安裝和配置它,以預(yù)防蠻力攻擊。

1. SSHGuard

SSHGuard(http://www.sshguard.net)是一種快速、輕便的監(jiān)控工具,用C語(yǔ)言編寫而成。它可以使用日志活動(dòng),監(jiān)控服務(wù)器,保護(hù)服務(wù)器遠(yuǎn)離蠻力攻擊。要是有人不斷地試圖通過(guò)SSH訪問(wèn)你的服務(wù)器,多次(可能四次)嘗試訪問(wèn)失敗,SSHGuard就會(huì)將對(duì)方的IP地址放入到iptables,在一段時(shí)間內(nèi)阻止他/她訪問(wèn)。之后,它會(huì)在一段時(shí)間后自動(dòng)解鎖。它幾乎能保護(hù)所有的服務(wù),比如sendmail、exim、dovecot、vsftpd、proftpd及許多服務(wù),而不光光保護(hù)SSH。

安裝SSHGuard

在Ubuntu/Debian上,SSHGuard就在默認(rèn)的軟件庫(kù)中。

于是,我們可以用下列命令來(lái)輕松安裝它:

sudo apt-get install sshguard

在CentOS/RHEL 6.x上:

先下載并添加FlexBox軟件庫(kù),如下所示。

wget http://sourceforge.net/projects/flexbox/files/flexbox-release-1-1.noarch.rpm

使用下列命令更新軟件庫(kù)列表:

yum repolist

最后,使用下列命令安裝sshguard:

yum install sshguard

至于其他發(fā)行版,從官方網(wǎng)站(http://www.sshguard.net/download/)下載各自的二進(jìn)制文件,并自行安裝。

或者,你也可以從這里(http://pkgs.org/download/sshguard)來(lái)下載。

用Iptables/Netfilter配置SSHGuard

SSHGuard沒(méi)有配置文件。你要做的就是在iptables中為SSHGuard創(chuàng)建新的鏈,以插入阻止訪問(wèn)的規(guī)則。

為了支持IPv4,在擁有根權(quán)限的情況下運(yùn)行下列命令:

iptables -N sshguard

為了支持IPv6:

ip6tables -N sshguard

現(xiàn)在更新INPUT鏈,將流量傳輸?shù)絪shguard。指定--dport選項(xiàng),使用sshguard保護(hù)服務(wù)的所有端口。如果你想防止攻擊者將任何流量傳輸?shù)街鳈C(jī),就完全刪除這個(gè)選項(xiàng)。

阻止來(lái)自攻擊者的所有流量

為了支持IPv4:

iptables -A INPUT -j sshguard

為了支持IPv6:

iptables -A INPUT -j sshguard

阻止來(lái)自攻擊者的特定服務(wù),比如SSH、FTP、POP或IMAP

為了支持IPv4:

iptables -A INPUT -m multiport -p tcp --destination-ports 21,22,110,143 -j sshguard

為了支持IPv6:

ip6tables -A INPUT -m multiport -p tcp --destination-ports 21,22,110,143-j sshguard

最后,保存iptables規(guī)則。

service iptables save

核實(shí)你在鏈中的較高層沒(méi)有傳輸所有ssh流量的default allow(默認(rèn)允許)規(guī)則。核實(shí)你在防火墻中沒(méi)有阻止所有ssh流量的default deny(默認(rèn)拒絕)規(guī)則。不論哪種情況,假設(shè)你已經(jīng)擁有調(diào)整防火墻設(shè)置的技能。

下面是一個(gè)合理的示例規(guī)則集:

iptables -N sshguard

阻止sshguard表明是不良流量的任何流量:

iptables -A INPUT -j sshguard

啟用ssh、dns、http和https:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

阻止之外的所有服務(wù):

iptables -P INPUT DROP

不用Iptables/Netfilter,配置SSHGuard

如果你不用iptables,下列命令可以創(chuàng)建并保存iptables配置;除了讓sshguard可以正常運(yùn)行外,該配置絕對(duì)什么都不做:

iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -N sshguard
iptables -A INPUT -j sshguard

最后,保存iptables配置:

service iptables save

就是這樣?,F(xiàn)在你已安裝并配置了SSHGuard,可以保護(hù)你的ssh、ftp及其他服務(wù)遠(yuǎn)離蠻力攻擊者。#p#

2. Fail2Ban

Fail2ban(http://www.fail2ban.org/wiki/index.php/Main_Page)是一種開源入侵預(yù)防系統(tǒng),可以用來(lái)預(yù)防蠻力攻擊及其他可疑的惡意攻擊。它可以掃描日志文件(比如/var/log/apache/error_log),禁止表明存在可疑跡象(比如密碼輸錯(cuò)次數(shù)過(guò)多和尋找安全漏洞等)的IP地址。

一般來(lái)說(shuō),F(xiàn)ail2Ban之后被用來(lái)更新防火墻規(guī)則,阻止IP地址在指定的一段時(shí)間內(nèi)訪問(wèn),不過(guò)還可以配置任何隨意性的其他操作(比如發(fā)送電子郵件或彈出CD-ROM托架)。Fail2Ban在默認(rèn)情況下隨帶預(yù)先配置的過(guò)濾器,可用于眾多服務(wù)(Apache、curier和SSH等)。

安裝Fail2Ban

以根用戶身份登錄,輸入下列命令,安裝Fail2Ban:

在Ubuntu/Debian上:

apt-get install fail2ban

在CentOS/RHEL上:

先添加EPEL軟件庫(kù)。

yum install epel-release
yum repolist

然后,使用下列命令安裝fail2ban:

yum install fail2ban

啟用并啟動(dòng)fail2ban服務(wù)。

service fail2ban start
chkconfig fail2ban on

或者

systemctl enable fail2ban
systemctl start fail2ban

這樣就完事了。

備份Fail2Ban主配置文件:

所有配置文件都位于/etc/fail2ban目錄下。主配置文件是/etc/fail2ban/jail.conf。備份主配置文件是個(gè)好主意,以免升級(jí)過(guò)程中合并。創(chuàng)建/etc/fail2ban/jail.conf文件的本地副本,如下所示:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

配置Fail2Ban

使用任何編輯工具,打開/etc/fasil2ban/jail.local文件:

vi /etc/fail2ban/jail.local

找到名為[Default]的部分。該部分含有Fail2Ban將遵循的一套基本的規(guī)則。根據(jù)你的需求來(lái)設(shè)置值。

下面是我的設(shè)置:

[DEFAULT]

# "ignoreip"可能是IP地址、CIDR掩碼或DNS主機(jī)

ignoreip = 127.0.0.1/8 192.168.1.200/24
[...]
bantime = 600
[...]
maxretry = 3
# "backend"指定了用來(lái)獲得文件修改之處的后端??捎眠x項(xiàng)有"gamin"、"polling"和"auto"。
# yoh:由于某種原因,隨Debian交付的python-gamin沒(méi)有像預(yù)期的那樣運(yùn)行。
# 這個(gè)問(wèn)題有待完成,于是輪詢是現(xiàn)在的默認(rèn)后端
[...]
backend = auto
#
# 完全用于插入到j(luò)ail.{conf,local}配置文件中的目的地電子郵件地址。
destemail = root@localhost
[...]
#

在這里,

•ignoreip – 將你信任的IP地址列入白名單,防止Fail2Ban阻止。你可以添加空格字符隔開來(lái)的多個(gè)地址。這里,我將IP地址192.168.1.200列入白名單。所以,該IP地址不會(huì)被禁止,即便它發(fā)送了數(shù)量不受限制的失敗登錄嘗試。

•bantime – 如果某主機(jī)被Fail2Ban發(fā)現(xiàn)違規(guī),它被禁止的秒數(shù)。默認(rèn)時(shí)間是600秒(10分鐘)。如果你喜歡,可以延長(zhǎng)這個(gè)時(shí)間值。

•maxretry – 不正確的登錄嘗試次數(shù),之后主機(jī)被Fail2Ban阻止。

服務(wù)配置

默認(rèn)情況下,F(xiàn)ail2Ban含有一套支持各種服務(wù)的預(yù)定義過(guò)濾器。所以你不需要將任何手動(dòng)項(xiàng)輸入到配置文件中。你要做的就是將已啟用的值改成true或false,F(xiàn)ail2Ban就會(huì)自動(dòng)監(jiān)視相應(yīng)的服務(wù)。

下面是jail.local文件中SSH部分的示例輸出:

[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

這里不妨看看每一項(xiàng)的簡(jiǎn)要細(xì)節(jié)。

•enabled-這意味著,ssh服務(wù)保護(hù)功能已開啟。如果你想關(guān)閉,只要設(shè)成false。

•port-SSH服務(wù)端口。

•filter-它指含有規(guī)則的配置文件,F(xiàn)ail2Ban使用這些規(guī)則來(lái)找到匹配。默認(rèn)情況下,它被設(shè)成sshd,指代/etc/fail2ban/filter.d/sshd.conf文件。

•logpath―記錄失敗登錄嘗試的日志文件。

•maxretry-Fail2Ban阻止主機(jī)之前不正確的登錄嘗試次數(shù)。

一旦你更改了配置,就要重啟Fail2Ban服務(wù),以便保存變更。

systemctl restart fail2ban
或者
service fail2ban restart

你可以使用下列命令,核實(shí)Fail2Ban在iptables中添加的規(guī)則:

iptables -L

示例輸出:

Chain INPUT (policy ACCEPT)
target prot opt source destination
f2b-sshd tcp -- anywhere anywhere multiport dports ssh
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTA
BLISHED
ACCEPT all -- anywhere anywhere
INPUT_direct all -- anywhere anywhere
INPUT_ZONES_SOURCE all -- anywhere anywhere
INPUT_ZONES all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere
REJECT all -- anywhere anywhere reject-with icmp-hos
t-prohibited
[...]

測(cè)試Fail2Ban

我想試幾次隨機(jī)性的失敗嘗試,從本地客戶機(jī)連接到Fail2Ban服務(wù)器。

然后,我核實(shí)/var/log/fail2ban.log文件中的失敗登錄嘗試:

cat /var/log/fail2ban.log

示例輸出:

2015-07-13 15:38:15,480 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,482 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,483 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,485 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,485 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,487 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,488 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,490 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,491 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,492 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,493 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,495 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:15,496 fail2ban.filter [11792]: INFO [sshd] Found 192.168.1.100
2015-07-13 15:38:16,234 fail2ban.actions [11792]: NOTICE [sshd] Ban 192.168.1.100
或者
iptables -L

看我如何巧妙配置兩款安全工具防范蠻力攻擊

正如你從上述兩段輸出中可以看出,我的本地IP地址192.168.1.100已被Fail2Ban禁止。

注意:在默認(rèn)情況下,被禁止的IP地址在600秒后會(huì)被解禁。

就是這樣。但愿這兩款工具對(duì)你會(huì)有所幫助。

祝你好運(yùn)!

責(zé)任編輯:藍(lán)雨淚 來(lái)源: 51CTO.com
相關(guān)推薦

2019-07-31 11:30:25

MySQL數(shù)據(jù)庫(kù)工具

2015-11-25 14:43:44

2011-10-09 11:00:17

2021-03-13 16:14:58

iOS磁力下載App

2009-08-13 17:40:55

2010-05-26 09:10:44

Windows清理工具

2010-07-12 15:43:35

UML建模工具

2011-08-05 15:19:53

注冊(cè)表注冊(cè)表編輯器RegCleane

2016-11-09 08:49:39

Linux桌面錄制

2014-08-19 10:14:47

App應(yīng)用原型設(shè)計(jì)工具

2010-06-28 09:53:43

UML建模工具Rose

2009-10-21 14:44:11

2022-04-25 08:18:18

Linux 服務(wù)器SSH 暴力攻擊

2012-10-24 14:35:15

2015-05-08 12:17:53

2019-12-20 09:11:11

智恒科技

2020-02-17 16:52:06

誤植攻擊網(wǎng)絡(luò)攻擊網(wǎng)絡(luò)安全

2010-09-16 15:39:18

2018-07-16 08:36:13

2020-11-09 16:20:59

Kubernetes工具Linux
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)