うちでは、Debian(Sarge)でqmail + qmail-scanner + SpamAssassin + ClamAVでメールサーバのウイルスとスパムのチェックをしているわけですが、最近、必要なメールをClamAVがZip.ExceededFileSizeで検出してしまっているようなので設定変更。
と、その前にDebian(Sarge)でClamAVを使うには、
apt-lineへ以下の行を追加して
#ClamAV
deb http://ftp2.jp.debian.org/debian-volatile sarge/volatile main
海外の方は適当にミラーサイトを指定してください。
apt-get update
apt-get install clamav clamav-daemon unrar lha arj debconf-utils unzoo
ぐらいでインストールされるでしょう。
Debianはstableだとバージョンはあがらないので、オフィシャルのパッケージだと、パターンのアップデートでバージョンが古いよって警告がでてしまうし、そもそも古いのはダメでしょうということで、Debian volatile projectのを使いましょうということですね。
自分的にはオフィシャルが基本ですが、これだけはDebian volatile projectのを使ってます。
んで、問題の「Zip.ExceededFileSize」ですが、パッケージでインストールしている場合だと以下のようになっています。
/etc/clamav/clamd.conf
ArchiveMaxCompressionRatio 250
こいつを
/etc/clamav/clamd.conf
ArchiveMaxCompressionRatio 1000
ぐらいにしておきました。
他圧縮関係のデフォルト値では、
再帰的に解凍・展開する際の深度の上限(5まで)
ArchiveMaxRecursion 5
圧縮ファイル内の最大ファイル数の上限(1000ファイルまで)
ArchiveMaxFiles 1000
回答・展開する圧縮ファイルの容量の上限(10Mまで)
ArchiveMaxFileSize 10M
解凍後の比率がこれより大きくなるときは、「Zip.ExceededFileSize」とする(250%以上)
ArchiveMaxCompressionRatio 250
他は以下の関連URL参照
関連
binary packages and ports(ClamAV)
4.2.2.clamav.confの設定(ClamAVのページ)
2005/09/26追記
でっかいテキストをzipにしてると、まだ引っ掛かるようなので、以下のように変更しました。
/etc/clamav/clamd.conf
ArchiveMaxFileSize 100M
ArchiveMaxCompressionRatio 1000
2005/09/27追記
さらにパラメータ変更、変更したパラメータは元に戻して
ArchiveBlockMaxをコメントアウトして、規定以上の圧縮ファイルは検査しないことにして対応しました。
/etc/clamav/clamd.conf
ArchiveMaxFileSize 10M ←元に戻す
ArchiveMaxCompressionRatio 250 ←元に戻す
#ArchiveBlockMax ←コメントアウト
ということで、SPARC版は、kernel2.4でインストールしますが、2.6へアップグレードした際にキーボードがきなかくなります、リモートからログインできるのでいいですが、ちょっと困っていたところ、解決策がリリースノートにちゃんと書いてありました(^^;
リモートからSSHかなんかでログイン
dpkg-reconfigure console-data
Select keymap from full list で pc を選択
Debian GNU/Linux 3.1 (`sarge’) リリースノート (SPARC 用)
5.2.1 キーボードの設定 の欄参照
DebianのPHP4でMicrosoftSQLServerと接続してるメモ
とりあえず、必要なものをインストール
apt-get install apache2 php4 libapache2-mod-php4 php4-sybase
php4-sybase がはいってればOK
SQLサーバとの接続設定(freetdsの設定)
/etc/freetds/freetds.conf
[サーバ名]
host = サーバのIPアドレス
port = 1433
tds version = 7.0 (SQLServer6.5なら、4.2)
charset = sjis
client charset = eucjp
language = japanese
接続テスト
$con = mssql_connect("サーバ名", "ログインID", "パスワード");
mssql_select_db("DB名", $con);
$sql = "SELECT * FROM test";
$rs = mssql_query($sql, $con);
$tmp = mssql_result ($rs, 0, 0);
print "Test : {$tmp}";
mssql_close($con);
ハマリ
SQLサーバ側のテーブルの定義でnvarcharの列がある場合、もってくるとなぜか半分のバイトになってちょんぎれたので、varcharとかにCASTで変換する必要がありました。
$sql = “select NAME,cast(NAME as varchar(50)) from test”;
前に全部ソースから入れてみてうまく行かなかったんですが、Debianのパッケージで全部すませたらあっさり繋がりました。
某氏がサクラエディタのバージョンアップのことを書いておられるので便乗して、
VisualStudioとかEclipseの補完がどんなかはあんまり使ったことないのでわからないですが、うちの場合は、PHPをサクラエディタでさわることがおおいので、以下のようにして補完とHTMLヘルプ呼び出しをしてます。
サクラエディタからインストーラのパッケージをダウンロードしてインストールすれば、PHPのキーワードファイルも添付されているので、
まず、タイプ別設定でPHPの項目を新規に作成して、
作成したPHPのタイプ別設定「支援」プロパティで
入力補完機能
keywordPHP.KWD
キーワードヘルプ機能
keywordphp.khp
外部HTMLヘルプの設定
php_manual_ja.chm
PHPのchm形式のファイルは、このへんからダウンロード。
以上の設定をして、
Ctrl + Space で補完と候補表示
F1 で HTMLヘルプ表示
で使用可能です。
補完はあんまり使わないけど、HTMLヘルプの呼び出しは重宝してます。
PostgreSQLのchm形式のヘルプ欲しいのですが、どっかにないでしょうか?
Apache2でクライアント証明書認証(Debian Sarge)
Debian(Sarge)のApache2とopensslを使って、独自CAを作成し、クライアント証明書を発行しその証明書で認証してみるメモ
とりあえずapache2のインストール
openssl等必要なものは一緒にインストールされます。
apt-get install apache2
◆独自認証局の作成
認証局CAの作成
今回作業用フォルダは/etc/sslを前提にしています。
CA関係のファイルは/etc/ssl/CA
サーバ証明書、クライアント証明書は/etc/apache2/ssl
へそれぞれ入れることとします。
cd /etc/ssl
vi openssl.cnf (CA関係のファイルをいれるフォルダ)
>dir = ./CA # Where everything is kept
※CA作成用のスクリプトの雛形コピー
cp /usr/lib/ssl/misc/CA.sh ./
vi CA.sh
>CATOP=./CA
認証局CAの作成
cd /etc/ssl
./CA.sh -newca
CA certificate filename (or enter to create)
止まるので改行をいれる
Making CA certificate ...
Generating a 1024 bit RSA private key
.............++++++
.......++++++
writing new private key to './CA/private/./cakey.pem'
Enter PEM pass phrase: CAの秘密鍵のパスフレーズ
Verifying - Enter PEM pass phrase: CAの秘密鍵のパスフレーズ確認
Linuxをいれてはみたが、やっぱり仕事がらWindowsがメインなので、ブートローダーはNT Loaderにしておきたいなということでメモ
前提条件
Linuxのブートローダ(GRUBやLILO)はMBRでなく、インストールしたパーティションの先頭にいれてあること(hda6とか)
まちがってMBRにインストールしてNT Loaderに戻したいときはこのへん
その1(Linuxでも作業)
1.ブートセクタをddコマンドで抜き出して保存
dd if=/dev/hda6 of=ubuntu.pbr bs=512 count=1
2.WindowsのC:などに抜き出したファイルをどうにかしてもってくる
c:ubuntu.pbr
3.boot.iniへ以下のように追加する
c:ubuntu.pbr=”Ubuntu”
その2(Windowsのみで作業)
1.BootPartをダウンロードし解凍
2.コマンドプロンプトより「bootpart.exe」を起動しパーティションの一覧表示
E:Tempbootpa26>bootpart.exe
Boot Partition 2.60 for WinNT/2K/XP (c)1995-2005 G. Vollant (info@winimage.com)
WEB : http://www.winimage.com and http://www.winimage.com/bootpart.htm
Add partition in the Windows NT/2000/XP Multi-boot loader
Run "bootpart.exe /?" for more information
Physical number of disk 0 : 1ecfb89b
0 : C:* type=7 (HPFS/NTFS), size= 10482381 KB, Lba Pos=63
1 : C: type=f (Win95 XInt 13 extended), size= 28587667 KB, Lba Pos=20964825
2 : C: type=7 (HPFS/NTFS), size= 4192933 KB, Lba Pos=20964888
3 : C: type=5 (Extended), size= 10241437 KB, Lba Pos=29350755
4 : C: type=7 (HPFS/NTFS), size= 10241406 KB, Lba Pos=29350818
5 : C: type=5 (Extended), size= 7815622 KB, Lba Pos=49833630
6 : C:* type=83 (Linux native), size= 7815591 KB, Lba Pos=49833693
7 : C: type=5 (Extended), size= 5855692 KB, Lba Pos=65464875
8 : C: type=83 (Linux native), size= 5855661 KB, Lba Pos=65464938
9 : C: type=5 (Extended), size= 481950 KB, Lba Pos=77176260
10 : C: type=82 (Linux swap), size= 481918 KB, Lba Pos=77176323
3.パーティションの一覧からLinuxのブートローダのパーティション番号を調べる
今回は「6」です。
4.「bootpart.exe 6 c:ubuntu.pbr “Ubuntu”」のように入力する
「6」はLinuxのパーティション番号
「c:ubuntu.pbr」ブートセクタの抜き出したファイル名(任意)
「”Ubuntu”」NT Loaderで選択する名前(任意)
5.以下のように表示されboot.iniも自動で書き換えられます。
Writing a boot sector using LBA position 49833693 (0x2f866dd)
c:ubuntu.pbr written
C:BOOT.INI updated
6.リブートしてみて確認
WindowsXPのマシンにUbuntuをインストールしてデュアルブートにしてみたものの、ブートローダーをGRUBにしてしまっため、NDLDRにもどそうとfixmbrを使おうとしたがどこにはいってるんだっけということでメモ
その1
回復コンソールをインストールする
WindowsXPのインストールCDをいれて
D:i386winnt32.exe /cmdcons
としてインストールしておく、ブート時のOSに選択できるようになるらしい
(なぜかしっぱい)
その2
WindowsXPまたは、Windows2000のインストールCDよりCDブートし、インストールではなく、修復を選択して回復コンソールへ
ログインするWindowsのディレクトリとAdministratorのパスワードを聞いてくるので、それぞれ入力して回復コンソール画面へ
あとは、fixmbrコマンドを入力し、リブートして完了です。
その3
MS-DOS(または、Windows9x)のフロッピーから起動してfdisk /mbrでもたぶんOK
Trackback モジュール(Drupal PostgreSQL)
trackbackしていただいた方、ごめんなさい
DrupalのTrackbackモジュールにバグがあってエラーになってました。
エラーログで赤くでてたのを見なかったことにして無視してたのですが(^^;
2件目から追加されてませんでした。
たぶん、このDrupalをPostgreSQLで使ってる人があまりいないので、気づかれないのかなー
修正点をメモしておきます。
SELECT nextval(trackback_received_seq) でトラックバックをシーケンスで取ってるところがあるのに、integerの宣言だけになってるので、nextval()関数が動かなくてエラーになってました。
テーブルを作り直すなら、以下のSQLを流せばよいでしょう。
> DROP TABLE trackback_received;
CREATE TABLE trackback_received (
nid integer NOT NULL,
trid serial,
created integer NOT NULL,
site varchar(255) NOT NULL,
name varchar(60) NOT NULL,
subject varchar(64) NOT NULL,
url varchar(255) NOT NULL,
excerpt varchar(255) NOT NULL,
status smallint default '0',
PRIMARY KEY (trid)
);
どうしてもテーブルを作り直したくないガンコな人は、
CREATE SEQUENCE trackback_received_trid_seq; のSQLを流してシーケンス作成
trackback_receivedテーブルのtridのデフォルトをnextval(‘public.trackback_received_trid_seq’::text)に変更
でもたぶん、OKでしょう。
サーバはs151
drupal-4.6.2
drupal.orgのDownload latest releaseのあたりからダウンロード。
tar.gz形式なので、PCで解凍して、XREAの/public_html内にアップロード
※ディレクトリをつくるなり適当に /drupalとか
今回は、/public_html/drupalへいれるものとします。
.htaccessの編集
広告の自動挿入をされるとうまく表示できないので自動挿入は停止
Drupal内の設定で広告を挿入するようにします。
/public_html/drupal/.htaccess
LayoutIgnoreURI * を1行挿入
tmpとfileのフォルダ作成
/public_html/drupal/files
/public_html/drupal/tmp
を作成し、この二つのディレクトリのみパーミッションを「777」にしておく。
PostgreSQLのDB作成
XREAの管理画面にてデータベース作成
PostgreSQLの場合、文字コード選択でUNICODEを選択(重要)して作成ボタンをおしてください。
MySQLでやりたい場合は、MySQLの作成ボタンを押しておいてください。
#作成まで、15分ぐらい?待つ!
PostgreSQLのテーブル作成
上のXREAの管理画面にてPhpPgAdminでも、SSHにてログインしてpgsqlでもどちらでもいいですが、
database/database.pgsql
のSQLを流して必要なテーブル作成
MySQLの場合は、database.mysqlです。
DrupalのDB接続設定
/public_html/drupal/sites/default/settings.php
をダウンロードして、以下の2行を自分にあわせて書き換え、アップロード
$db_url = "pgsql://ユーザID:パスワード@''/DB名(ユーザID)";
$base_url = 'http://ユーザID.s151.xrea.com/drupal'; (最後の/は無し)
#PostgreSQLの場合、サーバアドレスでlocalhostが動かないようなので
#''とすることでつなぐようにしました。
MySQLの場合
$db_url = 'mysql://username:password@localhost/database';
管理者ユーザ作成
http://ユーザID.s151.xrea.com/drupal/ へアクセスすると
管理者ユーザを作れといってくるので、create the first account.のリンクへアクセスしID,メールアドレスを入力。
Your password is hogehoge. とでますが、すぐにLog inし、my accountのeditでパスワードを変えておきましょう。
日本語化
管理者でログイン後の左のメニューadministrator->modulesより
localeのモジュールにチェックをつけて、下のSave configurationをクリック
すると左のメニューにlocalizationのメニューが追加されます。
Drupal4.6.1日本語翻訳ワーク
Japanese translation(日本語)
このへんから日本語翻訳ファイルをダウンロード
administrator->localizationからadd languageを選んで
ドロップダウンのメニューより、Japanise(日本語)を選択、Add language
listの画面にてjaをEnabledとDefaultにしてSave configurationをクリック
importの画面にて、Language file を上でダウンロードしたファイル
import intoはJapaneseを選択し、Importボタンをクリック
以下日本語になっている状態で説明します。
初期設定など
管理->設定
クリーンURL 有効(URLに?とかつかないようにする)
ファイルシステムのパス files
テンポラリーディレクトリ /tmp → tmp へ修正(/を削除)
デフォルトのタイムゾーン +0900へ変更
広告挿入
管理->テーマのプライマリーリンクに広告挿入のタグをいれておくとデフォルトのテーマの場合は、いい感じに表示されます。
cronジョブ
XREAの無料のところではCRONが使えないので、
どっかから適当に毎日
http://ユーザID.s151.xrea.com/drupal/cron.php
へアクセスするようにしておく。
最近のコメント