2005年08月24日

自宅で無料サーバーを開設

ダイナミックDNS(DDNS)を使って無料でサーバー立ち上げに挑戦

家サーバー・プロジェクトからサブドメインを無料で登録
http://www.ieserver.net/

設定は↓を参照
http://ai-line.com/linux/

gdipc.pl(GnuDIP perl版)をダウロードして /usr/DDNS に入れ、パーミッションを700に変える

# mkdir /usr/DDNS
# cd /usr/DDNS
# chmod 700 gdipc.pl

# perl gdipc.pl -c

すると Can't locate MD5.pm in @INC と表示されエラーとなるのでPerlモジュールを↓からダウンロード
http://search.cpan.org/dist/MD5/MD5.pm

# tar xvzf MD5-2.03.tar.gz 解凍する
MD5.pmを /usr/lib/perl5/5.8.5 に入れる(pm ファイルがたくさんあるフォルダに)

# perl gdipc.pl -c 今度は成功

New Username: 登録したユーザー名
New Password: 登録したパスワード(********)
New Password Again: パスワード再入力(********)
Domain: 選択したドメイン名(jpn.ph)
New GnuDIP Server: 登録したダイナミックDNSサーバー(ieserver.net)

# perl gdipc.pl
Successfully updated to new IP address for (ユーザ名) が出ることを確認

ルーターが無い場合はこれで使えるようになようだが、ルーターがあるのでまだややこしいちっ(怒った顔)

IP_Get.plスクリプトをダウンロードして/usr/DDNSに置く
# chmod 700 IP_Get.pl バーミッションを700に変更
# which perl パールの位置を調べる
# vi IP_Get.pl
#!/usr/bin/perl を#!/usr/local/bin/perlに変更 (フェドラコアの場合)


眠いので今日はここまで
↓に詳しく書いてあるが難しい
http://www.cue.im.dendai.ac.jp/~masuda/ddns/
http://www02.so-net.ne.jp/~ytanaka/freebsd/DDNS.html


posted by ガンさん | Comment(0) | TrackBack(0) | Webサーバ構築 |

2005年07月30日

CGIを動かす

Apacheの設定
# gedit /etc/httpd/conf/httpd.conf

先頭の # を削除し cgiを 有効にする
AddHandler cgi-script .cgi .pl

cgi-bin ディレクトリ以外でも動かす場合は、
Options ExecCGI を追加

parlのディレクトリパスを確認してみる
# which perl
/usr/bin/perl
この場合、#!/usr/bin/perl と書き、次の行は空行にする

cgi ファイルが間違いがないか調べる
# perl -c test.cgi
test.cgi syntax OK がでれば問題なし

パーミッションで実行権を与える
#chmod +x test.cgi

500 Internal Server Error
しかし動かない?? ふらふら

サーバのパソコンで作ったcgiは動くのに、FTPで転送したものは動かないことがわかる
そこで、vsftpd.confをアスキーモードの転送を可能にすると動くわーい(嬉しい顔)

タグ:CGI
posted by ガンさん | Comment(0) | TrackBack(0) | Webサーバ構築 |

2005年07月16日

FTPサーバーを動かす

FTPサーバがインストールされているかを確認
# rpm -q vsftpd
vsftpd-2.0.3-1
バージョンが表示されればインストールされている

無ければ、アプリケーション⇒システム設定⇒アプリケーションの追加/削除⇒ rootパスワード⇒FTPサーバにチェックを入れ更新
CDを入れてインストール

FTPサーバーを起動させる
# service vsftpd start

起動確認
# service vsftpd status

Linuxを起動させると自動的にFTPサーバーも起動するように設定する場合は
# chkconfig vsftpd on

アスキーモードでの転送を可能にする
/etc/vsftpd/vsftpd.conf
ascii_upload_enable=YES (先頭の#を外す)
ascii_download_enable=YES (先頭の#を外す)

Windowsからpublic_htmlが何故か見えない??のでSElinuxを無効にさせる

Linuxをセキュアな状態にするための SElinux が通常有効になっているが無効にする方法
# getenforce で有効か無効かを確認
Enforcingで有効、Permissiveで無効
# setenforce 0 無効にさせる
# setenforce 1 有効に戻す

WidowsへFFFTP(フリーソフト)をダウンロードし、インストール
新規ホストを設定 (ローカルネットワークの場合)

ホスト名(アドレス)
LinuxパソコンのIPアドレスを入力 (192.168.0.10)

ユーザー名(U)
LinuxへのログインIDを入力

パスワード(P)
Linuxへログインする時のパスワードを入力
posted by ガンさん | Comment(0) | TrackBack(0) | Webサーバ構築 |

アパッチの設定

Linuxの起動と同時にアパッチも自動起動させるように設定
# chkconfig --level 35 httpd on

level 35でLANレベルが3と5がonになっていることを確認
# chkconfig --list httpd
httpd 0:off 1:off 2:off 3:on 4:off 5:on 6:off

起動状態を確認するコマンド
# service httpd status
実行中が出れば起動している

アパッチの設定ファイル「httpd.cconf」を設定
gedit /etc/httpd/conf/httpd.conf

デフォルトでは文字コードが強制的にUTT-8となっており、シフトJISのファィルなどは文字化けするので 頭に # を付けてコメントアウトする
# AddDefaultCharset UTF-8

ユーザーごとに「.htaccess」の制御を許可する
AllowOverride に Limit を追加

ファイル名を指定しない場合の拡張子に index.htm や index.shtml を追加
DirectoryIndex index.html index.html.var index.htm index.shtml
posted by ガンさん | Comment(0) | TrackBack(0) | Webサーバ構築 |

2005年07月09日

ユーザー毎のホームページを公開できるよう設定

ユーザのディレクトリ内にpublic_htmlのディレクトリを作る
/home/ユーザー名/public_html

geditテキストエディタでhttpd.confを編集
$ su -
# gedit /etc/httpd/conf/httpd.conf

<IfModule mod_userdir.c > の行を検索
「UserDir disable」の先頭に #を付けて無効にする
# UserDir disable

「#UserDir public_html」の先頭の#を外して有効にする
UserDir public_html

その少し下の行の<Directory /home/*/public_html>セクション全ての行の先頭の「#」を取って外し有効にする

<Directory /home/*/public_html >
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS >
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS >
Order deny,allow
Deny from all
</LimitExcept >
</Direc >

以上で、httpd.confを保存して終了

SELinuxを有効にしている場合は、public_html以下のタイプが「httpd_user_content_t」である必要がある

# ls -Zd /home/ユーザ名/public_html
user_u:object_r:user_home_t ←変更前

# restorecon -R /home/ユーザ名/public_html

# ls -Zd /home/ユーザ名/public_html
system_u:object_r:httpd_user_content_t ←変更後

念のため各ディレクトリのパーミッションを調べアクセス権がなければ「755」に変更
chmod 755 /home/ユーザー名/

Apacheを再起動して変更を反映させる
# service httpd reload

ブラウザにアドレスを入れて確認
http://ホスト名/~ユーザ名
posted by ガンさん | Comment(0) | TrackBack(0) | Webサーバ構築 |
1 2 次へ>>