- ベストアンサー
sshd_configのAllowUsersの制限方法について
- sshd_configのAllowUsersを編集して、特定のアカウントが特定のローカルネットワークからしかログインできないように制限したい場合、設定方法に注意が必要です。
- 許可するユーザー数が多すぎるとログインできない可能性があるため、ネットワーク範囲を適切に設定する必要があります。
- 具体的には、アカウント名の後に@記号を付け、IPアドレスとネットワークマスクを指定することで制限をかけることができます。複数のネットワーク範囲を指定する場合は、カンマで区切ることができます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
えっと…AllowUsersの使い方が間違っています。 例に従うと、 goo@192.168.0.0/24 は ホスト名が「192.168.0.0/24」のgooユーザーに対してであって「IPアドレスの制限」ではありません。 当然ホスト名が異なると思いますのでログインできなくなります。 アクセス元ホストの名前があると思いますのでそれを指定してください。 goo@*example.co.jpなどです。 /etc/hosts_allowファイルも参照してください。
その他の回答 (3)
- EF_510
- ベストアンサー率50% (306/604)
>192.168.0.0/24という表記で192.168.0.0~192.168.0.254のホストを表しますよね?←これが間違い?? 間違いです。あくまでそれはアドレス表記であってホスト名じゃありません。 allowuserもいいですが、Matchも考慮に入れてみてはどうでしょうか? Match Address 192.168.0.0/24 PermitRootLogin no PasswordAuthentication yes (ルールは適当です)
お礼
Match Addressというのを初めて聞きました。 分からないところをいじって困ったことになると面倒なので、 潔く列挙することにしました。 お付き合いいただきありがとうございました。
- Wr5
- ベストアンサー率53% (2173/4061)
>バージョンはOpenSSH_4.3p2でした。 軽くソースコードを読んでみましたが…… 残念ながら4.3p2ではCIDR表記には対応していない…ようです。
お礼
そうなんですか><潔く列挙する方法で我慢しようかな。。 わざわざ調べていただいてありがとうございました。
- Wr5
- ベストアンサー率53% (2173/4061)
サーバのバージョンはいくつなんでしょう?? >許可するユーザー数が多すぎるとダメだという話を openssh-5.9p1ではAllowUsersに指定できるのは256エントリ…のようです。 今回の指定の場合は、1エントリ扱いになりますから、ネットマスク部分は無関係かと。 # 5.9p1のソース、軽く読んだ限りではCIDR表記でも通る…っぽかったですが……。 # ただし、試したことは…ないです。(というかこういう書き方が可能だとも思っていなかったもので)
補足
回答ありがとうございます。 バージョンはOpenSSH_4.3p2でした。 No.1さんの回答の補足にも書いたのですが、goo@190.168.0.0/24という表記でgoo@190.168.0.0~goo@190.168.0.254という意味になりませんでしょうか? やりたいのはそういった短縮した表記なのですが、この表記がだめだとして、他に方法をご存じないでしょうか?
補足
回答ありがとうございます。 192.168.0.0/24という表記で192.168.0.0~192.168.0.254のホストを表しますよね?←これが間違い?? example.co.jpなどのアクセス元ホストの名前が分かりません。どこで確認できますでしょうか? ローカルネットワーク内のマシンの名前は/etc/hostsで決められていますが、それのことでしょうか? 適応させたいマシンは数10台程度なので、別々に AllowUsers goo@192.168.0.0 goo@192.168.0.1 goo@192.168.0.2 goo@192.168.0.3 ・・・と書けばやりたいことは達成できますが、短縮した表記があれば今後便利だと思いました。