ハッカー・クラッカー・サイバーテロ防止策


ハッカーが問題となっている昨今ですが,何故ハッカーに利用されるかを考えて見たことがあるでしょうか?

また、サーバーを構築する際にDNS、Apache、Sendmailの設定だけで、外部からの侵入を防ぐ為の手段を

検討されたことがあるでしょうか?実際には設定が手一杯ではないでしょうか!また、Firewallを過信していないでしょうか、

外部から侵入されると次のような問題が発生します。

@データの盗難・改ざん・不正使用

Aサーバーが破壊される。

B他のホストへの攻撃の踏み台として利用される。

このような問題を避けるため、インターネットに接続する場合にはネットワークセキュリティーについて、細心の注意を払わなければなりません。

このホームページでは,簡単に解かり易くハッカーなどの侵入を防ぐ方法について説明致します。

何もしないサーバーよりハッカー等の侵入は防げるはずですが、100%防ぐことは不可能です。

何故ならば,彼達も日々努力?をしているからです。このホームパージは不定期に更新します。

そして,新しい情報等を御紹介させて戴く予定です。





  1. パスワード管理について

  2. rootでログインできる端末を制限する

  3. rootになれるアカウントを制限する

  4. syslogを理解する

  5. ネットワークサービスの制御

  6. セキュリティホールの宝庫sendmail。

  7. TCPWrapperの設定

  8. パケット・フィルタリングの設定




◆パスワード管理について
パスワードの管理
LINUXに限らず、ほとんどのOSはログインの正当性を確認する意味において、「ユーザーID」と「パスワード」を利用します
そのためにパスワードが漏洩すると第三者がログインしてしまうことになります。第三者がログインできた状態でセキュリティーは
無意味になってしまいます。そこで運用上、次の点に注意すべきです。

分かり易いパスワードは付けない。
パスワードを破ることは「時間さえ許せば、簡単に破ることができます。」と言うのが現状です。
外部からの侵入者は辞書などに載っている単語などを基に総当りでパスワードを調べていく場合が多いそうです。
そのため、パスワードは単語だけではなく、英数字の組み合わせで自分が覚え易いものを利用することをお奨め致します。

パスワードは紙に書かない。
パスワードを紙に書き、見やすい場所においたり画面に貼りつけたりしている方を多く見かけますが、これは論外です。
これではセキュリティーの意味がありません。ぜひ、即刻やめてください。

パスワードは他のシステムと共有しない。
パスワードは他のシステムと共有しないでください。例えばネットワーク内に2つのサーバーがある場合、両者に同じパスワードを
付けると、片方のパスワードが破られると、もう片側へのアクセスを許すことになります。

複数の人間で1つのパスワードを共有しない。
複数の人間で1つのパスワードを共有することは、絶対に避けてください。
複数の人間で1つのパスワードを共有すると、「どのようにパスワードが漏洩したのか」の追跡が極めて困難となります。

rootのパスワードは特に限られた人にのみ教える。
絶対に破られてはいけないが、すべての権限を持つユーザーであるrootのパスワードです。
これが破られると、以下のようなことが起こる可能性があります。

@システムの破壊
 システム全体がフォーマートされたりして、破壊される可能性があります。この場合は最悪の事態です。システムの再インストールを余儀なくされます。

A重要ファイルの盗難・改ざん
 サーバー内にある重要なデータファイルなどが盗みだされたり、改ざんされる可能性があります。企業にとって大きな損害を被ります。

rootパスワードは定期的にしっかり変更してください。

トップへ戻る




◆rootでログインできる端末を制限する

rootでログインできる端末を制限する
rootでログインできる端末を制限することは非常に重要です。
特に外部のネットワークからrootでログインできるとなると、第三者がネットワークからtelnet接続して「root」でログイン
そしてパスワードを破ることで攻撃を仕掛けてきます。LINUXでは次の方法でログインできる端末を制限できます。

/etc/securettyの設定。
#vi /etc/securettyとすると以下は表示されます。

console  <----linuxに接続されているデフォルトのディスプレイとキーボードで仮想端末の1番
tty1    <---linuxの仮想コンソール[ALT]を押しながら[f1]を押したのと同じです。
tty2    <---linuxの仮想コンソール[ALT]を押しながら[f2]を押したのと同じです。
tty3    <---linuxの仮想コンソール[ALT]を押しながら[f3]を押したのと同じです。
tty4    <---linuxの仮想コンソール[ALT]を押しながら[f4]を押したのと同じです。
tty5    <---linuxの仮想コンソール[ALT]を押しながら[f5]を押したのと同じです。
tty6    <---linuxの仮想コンソール[ALT]を押しながら[f6]を押したのと同じです。
ttys0 <---シリアルポートに接続された
ttys1 <---シリアルポートに接続された
ttys2 <---シリアルポートに接続された
ttys3 <---シリアルポートに接続された
ttyp0 <---telnetで接続された端末・・・・この行を削除します。
ttyp1 <---telnetで接続された端末・・・・この行を削除します。
ttyp2 <---telnetで接続された端末・・・・この行を削除します。
ttyp3 <---telnetで接続された端末・・・・この行を削除します。

ただし、/etc/securettyは、「root」でログインをできないことを防ぐだけで、
その端末でroot機能を使えないということではありません。



/etc/login.accessの設定。
/etc/login.accessではroot以外のアカウントに対してもログインの制限が行えます。
また、指定したホストからしかログインできないようにすることも可能です。

@rootユーザー以外は、コンソールおよび仮想端末(tty1〜tty6)からロクインできないようにする。
-:EXCEPT root: console tty1 tty2 tty3 tty4 tty5 tty6


Aあるドメイン名を持つホストからしかログインできないようにする。
 例,hero-island.ne.jpのドメイ名をもたないホスト名から禁止する。
-:ALL:EXCEPT .hero-island.ne.jp.


B特定のグループ以外はtelnetでログインできないようにする。
 例、xxxusersグループに属するアカウント以外はtelnetでログインできないようにする
-:ALL:ALL


そして
+:xxxusers:ALL


さらに、その他のアカウントはコンソールと仮想コンソールからログインできるように
+:ALL:console: tty1 tty2 tty3 tty4 tty5 tty6


トップへ戻る




◆rootになれるアカウントを制限する

/etc/securettyや/etc/login.accessでは、rootログインの制御をすることができますが、
suコマンドによって誰でもrootになることができます。そこでsuコマンドを制御できる
/etc/login.defsの設定を以下のようにします。
SU_WHEEL_ONLY    yes<----デフォルトはnoです。

これでrootグループに属するユーザーしかsuコマンドでrootになりことができなくなります。

rootグループに指定したユーザを属されるのは/etc/groupファイルを書き換えるか、以下の方法でできます。
# usermod -G root ユーザ名



トップへ戻る

ホームページに戻る



ご感想・ご意見 - 免責事項



Copyright (C) 1998 hero-island. All Rights Reserved.