・サーバーはWeb、FTP、メールを設置。公開鯖は予定ではWebのみ
・他にもssh、sambaデーモンを設置予定。(ただし、これは未公開)
・ほとんどのデーモンはsandbox(砂地)に設置し、rootに被害が及ばないようにする。
・sshからrootへ直接ログイン可能にするが、sshはルータレベルで穴を開けないようにし、ログインには公開鍵・秘密鍵の形式を用いる。(パスワード式はnoにする)
・すべてのユーザー(root含む)の暗号化パスワードを*に変えて、ログインができないようにする。(使いたいときはsshか直接電源落としてから再起動でシングルユーザーモード。)
・パーティションは/のみ。
・Sambaはthrough SSHがよい(やり方がわかりません。教示願います)。わからなかったら、普通のパスワードで一般ユーザーに割り当て
・Webはlighttpdを用いる(これは決まっている)
・OS、ソフトウェアのバージョンには気をつけるつもりです。
どのようなネットワーク構成かが不明なので
過去の質問から自宅にサーバを設置すると
思われるので。
こんな感じと思います。
Internet ---- Router ---- FreeBSD
| |
| +---- 自宅PC
|
外部PC から FreeBSDへssh接続
-----------------------------------------
1. FreeBSDにRAM/CPUに余力がある場合
XEN等の仮想サーバソフトを使い、
WEB等のハッキングされそうな機能
を物理的に独立させ最低限の機能にする。
2. Internetからの接続機能を規制する
SSH/SAMBA等の機能で外部から
接続を常に許可する必要がないのに
常に動作させているのはよくない。
SSHによる認証を行うにしても次のような
規制方法もある。
2.1 保守用のメンテナンスWEBの画面(https)
を作成するして、
管理機能を作成する。(ADMIN)
2.2 機能としてたとえば
一時的にSSH等のポートへのデーモンを有効
にする。一定時間経過したらデーモンを停止
する。(使う時間があらかじめ予想されるなら
より堅城規制が出来る)
SAMBAについても同様で、常に動作させる
必要があっても外部からの接続を
原則拒否に設定して、必要なときのみ
フィルター等で有効、一定時間で無効化
機能の設定操作を行った場合、相手のグローバル
IPが補足できるので、より堅城なセキュリティが
出来る。
Webサーバ(cgi)経由でハックできれば簡単です。
外部からユーザモードでプログラムを送りこむの事が出
来れば。
FreeBSDのsandboxがLSMのように
個別プログラム単位で接続制限を行えれば
かってに起動したり外部への接続は防止する
事が出来ます。
====================================================
FreeBSD jail
http://www.xdelta.net/wiki/FreeBSD/jail.html
Linux LSM( SeLinux/LIDS )
http://www.selinux.gr.jp/documents/2005lw.html
http://www-06.ibm.com/jp/developerworks/linux/040702/j_l-sppriv....
AntiVir Mailgate
自宅に設置します。
XENによる仮想サーバーは思いつきませんでした。が、余力は少ないのでやめておこうかと思います。
SAMBA,SSHについて起動時間を限らせるようにする意見は参考になりました。ただ、sambaもsshも外部からルータレベルでふさいでいます(正確に言うと、穴を開けなければ全部ふさいでいる状態でweb,ftpなどの一部の穴を開ける形です)が、それでも気を使うべきですか?「内部からのクラック(いわゆるハック)は考えない」でおねがいします。
ちなみにルータはYamahaのRT57iで最強のFWモードにしてあります。