OpenBSD 5.3でユーザー名を使用してSSHDにログインできなかった場合は、どのように記録しますか?

OpenBSD 5.3でユーザー名を使用してSSHDにログインできなかった場合は、どのように記録しますか?

DYNDNSが有料サービスになり、動的IPアドレスの問題に対する解決策を見つけました。

OPENWRTルーター側(動的IP、この行はCRONにあります):

echo close | ssh LOCATION@SERVER -p 22 > /dev/null 2>&1

サーバー側(固定IPを使用):

on OpenBSD 5.1 I had nothing to do*

クライアント(動的IP / OpenWRTルーターに接続したい場所):

vi .bashrc
DYNNAMEHERE() {
DYNNAMEHERE01=`ssh root@DOMAINHERE -p PORTHERE "grep 'user DYNNAMEHERE from' /var/log/authlog | tail -1" | sed 's/ from /\n/g' | tail -1 | grep -o "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*"`
ssh root@"${DYNNAMEHERE01}" -p PORTHERE
}

次に、次のコマンドを使用します。

DYNNAMEHERE

OpenWRTルーターにrootとしてログインしました。

問題:*しかし、OpenBSD 5.3では失敗したログインユーザー名は記録されません。なぜ? SSHDログレベルをDEBUG3(以降「kill -HUP SSHDPID」)に設定しようとしましたが、失敗したログインユーザー名は記録されませんでした。

更新:「場所」はログイン名です。 (しかし「-l」も試しましたが、成功しませんでした。)

更新:いいえ、以下を除いてsshd_configを変更していません。

ListenAddress 0.0.0.0
PermitRootLogin without-password
PubkeyAuthentication yes
PasswordAuthentication no

答え1

SSHDのカスタムログ設定

ロギングのデフォルトオプションがすでにOpenBSDに設定されていることがわかっているので、その設定に問題があるか誤って設定されている場合はこれが代替策です!

OpenBSD 5.3に含まれている一般的なロギング機能に問題がある場合は、sshd_configファイルを次のように変更してログが送信される場所をオーバーライドできます。

SyslogFacility LOCAL7

次に、これらのメッセージをインポートして別のファイルに書き込むようにsyslogdを設定します。

local7.*     /var/log/local7.log

上記のように変更した後、sshdサービスとsyslogdサービスを再起動する必要があります。

pam_exec

もっとカスタマイズ可能なものが必要な場合は、pam_exec確認してみてください。詳細については、次を参照してください。pam_exec のマニュアルページこのチュートリアルのタイトルは次のとおりです。ログイン通知、pam_execスクリプト

アイデアは簡単です。たとえば、通知ログインなどのスクリプトを作成します。

#!/bin/sh
[ "$PAM_TYPE" = "open_session" ] || exit 0
{
  echo "User: $PAM_USER"
  echo "Ruser: $PAM_RUSER"
  echo "Rhost: $PAM_RHOST"
  echo "Service: $PAM_SERVICE"
  echo "TTY: $PAM_TTY"
  echo "Date: `date`"
  echo "Server: `uname -a`"
} | mail -s "`hostname -s` $PAM_SERVICE login: $PAM_USER" root

スクリプトを変更してファイルに書き込むことができます。次に、pam設定にこのスクリプトを追加する必要があります。

auth [default=ignore] pam_exec.so /usr/local/bin/notify-logins

上記のスクリプトが実行可能であることを確認してください(chmod + x通知ログイン)。 pamラインを配置する場所を特定するのは、おそらくこの方法で最も難しい部分です。これは良いチュートリアルこれが正しい方向に行くことを願っています。

失敗2禁止

fail2ban3番目の方法は、失敗したログイン試行を記録するよりも多くの作業を実行できるようなツールを使用することです。また、さまざまな方法で反応することもできます。ここには、次のタイトルの良いチュートリアルがあります。Ubuntu 12.04でfall2banを使用してSSHを保護する方法。 Ubuntuでも動作しますが、OpenBSDでも動作します。

引用する

関連情報