検索
ホームページphp教程php手册Pam_Abl を使用して SSH をブルート フォース攻撃から保護する

几乎所有的Unix和Linux服务器上都运行着SSH服务器,它使得管理员能够安全地远程访问服务器。然而不幸的是,最近针对SSH的服务的攻击非常常见。本文将讲述如何利用SSH即插授权模块(PAM)的pam_abl插件来保护运行着SSH服务的机器不被暴力攻击。

你自己可以下载并编译pam_abl模块,也可以下载并安装一个二进制的存档。如果想要编译该模块,你可以下载该源代码并搜集关于如何在pam_abl主页上编译它的信息。如果想要在Ubuntu Dapper或者Edgy服务器和PC上配置pam_abl,你可以把一个Roman Balitsky的定制存档加载到/etc/apt/sources.list文件:

<ccid_code>deb http://ubuntu.tolero.org/ dapper main (for Dapper)deb http://ubuntu.tolero.org/ edgy main (for Edgy)</ccid_code>

添加了安装源之后,更新列表,安装pam_abl,然后重启SSH服务器:

<ccid_code>sudo apt-get updatesudo apt-get install libpam-ablsudo /etc/init.d/ssh restart</ccid_code>

接下来,你可以在/etc/security/pam_abl.conf文件中配置pam_abl:

<ccid_code>#/etc/security/pam_abl.confhost_db=/var/lib/abl/hosts.dbhost_purge=2dhost_rule=*:3/1h,30/1duser_db=/var/lib/abl/users.dbuser_purge=2duser_rule=!root:3/1h,30/1d</ccid_code>

第二行和第五行显示了被封用户和主机的列表的存放位置。第三和第六行设置了封禁的刷新时间;本例中,系统将在2天内刷新封主机和封用户的规则。第四和第七行分别是主机和用户规则,我们来详细分析一下。

文件的配置方法如下:

<ccid_code>host/user_rule=<host>:<number of tries>/<ban time>,<number of tries>/<ban time></ban></number></ban></number></host></ccid_code>

因此第四行表示的意思是封禁最近一小时输入错误认证3次以上的所有主机,或者在最近一天内尝试的次数超过30次的所有主机。

第七行的规则表示除了用户根目录(“!root”指向的)的用户以外,封禁在1小时内三次输入错误的密码或者一天内错误尝试超过30次的所有用户。

还可以通过定义来保护选中的用户。假设你需要保护anze,dasa,kimzet和madison这几个用户,配置方法如下:

<ccid_code>anze|dasa|kimzet|madison:20/1h</ccid_code>

本句的意思是如果在1小时内这四个用户登录失败次数达到20次就将被封禁。

更多选项和触发设置请参考pam_abl说明主页。

测试

如果想要测试你的设置,你可以在目标上打开一个终端,察看/var/log/auth.log文件,尝试3次用错误的密码登录服务器,看看pam_abl插件是否封禁你。如果被封了,以madison用户为例,登录文件如下:

<ccid_code>pam_abl[6248]: Blocking access from sataras.example.com to service ssh, user madison</ccid_code>

这表示目标主机上madison用户被封禁2天。

你可以用如下pam_abl语句随时查看被封禁的用户和主机:

<ccid_code>~$ sudo pam_ablFailed users:madison (3)Blocking users [!root]Failed hosts:sataras.example.com (3)Blocking users [*]</ccid_code>

結論

SSH リスニング ポートの変更や iptables や TCP ラッパーによる権限の定義など、さまざまな方法でマシンをハッカーから保護できます。 SSH サービスなどに接続されているホスト。 SSH サーバーをブルート フォース攻撃から保護するには、pam_abl モジュールを使用します。ただし、このモジュールを設定するときは、ハッカーがサーバーからロックアウトしないように注意する必要があります。



声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境