
サーバーのログに以下のようなものが頻繁に来ます。
Received disconnect:
11: Bye Bye : 98 Time(s)
**Unmatched Entries**
pam_succeed_if(sshd:auth): error retrieving information about user eaguilar
pam_succeed_if(sshd:auth): error retrieving information about user staff
pam_succeed_if(sshd:auth): error retrieving information about user sales
pam_succeed_if(sshd:auth): error retrieving information about user recruit
…
sshは使っていないので問題はないのです。が、あまりに大量のログができてしまうので、一応攻撃を拒否しようと思っているのですが、これらのアクセス元のIPはどうやったらわかるでしょうか?(殆ど外国からの攻撃です。)
IPやホスト名がわかればhostsのdenyに登録してしまおうと思っています。
OSはLinuxのFC5です。
また、何か別のよい方法があればおしえて頂けると幸いです。よろしくお願いします。
No.6ベストアンサー
- 回答日時:
もともと「sshは使っていない」だったのに、「sshは外部に解放していない」とか「友人にだけ使えるようポート22は開いている」とか条件がころころ変わるのでわけがわからなくなっているのですが、
「22/TCPはlocalhost, 192.168.1.0/24, グローバルIP1つだけに開放されている」という条件で話を進めます。
> このような設定の場合もデフォルトではログが残るのでしょうか?
自分の環境はFreeBSD + openssh5.0 (--with-tcp-wrappers) なのでメッセージは違うと思いますが、
sshd[47803]: refused connect from mail.hansoll1.com.gt (200.49.167.66)
のように認証以前にconnectionをはじいたログが残ります。Linuxでも認証前にはじけば「user eaguilar」のような情報を受ける前に切るのですから少なくとも今出ているログからは変化するでしょう。
そもそもFirewallがあるのになぜFirewallで「22/TCPはグローバルIP1つだけに開放」という設定をしないのかが非常に疑問です。(また後付け条件が出てきますか?)
そうすれば、ある場合を除いてはSSHが遮断されるので認証失敗のログすら出ないはずなのですが.........
> たぶん私のマシンの今の状態はこのようになっていると思います。(一つだけのホストに開放していますが…)
このことを何らかの手段で確認していますか?
おそらくhosts.allowの設定が効いておらずどこからでもアクセスできるようになっている気がします。逆に、もしちゃんと効いているのであれば、辞書攻撃を仕掛けているのは「あなたの友人」ということになります。
(その友人のマシンがすでに乗っ取られているのかもしれませんが)
> tcpdumpというファイルはありませんでした。
tcpdumpはパケットダンプをするツールです。Wiresharkでもかまいません。
ログにIPアドレスが出ないのであればキャプチャして確認するのが早いでしょう。
・Firewallで22/TCPを1つのIPアドレスに絞る
・hosts.allowの設定が効いているかを確認する
ことをまずすべきかと思います。
あと、鍵の管理がきちんとできるのであればパスワード認証をできないようにして鍵認証のみを行うようにSSHに設定すれば強度は上がると思います。
この回答への補足
IPの取り方がわかりました。
FC5ではsecureを見ればわかるようです。
ちょっと私自身わからないのが、
pam_succeed_if(sshd:auth): error retrieving information about user eaguilar
というログは、もしかしたらアクセス拒否をすでにしている…ということなんてしょうか?
774dangerさんに説明して頂いた内容で気が付いたのですが、hosts.allowは確実に効いています。dneyも効いています。
実際にsecureのログを見てみると、開いていないポートをかなり無作為にアクセスしているんですね。勿論ポートは開いていないのですべて失敗に終わっています。
となると、774dangerさんのサーバーではき出される
sshd[47803]: refused connect from mail.hansoll1.com.gt (200.49.167.66)
このログと、
私の
pam_succeed_if(sshd:auth): error retrieving information about user eaguilar
は、殆ど同じ…ということにはならないでしょうか?つまり、認証以前に弾いている…ということです。
セキュリティー的に心配というのではないのですが、何せログが多すぎることと、相手のIPがわからない…ということで何かしら手を打とうと考えていたのですが、一応IPの取り方がわかったので、自分でちょっとスクリプトを書いてみようと思います。
**Unmatched Entries**
pam_succeed_if(sshd:auth): error retrieving information about user eaguilar
のログの意味がいまいちわからないのが少しばかり気がかりなのですが、774dangerさんはわかりますでしょうか?
たぶん、これがわかれば、ほぼ解決すると思います。ログの詳しい意味がわかれば…というところまで来た感じです。
話がコロコロ変わってすみません。
しかし、774dangerさんのお陰で沢山のヒントを得ることができました。
やはり今調べてみたら、私のログと774dangerさんが書いてくれたログは同じことを意味していて、認証以前に拒否しているログだそうです。
私のログで調べてみたら日本のサイトでは殆ど何も出てこなくて(このスレッドが検索されました(笑))、英語のサイトで調べてみたら少しばかり出てきて不得意な英語でちょっと読んでみながら、やっとわかったのがこのログの意味です。なんだかいろいろと書いて頂いたことがヒントになりました。
そもそも私が示したログの意味を私自身が勘違いしていたので、とてもわかりにくいことになっていたようです。
※余談ですが、IPから相手を調べてみたところ、やはり中国でした。。。ブルートフォースは中国、韓国、アメリカからが一番多いと聞いておりました。。。

No.7
- 回答日時:
> pam_succeed_if(sshd:auth): error retrieving information about user eaguilar
>というログは、もしかしたらアクセス拒否をすでにしている…ということなんてしょうか?
あはは・・・んなわけねー!
どう見ても外部から辞書攻撃受けてますって。
tcpdump を知らないほどの初心者とは思わなかったので失礼しました。
tcpdump は通信中のパケットを見るツールです。
たとえば eth0 の通信を見る場合は、
tcpdump -n -i eth0
で確認できます。ssh だけを見る場合は
tcpdump -n -i eth0 | grep ssh
です。
No.5
- 回答日時:
sshのアタックは、いろんなIPから来ます(bot?)ので、いちいちリスト化するのは厳しいかと思います。
このURLの方がやっているような対策はいかがでしょうか?
http://search.luky.org/linux-users.a/msg04927.html
何回かアタックに失敗した場合、アクセスを切るというスクリプトのようです。
ありがとうございます。
やはり、IPをとるのは面倒な作業になるんですねぇ。
iptableを使っていないので、AirRock_Fanさんの紹介してくれたシェルスクリプトは私のサーバーに使えないのですが、やはり自分で書かないと駄目な感じですねぇ。。
サーバーなのでアタックを受けるのは当たり前…とのことで私の仲間もこれらのことは(セキュリティーをちゃんとしておいて…)後は放っておいているようです。なんとかならないものかな…と考えていましたが、自分で書かないと駄目かもしれないですね。
ありがとうございます。

No.4
- 回答日時:
>そのIPを記録しているログなどはないのしょうか?
tcpdump ではどうでしょうか。
No.3
- 回答日時:
> sshは外部に解放していないという意味です。
Internetとの間にFirewall等があってそこで22/TCPを閉めているということですか?
実は閉めたつもりになっていて外に大開放してるとか........
とりあえずNo.2のかたも書かれているようにlocalhostと使っているプライベートアドレスのみをhosts.allowに登録して様子を見ればいいと思います。
もし外部からなら認証以前に接続が切られるはずでそのログが残りますし、内部からの攻撃であれば状況は変わらないはずですから。
もし外部からのアクセスならFirewallのポリシーを見直したほうがいいと思います。
この回答への補足
なるほど!詳しい説明ありがとうございます。
ちょっと詳しい説明が足りない感じでした。現在Internetとの間にはFirewallがあります。外部にsshを解放するのはちょっと感覚的にイヤなのですが、一緒にサーバーを使っている友人にだけ使えるように設定しています。ですのでポート22は開いている状態です。
hostの設定では、allowにはLAN内のIP(127.0.0.1と192.168.1)と友人の固定IPを一つを設定し、denyの方では、ALLを設定しています。
この状態ですと、その他の人が入るということはないと思うのですが、このような設定の場合もデフォルトではログが残るのでしょうか?
度々攻撃を受けますが、(たぶん、ですが…)どこのサーバーでもこの程度の攻撃は受けていると思います。勿論破られたり乗っ取られたり…ということは今までないのですが…。
質問の趣旨なのですが、
1. 攻撃先のIPを取得したい。
2. それ以外で皆様のやっているセキュリティー対策はどんな感じなのかアドバイスを頂きたい。
ということです。
>とりあえずNo.2のかたも書かれているようにlocalhostと使っているプライベートアドレスのみをhosts.allowに登録して様子を見ればいいと思います。
もし外部からなら認証以前に接続が切られるはずでそのログが残りますし、内部からの攻撃であれば状況は変わらないはずですから。
たぶん私のマシンの今の状態はこのようになっていると思います。(一つだけのホストに開放していますが…)
一つだけのホストに開放している状態なので、「認証以前に切られない」ということになっているんでしょうか?
セキュリティー的には、問題ないと思うのですが、何せ相手がわからないというのがちょっとイヤな感じで、sshが破られることはないと思うのですが、できれば相手のIPを知りたいというところです。
どこかにそのIPを記録しているログなどはないのしょうか?(まだ立ち上げたばかりのサーバーなので、ログ関係はデフォルトのままです。)
よろしくお願いします。

No.2
- 回答日時:
>sshは外部に解放していないという意味です。
???内部から辞書攻撃を受けているんですかねぇ。
それはさておき、hosts.allow で内部IPだけ許可してはどうかと思います。
http://vine-linux.ddo.jp/linux/ssh/allow.php
あまり頻繁にあるようでしたら、iptstate でリアルタイムにアクセス元を確認できますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- オープンソース AWSドメイン名でApacheテスト・ページを表示させる方法を教えて下さい。 1 2023/04/26 15:59
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- その他(SNS・コミュニケーションサービス) 爆サイやっていたら、下のような文字が出ました! これは何なのでしょうか? nginx error! 1 2023/06/09 12:27
- PHP 【PHP/MySQL】コード上で生成したクエリを基に集計クエリを作りたい 1 2022/07/28 15:06
- 英語 If you are really to succeed in anything, you must 1 2022/05/01 10:42
- その他(プログラミング・Web制作) このpythonコードの意味教えて下さい! 2 2022/08/26 00:52
- MySQL データベースの複製の仕方(mysql) 2 2023/05/30 18:24
- ドライブ・ストレージ SSHDの再利用 1 2022/04/13 00:43
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- 英語 カンマは不要? 3 2023/05/31 16:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SSH通信で秘密鍵の読み込みが失敗
-
IIS仮想ディレクトリの設定につ...
-
SSHに繋がらない
-
sftpのバッチモード(Solaris)
-
centOS7とteratermで、秘密鍵、...
-
メールサーバのログにConnectio...
-
iTunesStoreでの認証のしかた
-
sftpのパスワードなしでログイン
-
iTunes Storeで購入した曲がCD...
-
sshのセッション数
-
レンタルサーバーについて(長...
-
公開鍵方式のsshでパスワード入...
-
Ubuntu20.04からUbuntu22.04に...
-
リモートデスクトップ接続でパ...
-
エラーメールで"too many hops"...
-
「DNSサーバーを自動的に取得す...
-
DNSサーバを設定したのですがns...
-
同一のホスト名で何か問題があ...
-
LPIC 問題
-
MACアドレス 00:E0:C3 SAKAI って
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
AWSでSSH接続をしたいのですが...
-
sftpのバッチモード(Solaris)
-
SSHに繋がらない
-
SSH通信で秘密鍵の読み込みが失敗
-
SSH + rsyncがダメです
-
メールサーバのログにConnectio...
-
sshでlogin後、操作中、固まる...
-
Postfixのsmtp_sasl~ と smt...
-
sftpのパスワードなしでログイン
-
WindowsからRLoginでFreebsdにS...
-
UNIX初心者です。sftpで鍵認証...
-
Cyrus SASL 認証Mechanism につ...
-
ssh公開鍵認証設定の解除について
-
認証が必要なプロキシー経由でyum
-
VMware Fusionについて
-
centOS7とteratermで、秘密鍵、...
-
不正アクセスの処理について
-
winscpでのアップロードログ
-
OpenSSHのことですが
-
対話型のコマンドで入力する値...
おすすめ情報