久々のサーバーメンテの忘備メモ。アップデートする時にハマったことや注意点など。
とはいっても、同じ鯖上にメモ残しても、落ちるときは一緒なので意味がないのだけど。

FreeBSD の ports を使う場合は、
MySQL→Apache→PHP の順で入れていくと連携する。

[1] MySQL
/usr/ports/database/mysql55-server/

MySQL-6.0系統はいったん開発中止になってしまったので、現状ではMySQL-5.5.xがよい。
make する前に、Makefile を vi で編集して、文字コードを明示的に、UTF8にすべき。

#.if defined(WITH_CHARSET) && ${WITH_CHARSET} != “”
CONFIGURE_ARGS+=–with-charset=utf8 ←※EUCはujis。 SJISはsjis、UTF8はutf8。
#.endif
#.if defined(WITH_XCHARSET) && ${WITH_XCHARSET} != “”
CONFIGURE_ARGS+=–with-extra-charset=all

#.endif

*設定ファイル
/etc/my.cnf

[mysqld]character_set_server = utf8   ※default-character-setはサポートされなくなった。起動でひっかかる。

skip-character-set-client-handshake
skip-networking
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8
*RAM1GB以上あるならば、以下のデフォルト設定を使用するのがよい。
/usr/local/share/mysql/my-huge.cnf
*文字コードの確認

% /usr/local/bin/mysql -u root -p 

mysql> status
Server characterset:   utf8
Db      characterset:   utf8
Client  characterset:   utf8
Conn.  characterset:  utf8
mysql> show variables like ‘char%’;
character_set_client           utf8
character_set_connection   utf8
character_set_database     utf8
character_set_filesystem   binary
character_set_results        utf8
character_set_server         utf8
character_set_system      utf8
*パスワード未設定チェック
mysql> select user,host,password from mysql.user;
root     loalhost         [password]
root    domain.com   [password]
root    127.0.0.1       [password]
user    localhost       [password]
user    %                 [password]
[2] Apache
/usr/ports/www/apache22/

*設定ファイル
/usr/local/etc/apache22/httpd.conf
/usr/local/etc/apache22/extra/

[3] PHP
/usr/ports/lang/php5-extensions/

*make config

[X] GD
[X] ICONV
[X] MBSTRING
[X] MCRYPT
[X] MYSQL
[X] PDO
[X] XML
*設定ファイル
/usr/local/etc/php.ini
user_dir = public_html   ※DocumentRoot以外の、ユーザディレクトリでもPHPの動作を有効に。
[4] PHPMyAdmin
/usr/ports/databases/phpmyadmin/
*設定ファイル
/usr/local/www/phpMyAdmin/config.inc.php
$cfg[‘blowfish_secret’] = ‘任意の文字列; // use here a value of your choice
$i=0;
$i++;
$cfg[‘Servers’][$i][‘auth_type’] = ‘cookie’;
*Webログイン画面では、rootで入らないと特権操作ができない。

[5] Awstats

/usr/ports/www/awstats/

*設定ファイル
/usr/local/www/awstats/cgi-bin/awstats.conf

[6] ImageMagick
/usr/ports/graphics/ImageMagick/

MTで必要とされる画像処理パッケージ。
Portsでのインストールにおける注意点は、「PDFサポートを無効にする」こと。
PDFを有効にすると、依存関係でGhostScript8 の makeでコケる。

*make config

[X] IMAGEMAGICK_16BIT_PIXEL
[X] IMAGEMAGICK_FFTW
[X] IMAGEMAGICK_JPEG
[X] IMAGEMAGICK_JPEG2000
[X] IMAGEMAGICK_LQR
[X] IMAGEMAGICK_PERL
[X] IMAGEMAGICK_PNG
[X] IMAGEMAGICK_TESTS

[ ] IMAGEMAGICK_PDF   ※今回の鬼門はPDF→GhostScript8 だった。

[7] OpenSSH
/usr/ports/security/openssh-portable/

インストール時のオプションで、
 OPENSSH_OVERWRITE_BASE=yes
を指定すると、既存のsshdを上書きし、/usr/local/sbin/sshd ではなく /usr/sbin/sshd として作成される。
設定ファイル一式は、/usr/local/etc/ssh に入る。
*make config
[X] PAM
[X] TCP_WRAPPERS
[X] LIBEDIT
[X] KERBEROS
[X] OVERWRITE_BASE   ※既存のsshdを、新しいもので上書きする。
*設定ファイル
/usr/local/etc/ssh/sshd_config (FreeBSDネイティブの、/etc/ssh/sshd_config は無効。)
HostKey /usr/local/etc/ssh/ssh_host_rsa_key   ※公開鍵の指定
HostKey /usr/local/etc/ssh/ssh_host_dsa_key
*バージョン確認
% ssh -V 
[8] DenyHosts
/usr/ports/security/denyhosts/

*設定ファイル
/usr/local/etc/denyhosts.conf

By admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です