qmail SSL対応

走り書き。
http://www.nrg4u.com/ から tcpserver SSL/TLS patchダウンロード

cd ucspi/
zcat ucspi-tcp-ssl-YYYYMMDD.patch.gz | patch
make

cp tcpserver /usr/local/bin/tcpserver-ssl
make sert
cp sert.pem /var/qmail/sert/

それぞれの起動スクリプトを修正する。
[smptd]
-s オプションを追加
-n sert.pem オプションを追加
smtp → 465 ポートを変更

[pop3d]
-s オプションを追加
-n sert.pem オプションを追加
110 → 995 ポートを変更

広告

WebDAV

httpd-2.0.xで確認
まずmod_davとmod_dav_fsがDSOで組み込まれているか、組み込みコンパイルされているか確認。

なければ

./configure –with-dav –with-dav-fs

などで追加する。

httpd.confに以下を追加

DAVLockDB /var/lock/dav/DAVLock
<IfModule mod_dav.c>
<Location /dav>
DAV on
SSLRequireSSL #SSLに対応させるなら追加
</Location>
</IfModule>
Alias /webdav /var/webdav

必要に応じて認証などをかけておく。
SSLに対応していないなら、deny,allowなどでローカル限定にするのがいいかも。

マイネットワーク→ネットワークプレスの追加でアクセスする。
このままだと日本語が文字化けするのでmod_encodingで対策する。

wget http://webdav.todo.gr.jp/download/mod_encoding-20021209.tar.gz
tar zxvf mod_encoding-20021209.tar.gz
#apache2.0用のファイルをダウンロード
wget http://webdav.todo.gr.jp/download/experimental/mod_encoding.c.apache2.20040616
cp mod_encoding.c.apache2.20040616 mod_encoding-20021209/mod_encoding.c
cd mod_encoding-20021209/lib
#iconv_hookをインストール
./configure
make
make install
#/usr/local/libにライブラリパスを通しておく
vi /etc/ld.so.conf
/usr/local/lib
ldconfig

mod_encodingのインストール再開

cd ..
./configure –with-apxs=/usr/local/apache2/bin/apxs –with-iconv-hook=/usr/local/include
make
#make installでエラーになりインストールできないので自力でインストール
gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -L/usr/local/lib -Llib -liconv_hook
cp mod_encoding.so /usr/lib/apache2/modules/
#httpd.confに追加する
LoadModule encoding_module modules/mod_encoding.so
<IfModule mod_encoding.c>
EncodingEngine on
NormalizeUsername on
SetServerEncoding UTF-8
DefaultClientEncoding JA-AUTO-SJIS-MS SJIS
AddClientEncoding “cadaver/” EUC-JP
</IfModule>

apacheを再起動しておわり。
日本語が文字化けなくなった。

XSLT (PHP)

Expatのインストール
http://sourceforge.net/projects/expat/

wget http://jaist.dl.sourceforge.net/sourceforge/expat/expat-1.95.8.tar.gz
cd expat-1.95.8.tar.gz
./configure
make
make install

Sablotronのインストール
http://www.gingerall.com/charlie/ga/xml/p_sab.xml

tar zxvf Sablot-1.0.2.tar.gz
cd Sablot-1.0.2
./configure
make
make install

php configure時に

–enable-xslt –with-xslt-sablot

を追加する。

しかし、実際にコレを使う場面はほとんど無いといっても良い。
たまたま使いたいと言う奴がいたので入れてみました。

MySQL5.0.3-beta

今回MySQL5を入れる目的は、噂のストアドプロシージャを試してみたかったのですよ。
MySQL4.x系はまたあとで。

ミラーサイトからダウンロード
http://download.softagency.net/MySQL/downloads/mysql/5.0.html

Tarball 5.0.3-betaをコンパイルしてインストール

wget http://download.softagency.net/MySQL/Downloads/MySQL-5.0/mysql-5.0.3-beta.tar.gz

#Unicodeに対応しているのでUTF-8を指定
#–with-charsets=utf8
./configure –prefix=/usr/local/mysql5 –with-charset=utf8 –with-extra-charsets=all –with-mysqld-user=mysql
make
make install

データベースの初期化して以前の設定ファイルを参考に新しい設定ファイルを作成

./scripts/mysql_install_db –user=mysql
mv /etc/my.cnf /etc/my–.cnf
cp ./support-files/my-medium.cnf /etc/my.cnf
vi /etc/my.cnf // 設定を変更する
# ディレクトリのオーナーをmysqlにする
chown -R mysql.mysql /usr/local/mysql5

データベースの起動

/usr/local/mysql5/bin/mysqld_safe –user=mysql &

予めdumpしておいたバックアップをリカバリ。
ついでに自動起動スクリプトも変更しておく。

./support-files/mysql.server /etc/init.d/rc.mysql

rootのパスワードを設定

mysqladmin -u root password ‘パスワード’
mysqladmin reload

データベースからユーザー・パスワードが空のものはDELETEしておく。

PHPやらJavaから使うには再度これらをコンパイルしなきゃならないが、とりあえず今はやらない方向で。

ん~なんでMySQLはコンパイルするのに時間がかかるんだろう…そんなわけでストアドプロシージャを試すのはまた今度。

(FCS) Flash Communication Server MX

MacromediaのFlash Communication Server MX (FCS)をインストールしてみました。
macromediaに会員登録すればダウンロードできます。
Windows版とLinux版がありますが、今回はLinux版をインストール。
今回のインストールはデベロッパー版となります。
最大接続数や帯域幅が制限されるだけで、開発するだけなら問題はないです。

本当は別にFCSサーバーをたてたかったんですが、空きPCがなかったのでWEBサーバーと共存させます。

まずダウンロードしたアーカイブを適当なところ(/usr/local/srcとか)にアップします。

解凍

tar zxvf commserver1_5_dev_edition.tar.gz

cd FCS_1_5_r120_linux

./installFCS

エラーでました。orz
[エラー]

./fcsconfig: error while loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file: No such file or directory

ERROR: Your are running the Macromedia Flash Communication Server MX installer
on the wrong platform.

libstdc++が無いとかなんとかなのでインストール。
以前にapt-getをいれたのでapt-getでインストール。

apt-get install compat-libstdc++
rpm -qa | grep compat-libstdc++
compat-libstdc++-7.3-2.96.118

インストール再開

./installFCS

./installFCS: line 221: [: -eq: unary operator expected

ERROR: Your distribution, unknown, is not supported by this
Macromedia Flash Communication Server MX installer.

またエラー。
今度はインストールさせようとしているサーバーはサポート対象外ですよ。みたいな事がでる。

./installFCS ?

Usage: installFCS [OPTION]…
-platformWarnOnly warn if running installer on invalid platform
-usage display this help and exit

引数に-platformWarnOnlyを入れて強制インストール

./installFCS -platformWarnOnly

– 適当にEnterキーを押して規約を読む
To install Macromedia Flash Communication Server MX now, press ENTER.

To cancel the installation at any time, press Control-C.
[ENTER]

– 規約に同意しますか?
Do you agree with the license agreement? (y/n): y

– ライセンスキーを入力
– 今回はデベロッパー版としてインストールなので空のまま
Are you upgrading to Macromedia Flash Communication Server MX 1.5 from a previous
version? If so please enter your old license number. You do not need to provide
this information if you have purchased a full version instead of an upgrade.
You may press ENTER to skip this question.
Old License:

– ライセンス入力の続き
Enter the license number for the Macromedia Flash Communication Server MX 1.5
or press ENTER to proceed without one. Use the Administration Console to enter
one later.
License:

– インストールするディレクトリを決める。
– デフォルトで/opt/macromedia/fcs
Macromedia Flash Communication Server MX 1.5 requires approximately 25MB of
disk space.

The installer will install Macromedia Flash Communication Server MX 1.5 in the
following directory
Default [/opt/macromedia/fcs]: /usr/local/macromedia/fcs

– サンプルをインストールするかどうか。
Do you want to install the sample applications and documentation? (y/n)
Default [y]:

– サンプルをインストールするディレクトリを決める。
You have chosen to install the Macromedia Flash Communication Server MX sample
applications.

If you have a web server and want the sample applications available, the
sample applications must be placed where the web server can serve them.

Please enter the web server publishing directory you want the sample
applications installed to
Default [/usr/local/macromedia/fcs]:

– ポートを決める。変更する必要はない。
The Macromedia Flash Communication Server MX communicates on the IANA-assigned
port of 1935, which is the port most Flash applications expect.

Please enter the Macromedia Flash Communication Server MX port
Default [1935]:

– ここもそのまま。
Please enter the port to use for the Admin service. You can only specify one
admin port.
Default [1111]:

– Administration Consoleにログインするための管理者名とパスワードを入力する。
The administrative username and password you provide here is required to use
the Macromedia Flash Communication Server MX Administration Console for
administration, monitoring, and debugging.

Please enter the administrative username: [管理者名]

– パスワード。
Please enter the administrative password:
Confirm password:

– どのユーザーでFCSを実行するか決める。
When the Macromedia Flash Communication Server MX service is run, the service
can be run as a user other than “root”. The server would change to this user
when the server is started and has acquired its ports.

Please enter the user that the Macromedia Flash Communication Server MX service will run as
Default user [nobody]:

– ユーザー名入力
Please enter a valid user group for the “nobody” user: [ユーザー名]

– デーモンで起動するかどうか?
Do you want the Macromedia Flash Communication Server MX service to run as a
daemon? (y/n)
Default [y]:

– インストール後、FCSサーバーを起動するかどうか。
Do you want to start the Macromedia Flash Communication Server MX
after the installation is done? (y/n)
Default [y]:


———– Install Action Summary ———–

Installation directory = /usr/local/macromedia/fcs

Sample applications directory = /usr/local/macromedia/fcs

FC Server Port = 1935
FC Admin Server Port = 1111

Administrative username = [管理者名]
Administrative password = (suppressed)

FCS owner = nobody

FCS service user = nobody
FCS service user group = nobody

FCS run as daemon = Yes
Start FCS = Yes

– OKならyでインストール開始
Proceed with the installation? (y/n/q):

HTML関係をWEBサーバーのドキュメントルートにコピーする。

cp flashcom_help DOCUMENT_ROOT/flashcom_help

インストール後に/etc/rc.d/init.d/fcsという起動スクリプトができるのでこれでstartしたりstopしたりできる。

つぎにFCSのアップデートをする。
必要に応じてバックアップを取る。

cd macromedia/fcs
/etc/rc.d/init.d/fcs stop
wget http://download.macromedia.com/pub/flashcom/updaters/1_5_release_2/fcs_linux_updater_r2.tar.gz
tar zxvf fcs_linux_updater_r2.tar.gz
/etc/rc.d/init.d/fcs start

アップデート終了。
1111と1935のポートを使用するのでルーターのポートを空けておく。
一応80,443も使用できるっぽいが設定が面倒。
とくに今回のようにWEBサーバーと共生させると。
FCSはapacheとかIISとかと関係が無いので、余裕があるなら別サーバーに構築するのがいいのかもね。

いっぱい通信ゲームつくってみようかな。