web-dev-qa-db-ja.com

/etc/hosts.allowを無視するdenyhosts

私はUbuntu 13.10を実行しています(LTSではありません、私は知っています...)。 denyhostsをインストールしました。 /etc/hosts.deny/etc/hosts.allowがあります。 hosts.allow(自宅+職場)に2つのIPを追加しました。ただし、これらのIPからサインインすると、不審なサインインが発生したことを通知するメールが届きます。

hosts.allowファイルを2つの異なる方法でフォーマットしてみました。どちらも機能していないようです。

最初:

...
sshd: iii.i.i.iii : allow
sshd: iii.i.i.iii : allow

二番目:

...
sshd: iii.i.i.iii
sshd: iii.i.i.iii

これが関係しているかどうかはわかりませんが、何か気づいたら説明できません。

走ったら

$ Sudo service denyhosts restart
 * Stopping DenyHosts denyhosts                                                                                                                                                                                                                                        [ OK ] 
/etc/init.d/denyhosts: 44: test: /etc/hosts.deny: unexpected operator
 * Starting DenyHosts denyhosts  

しかし、hosts.denyまたはhosts.allowのいずれかでエラーを検索すると、次のものが見つかりません。

Sudo test -e /etc/hosts.allow
Sudo test -e /etc/hosts.deny

そして忘れる前に、私の/etc/denyhosts.confファイル:

...
# Most operating systems:
HOSTS_DENY = /etc/hosts.deny
#
# Some BSD (FreeBSD) Unixes:
HOSTS_DENY = /etc/hosts.allow
...

コメントが言うように、/ etc /hosts.allowは明らかにいくつかのBSDUnixで使用されています。これは問題ですか?私がUbuntuについて読んだいくつかのガイドでは、明らかにこれはそうではありません。

編集:

/etc/init.d/denyhostsファイルは次のように実行されます。

HOSTS_DENY=$(grep ^HOSTS_DENY $CONFIG  | cut -d = -f 2)

私の場合、これはhosts.allowhosts.denyの両方を返します。

3
Simon

あなたはそれらの両方にコメントがないので、denyhostsが/etc/hosts.allowを使用していると私は信じています。 2番目のHOSTS_DENY行をコメントアウトし、denyhostsを再起動します。

それでもメールが届く場合は、denyhosts.confファイルにSUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS = NOを追加する必要があります。これには、DenyHosts0.6以降が必要です。詳細については、 this を参照してください。

また、信頼できるIPアドレスを使用して1行に1つずつallowed-hostsファイルを作成する必要があります。これは、構成のWORK_DIRで定義された同じフォルダーに配置されます。

3
Nathan C

BSDボックスではなくUbuntuを使用しているため、_HOSTS_DENY = /etc/hosts.allow_行をコメントアウトする必要があります。

次に、hosts.(allow|deny)ファイルがどのように処理されるかを理解する必要があります。これらのファイルを使用するサービスは、常に_hosts.allow_の前に_hosts.deny_をチェックし、最初の一致で停止します。したがって、_hosts.allow_ファイルでIPアドレスアクセスを許可すると、_hosts.deny_の内容に関係なくアクセスが許可されます。 denyhostsがそのファイルにさらにアドレスを追加するかどうかを気にする必要はありません。 _hosts.allow_ファイルを使用すると、基本的にIPアドレスをホワイトリストに登録できます。

詳細については、hosts_access(5)のマニュアルページを参照してください。

3
Oliver

Sshdは、hosts.allowおよびhosts.deny(tcp-wrappersのサポート)をサポートせずにコンパイルされる場合があります。これは、Ubuntu 18.04LTSのインストールで発生しました。ご使用のバージョンのsshdがサポートしているかどうかを確認するには、以下を実行します。

  1. どのsshd
  2. 文字列/ usr/sbin/sshd | egrep'hosts。(allow | deny) '

上記の1行目は、sshdが正確にインストールされている場所を確認するためのものです(たとえば、私のRedHatマシンでは/ sbin/sshdでしたが、Ubuntuは/ usr/sbin/sshdでした)。したがって、それに応じて#2を変更します。

Hosts.deny + hosts.allowがサポートされていない場合、2行目は空の出力になります。その場合、openssh.comからソースをダウンロードして再構築する必要があります。

./configure --with-libwrap 
make
Sudo make install
0
Bastion