カテゴリ:自宅サーバー導入メモ( 6 )
JDK+TOMCATでJAVA環境を作る(後)
・・・つづき。
JAVAの動作が確認できたら、TOMCATをインストールする。

3.TOMCATのインストール/設定

3-1.jakarta-tomcat-4.1.31.tar.gzをDL
「The Jakarta Project」から「jakarta-tomcat-4.1.31.tar.gz」をダウンロード。

3-2.解凍
/usr/local/tomcat/フォルダを作成し、解凍する。
[root@~]tar zxvf jakarta-tomcat-4.1.31.tar.gz


3-3.設定
/usr/profile.d/内にtomcat.shを作成し、TOMCAT_HOMEのパスを記述する。
[root@~]# vi /etc/profile.d/tomcat.sh
TOMCAT_HOME="/usr/local/tomcat"
export TOMCAT_HOME


3-4.確認
Apacheのサービスを一時停止。http://localhost:8080をブラウザから確認。
TomCatのスタートページが表示されれば成功。


#TOMCATが動かない??
http://localhost:8080/で確認をしても、接続されないなど不具合がでる場合、
1.JDKがうまく動作しているか確認する。
2.8080ポートが、別のサービスと競合していないかを確認する。
3.TOMCAT_HOMEのパスが間違えていないかを確認する。








4.TOMCATとApacheを関連付けるmod_jk2のインストール/設定
ApacheとTomcatを関連付けるためのモジュールmod_jk2をインストールする。

4-1.ダウンロード
The Jakarta Project」から、mod_jk2のFedora-Core-1-i386.tar.gzをDL。
FedoraCore1用だが、FedoraCore2でも動く。



4-2.解凍
「Fedora-Core-1-i386.tar.gz」を/usr/local/src/に解凍。(のつもりが、勘違いして、/etc/httpd/modules/に解凍してしまった。けど、大丈夫っぽいので続行する)

[root@~]tar xzvf Fedora-Core-1-i386.tar.gz


出来上がったフォルダ。
/Fedora-Core-1-i386/etc/*
/Fedora-Core-1-i386/usr/
/Fedora-Core-1-i386/var/


4-3.コピー
/Fedora-Core-1-i386/etc/と/Fedora-Core-1-i386/usr/それぞれを、/etcと/usrにコピーする。

[root@~]pwd
/etc/httpd/modules/Fedora-Core-1-i386/
[root@~]cp -a etc/* /etc
[root@~]cp -a usr/* /usr


4-4設定
コピーした/etc/内の/etc/httpd/conf/httpd.confを編集
下記2箇所。

[root@~]vi /etc/httpd/conf/httpd.conf
~~~~~~~~~~
#
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If this is not set to valid DNS name for your host, server-generated
# redirections will not work. See also the UseCanonicalName directive.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
# You will have to access it by its address anyway, and this will make
# redirections work in a sensible way.
#
#ServerName new.host.name:80
ServerName localhost----------------------------(1)



~~~~~~~~~~~
#
# Specify a default charset for all pages sent out. This is
# always a good idea and opens the door for future internationalisation
# of your web site, should you ever want it. Specifying it as
# a default does little harm; as the standard dictates that a page
# is in iso-8859-1 (latin1) unless specified otherwise i.e. you
# are merely stating the obvious. There are also some security
# reasons in browsers, related to javascript and URL parsing
# which encourage you to always set a default char set.
#
#AddDefaultCharset UTF-8
AddDefaultCharset shift_jis----------------------------(2)




~~~~~~~~~~~



4-5.確認
Apacheを起動し、http://localhostが表示されれば、成功。
http://localhost/examples/jsp/index.html
が表示され、「JSP Samples」を確認する。確認できれば成功。
[PR]
by p0210029 | 2005-09-03 22:12 | 自宅サーバー導入メモ
JDK+TOMCATでJAVA環境を作る(前)

[全体の手順]
1.Apachインストール/設定
2.J2SDKのインストール/設定
3.TOMCATのインストール/設定
4.TOMCATとApacheを関連付けるmod_jk2のインストール/設定

***

1Apacheはすでにインストール済みのため省略
2.J2SDKのインストール

2-1.RPMパッケージの入手

Sunのダウンロードページから「jdk-1_5_0_04-linux-i586.rpm.bin」をDLし、/usr/java/内に置く。


2-2.パーミッションの変更

[root@~]chmod a+x jdk-1_5_0_04-linux-i586.rpm.bin




2-3.バイナリファイルを実行、ライセンスに同意

[root@~]./jdk-1_5_0_04-linux-i586.rpm.bin




2-4.RPMを実行。パッケージのインストール

[root@~]rpm -iv jdk-1_5_0_04-linux-i586.rpm


rpm -i インストール
rpm -v 情報表示


2-5.設定

・/etc/profile.d/に、java.shを作成。
・パーミッションの変更 chmod a+x java.sh。
・java.shを下記のとおり編集。

JAVA_HOME="/usr/java/jdk1.5.0_04"
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME PATH



2-6.確認
下記が実行されればOK

java -version



明日はTomCatにチャレンジ
[PR]
by p0210029 | 2005-09-02 04:00 | 自宅サーバー導入メモ
IPマスカレードを設定する

DHCPの設定が終わったら、IPマスカレードの設定を行い、LAN内のPCから、インターネットに接続できるようにする。

DHCPで割り振られたLAN内のプライベートなIPアドレスでは、グローバルな環境に接続で
きない。グローバルなIPの仮面をつけて、外側に接続する。

1.IPマスカレードの設定
任意のファイルを作成し、下記を記す。


#!/bin/sh
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE



それぞれのコマンドオプションの説明
<-t nat > テーブル名を指定
<-A POSTROUTING>マスカレードを設定したいチェーン名を指定。[POSTROUTING]はパケットが内部ネットから外部ネットへ出ていく際のチェイン。
<-o eth0> 発信ネットワーク
<-j MASQUERADE> IPマスカレードを行う

簡単には、NAT機能(IPの変換)を実現するために、natテーブルの、POSTROUTINGチェインを通る全てのパケットのIPをeth0(プロバイダから取得したグローバルIP)に変換してね。と・・・。


2.マスカレードの確認


[root@・・]iptables -t nat -L
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- anywhere anywhere
・・・・


MASQUERADEの行があればOK


3.再起動時にも、パケット中継機能をOnにしておくために、
/etc/sysctl.confを編集
net.ipv4.ip_forward を1に設定。


# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.

# Controls IP packet forwarding
net.ipv4.ip_forward = 1





今回はIPマスカレードについての設定のみを簡単に行うにとどまったが、
iptablesの設定を行うことにより、ファイアーウォール機能を持たせることもできるなど、iptablesの設定に慣れることは重要っぽい。
iptablesについては、ちょっとずつ調べて、メモっていければと思う。。。
[PR]
by p0210029 | 2005-08-31 19:36 | 自宅サーバー導入メモ
DHCPを設定する

DHCPサーバーを設定し、LANに繋がったPCに、プライベートIPアドレスを振り分ける。

1.LANアダプタを購入する。
ルーター経由ではなく、サーバーにルーターの役割を負わせるためには、LANアダプタが二つ必要。ということで、さっそくビックカメラに行って、LANアダプタを購入。
corega CG-LAPCITX

2.LANアダプタをPCに設置する。
本を片手に、購入したLANアダプタを開封しながら、これを拡張スロットに差し込めばよいのね。と納得して、いざ、とPCに挑んだ途端に、致命的なことに気づいて愕然とする。
筐体のあけ方がわからん。

ぽつんと、一つだけ飛び出たネジをにらんで、このネジ?このネジをはずせば良いの?と恐る恐るネジをとる。が、どこのカバーも外れそうにない。仕方なく、Googleで検索してみる。

DELL サポートページ Documentation

なんとイラストつき。なんだ、カバーをスライドさせれば良かったのか。とため息をついて、なんなく拡張スロットとやらとご対面。無事、カードを差し込む。


3.NICカードの読み取り?
PCが新しく差し込んだcoregaのLANアダプタは読み込んでくれるものの、最初からあるLANアダプタを読み込んでくれないという現象に遭遇する。
何が問題なのかさっぱり分からなかったが、何度も再起動するうちに、ようやく読み込まれた。原因は不明。

4.ethの設定
eth0 新しく設置したLANアダプタ
eth1 購入時から設置されていたLANアダプタ

eth0はネットワーク側、ADSLモデムに差し込まれている。
eth1はLAN側、ハブに差し込まれている。

インターネットの接続を担当するeth0は、「自動的にIPアドレスを取得」「プロバイダーのDNS情報を自動で取得」にチェックをつけ、そっちはプロバイダと勝手にやってくださいと設定する。

LAN側を担当するeth1には、勝手にやってくれというワケにはいかないので、「固定のIPアドレス設定」をオンにし、アドレスを「192.168.1.1」サブネットマスクを255.255.255.0と決めてあげる。
今日からお前は、我が家では192.168.1.1と命名する。といった感じ?



5.DHCPサーバーの設定
これで、サーバー側のPCは設定されたが、ハブに接続されたWindowsマシンにも、今日からお前は、192.168.1というネットワークに属する、192.168.1.xxだ。と命名してあげたいので、サーバーでDHCPの設定を行う。

/etc/sysconfig/dhcpd
にてイーサネットカードの指定を行う。

DHCPDARGS="eth1"



/etc/dhcp.conf
にて、具体的なサービスの設定を行う。


ddns-update-style interim;
subnet 192.168.1.0 netmask 255.255.255.0{
range192.168.1.2 192.168.1.17;-------(1)
option subnet-mask 255.255.255.0;-------(2)
option routers 192.168.1.1;-------(3)
option broudcast-address 192.168.1.255;-------(4)
option domain-name-servers xxx.xxx.xxx.xxx,xxx.xxx.xx,x;-------(5)
}



(1)LANに繋がったPCに振り分けるIPアドレスのレンジ
(2)サブネットマスク
(3)ルーターのIP(eth1に振り当てたIP)
(4)ブロードキャストアドレス
(5)プロバイダのDNSサーバーのIP
GUIから、[システム設定][ネットワークの設定]を選択し、[DNS]のタブを開くと、プロバイダのDNSサーバーのIPがわかる。


6.DHCPサーバーの起動
DHCPサービスの開始
/etc/rc.d/init.d/dhcpd start

サーバー起動時に、自動的にDHCPサービスを開始させる設定
chkconfig(*) dhcpd on


7.確認
ハブから繋がったWindowsマシンで、ipconfigする。
192.168.1.xxというIPが取得されたので、成功。
[PR]
by p0210029 | 2005-08-25 15:10 | 自宅サーバー導入メモ
xinetd
xinetd:
RedHatLinux7から導入されたスーパーデーモンのこと。

普段、あまり使わないサービスをxinetd経由にしておくと、ポートを監視して、クライアントからの接続があった場合のみ、サービスを立ち上げてくれる。
メモリなど負荷が軽減する。



【デフォルト設定】
/etc/xinetd/xinetd.conf


defaults
{
instances = 25
log_type = FILE /var/log/servicelog
# log_type = SYSLOG authpriv

log_on_success = HOST PID
log_on_failure = HOST RECORD
per_source = 5
}




【xintd経由のサービス設定】
/etc/xinetd/xinetd.d/xxxx


EX)telnetの例
service telnet
{
disable = no
protocol = tcp
socket_type = stream
wait = no
user = telnetd
server = /sbin/in.telnetd
only_from = 192.168.0.0/24
#no_access = 192.168.1.1
}


only_fromによって、アクセスの制御を行える。
no_accessによって、特定のネットワークからの接続を拒否できる


【実行】
#service xinetd restart
#/etc/rc.d/init.d/xinetd restart


【結果】


xinetd を停止中:[ OK ]
xinetd を起動中: [ OK ]


[PR]
by p0210029 | 2005-08-08 04:25 | 自宅サーバー導入メモ
Apache関連1
1.インストールされているかどうかを見る

rpm -qa | grep httpd

[-q]インストールパッケージの確認
[-qa]インストールパッケージを全て確認


2.マルチスレッド対応

#/etc/sysconfig/httpdファイルの編集
(このファイルが無かった為に作成した)

HTTPD=/usr/sbin/httpd.worker

デフォルトhttpdデーモンビルド情報
# /usr/sbin/httpd -V
マルチスレッド対応httpdデーモンのビルド情報
# /usr/sbin/httpd.worker -V



3./var/www を /home/wwwへコピー

#cp -Rp /var/www /home/www

[-R]再帰的にコピー
[-p]オーナー・グループ・パーミッション・タイムスタンプ情報を保持したままコピー


4Confの編集
/etc/httpd/conf/httpd.conf

A:ディレクトリを変更
/var/www から /home/wwwに変更したため、ディレクトリを変更

B:コネクションを使い回し
KeepAlive On

C:接続から切断までに受け付けるリクエストの数
MaxKeepAliveRequests 100
(1ページのリクエスト+α)

D:サーバー情報を制御
ServerTokens ProductOnly
ServerSignature Off


5.テスト

# /usr/sbin/httpd -t
もしくは
# /usr/sbin/apachectl configtest



6.スタート

# /usr/sbin/apachectl start(restart/stop)



7.ディレクトリ情報


/etc/httpd/conf/   httpd.confなど設定ファイル
/usr/lib/httpd/build/   拡張モジュール作成時に使用
/usr/lib/httpd/modules/   拡張モジュール
/usr/sbin/   apachectl、httpdなどの実行ファイル
/usr/share/man/   マニュアル(man形式)
/var/log/httpd/   ログファイル
/var/www/    
  ├─ cgi-bin/   CGIスクリプト
  ├─ error/   エラーメッセージファイル
  ├─ html/   Webサイトのドキュメントルート
  ├─ icons/   アイコンファイル
  └─ manual/   マニュアル(HTML形式)







日経Linux "Linuxコマンド集"

VIコマンド集
[PR]
by p0210029 | 2005-08-08 01:12 | 自宅サーバー導入メモ