DELL PowerEdge1400でイントラサーバ
作成日:2001/03/12
更新日:0000/00/00
ゲリラ的(つまり会社には内緒で)に社内でWWWサイトを構築して使っていましたが、 おおっぴらにイントラサーバを構築する機会に巡り会いました。 以前から構想はいろいろと持っていて、業務改善やら現状提供できていない 仕組みを構築できればと思いつつ、なかなかきちんとした物を作るだけの パワーをつぎ込めていませんでした。今回、公式に構築ということで ある程度時間をつぎ込んで試してみることが出来そうです。
まずLinuxをインストールします。ディストリビューションを マニュアルに従いインストールしていきますが、今回はApacheと PostgreSQL,PHP4を使いますが、これらは後から最新のソースから インストールすることにし、サーバ用途に必要な機能のみをインストール します。 インストールが終了しましたら、まずはセキュリティの セッティングです。"/etc/inetd.conf"をエディタで開き pop-3やtimeなどコメントされていない部分を全てコメントアウトします。 そして"/sbin/chkconfig --del inetd"で 起動時にinetdが動かないようにしておきます。同様に不要なサービスは 動作しないようにします。
inetdを止めたので、クライアントからtelnetが利用出来ません。
リモートからの作業のためにsshdは生かしておきます。
クライアントからのリモートアクセスはsshを利用するので、
ログインするユーザで"ssh-keygen"を実行して"identity"と"identity.pub"ファイルを作成し、
ホームディレクトリの下に作成された、"~/.ssh/identity.pub"をサーバの自分のホームディレクトリの
同じく"~/.ssh"へauthorized_keysと言う名前でコピーしておきます。
これで"ssh サーバ名"で暗号化された通信でリモート作業が出来ます。
ftpも止めてしまっていますので、ファイル転送にはscpを利用することになります。
イントラネットサーバですので、それほど気を付ける必要は無いはずですが、
今後インターネットに公開するときの練習設定もありsshを利用する習慣を付けておきます。
chown -R postgres:postgres postgresql-7.0.3その後postgresユーザにsuし、ソースディレクトリで
./configure --prefix=/usr/local/pgsql --enabel-multibyte=EUC_JP make make installとしてインストールします。 その後postgresユーザのホームディレクトリのログインシェルスクリプトに 環境変数を定義します。必要な環境変数は PG_HOME,PGPATH,PGLIB,PGDATA でダイナミックライブラリの設定には/etc/ld.so.confを編集するか 環境変数LD_LIBRARY_PATHにPGLIBを追加します。 私の環境ではbashを使っているので、.bashrcに
export PG_HOME=/usr/local/pgsql export PGPATH=/usr/local/pgsql/bin export PGLIB=/usr/local/pgsql/lib export PGDATA=/usr/local/pgsql/data export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PGLIBを追加しました。