キーワード  

B-CITYでHDDを購入すれば
FreeBSDがインストール済み
あなたのマシンにつけるだけ


☆ カテゴリー ☆
  序章
  動作環境
  インストール
    ├OS
    ├FreeBSDへのログイン
    ├Webminサーバー
    ├SSHサーバー
    ├Webサーバー
    ├  Mailサーバー
    ├DBサーバー
    ├FTPサーバー
    ├ファイルサーバー
    ├Usermin
    └その他
  設定
  Webminでの設定
  チューニング
  ウィンドウシステム
  ウィンドウマネージャー
  スクリプト言語
  システム管理
  デスクトップアプリケーション
  サーバーサイドアプリケーション
  コマンド
  印刷
  シェル・シェルスクリプト
  落書き
  備考
  HD-BSD
  基本操作
  自宅サーバー
  postfix postfixadmin mysql dovecot courier-imap
   戻る


バーチャルメールドメインに対応した 簡単な管理ツールです。

↓↓↓こんなことができるようになります、スパム撃退
「スパム防止のため、送り先のメールアドレスはメールにつき50件(ログイン毎、計100件)、送信作業は15秒に1回に限られています。」

インストールの「みそ」は、ユーザおよびグループのIDを理解しておくことと、何処にバーチャルメールディレクトリーを作るか最初に決める事、認証形式をよく理解すること(mysqlはmd5crypt)。

外国旅行に日本のテレビを連れて行こう。

ネット環境さえあれば、どこからでも テレビが見えます。

観るだけでなく 録る 操る 操作する

 新しい 生活が始まる!!

     ロケーションフリー



・・・管理モードON・・・

インストール
Mailサーバー

postfix postfixadmin mysql dovecot courier-imap

最初に apacheの DirectoryIndexに index.phpを加えておく

次にphpにpearを追加しておく


# cd /usr/ports/mail/postfixadmin; make install clean

# cd /usr/local/www/postfixadmin


1. Create the MySQL Tables
--------------------------
In /usr/local/www/postfixadmin/DATABASE.TXT you can find the table


structure that you need in order to configure Postfix Admin and Postfix
in general to work with Virtual Domains and Users

2. Configure
------------
Check the /usr/local/www/postfixadmin/config.inc.php file. There you
can specify settings that are relevant to your setup.

The default password for the admin part of Postfix Admin is admin/admin.
This is specified in the .htpasswd file in the admin directory. Make sure
that the location of the .htpasswd file matches your path.


3. Configure Apache
-------------------
Add a line in your httpd.conf to allow the use of .htaccess file.


Options Indexes
AllowOverride AuthConfig




# mysql -uroot -p < DATABASE_MYSQL.TXT

データベースはpostfixという名前で、ユーザ名postfix、パスワードpostfixで

アクセスできるように設定されている。

変更したい場合にはDATABASE_MYSQL.TXTに適宜変更を加える。



# ee /usr/local/www/postfixadmin/config.inc.php 以下を編集

$CONF['default_language'] = 'ja'; //日本語化する場合は編集
$CONF['database_password'] = 'postfixadmin'; //Postfix Adminで使用するデータベースのパスワード
$CONF['admin_email'] = 'postmaster@change-this-toyour.domain.tld'; //管理者のメールアドレス
$CONF['default_aliases'] = array ( ); //デフォルトのメールエイリアス
$CONF['encrypt'] = 'md5crypt';




/postfixadmin/setup.phpをブラウザでアクセスしてセットアップの確認を行う。

問題がなければ、setup.phpを削除またはリネームした上で、

admin sectionにアクセスして初期設定を行う。(admin adminでアクセスできる。)



postfixadmin 日本語化

# cd /usr/local/www/postfixadmin/languages
# wget http://www.aconus.com/~oyaji/suse9.2/ja.lang
# chmod 640 ja.lang
# cd ../
# sed -i "s/$CONF['default_language'] = 'en'/$CONF['default_language'] = 'ja'/g" config.inc.php
# cd ./templates
# sed -i "s/iso-8859-1/Shift_JIS/g" header.tpl



# cd /usr/port/mail/postfix

# make install clean


MySQLがenableになっていなければならない。


無事にインストールできたら、下記をurlを利用して設定ファイルを編集する。

http://www.819410.com/FreeBSD6/shop/-98.html

問題なく postfixが起動したならば


# ee /usr/local/etc/postfix/main.cf を以下に編集

alias_maps =
alias_databases =


/usr/local/etc/postfix/main.cfの末尾に以下をざっくり追加する。

local_transport = virtual

virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_base = /var/mail
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 125
virtual_uid_maps = static:125
virtual_gid_maps = static:6
virtual_transport = virtual

# Additional for quota support
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
virtual_overquota_bounce = yes







この設定では、Maildir形式のメールスプールが/var/mail/username@my.domain/というディレクトリに作られる。 /var/mailのもともとのパーミッションに合わせて、ユーザpostfix(UID=125)、グループmail(GID=6)の権限で書き込むように設定している。/etc/passwd, /etc/groupを見て異なる値になっていたらその値に合わせる必要がある。

次にmain.cfで使っている4つのmysql_virtual_XX.cfファイルを用意する。各々の内容は以下の通り。
# ee /usr/local/etc/postfix/mysql_virtual_alias_maps.cf

user = postfix
password = postfix
hosts = localhost
dbname = postfix
query = SELECT goto FROM alias WHERE address='%s' AND active='1'

# ee /usr/local/etc/postfix/mysql_virtual_domains_maps.cf

user = postfix
password = postfix
hosts = localhost
dbname = postfix
query = SELECT domain FROM domain WHERE domain='%s'
#optional query to use when relaying for backup MX
#query = SELECT domain FROM domain WHERE domain='%s' AND backupmx='0' AND active='1'

# ee /usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf

user = postfix
password = postfix
hosts = localhost
dbname = postfix
query = SELECT maildir FROM mailbox WHERE username='%s' and active='1'

# ee /usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf

user = postfix
password = postfix
hosts = localhost
dbname = postfix
query = SELECT quota FROM mailbox WHERE username='%s'

4つのファイルを作ったらmysql_virtual_XX.cfを人様に見られないようにchmod & chgrpしておく。

# chmod 640 mysql_*
# chgrp postfix mysql_*

SASLの設定などは後からでもできるので省略。
起動の設定

/etc/rc.confに以下の行を追加する。

postfix_enable="YES"
sendmail_enable="NONE" ("NO"ではなくて"NONE")

/etc/periodic.confに以下の行を追加する(なければ新規に作る)。

daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"






□courier-imap編 (初級者でも設定可能)

courier-imapをインストール

# cd /usr/ports/mail/courier-imap/

# make install clean

※ mysqlを忘れないようにする


# ee /usr/local/etc/authlib/authdaemonrc

下記を編集 authmysqlにする
authmodulelist="authuserdb authvchkpw authpam authldap authmysql authpgsql"

authmodulelist="authmysql"

version="authdaemond.mysql"




# ee /usr/local/etc/authlib/authmysqlrc

修正時には、各値の設定区切りはTABキーになっています。スペースではありませんのでご注意ください。

















□dovecot編 (上級者向け)

http://www.819410.com/FreeBSD6/shop/-18.html

上記urlを参考に dovecot をインストール

#cd /usr/ports/mail/dovecot-sieve
# make install clean

※ mysqlを有効にしておく


■上記のdovecot-mysql.conf を作成

# MySQL を使用(mysql, pgsql が選択可能)
driver = mysql
# 認証方法の指定(PLAIN, PLAIN-MD5, DIGEST-MD5, CRYPT)
default_pass_scheme = PLAIN-MD5
# Postfix Admin から使用するデータベースの情報
connect = host=localhost dbname=postfix user=postfix password=postfix
password_query = SELECT password FROM mailbox WHERE username = '%u' AND active = '1'
# 10000 AS uid ,10000 AS gid の 10000 はメールボックス用ユーザー、グループのIDです。
user_query = SELECT maildir, 10000 AS uid, 10000 AS gid FROM mailbox WHERE username = '%u' AND active = '1'

作成したファイルにはデータベースのパスワードが含まれていますので、ファイルのパーミッションを変更しておきます。

# chmod 600 /etc/dovecot-mysql.conf
# chgrp dovecot /etc/dovecot-mysql.conf


# ee /usr/local/etc/dovecot-mysql.conf

driver = mysql
default_pass_scheme = PLAIN
connect = host=localhost dbname=postfix user=postfix password=postfix
password_query = SELECT password FROM mailbox WHERE username = '%u' AND active = '1'
user_query = SELECT maildir, 0 AS uid, 6 AS gid FROM mailbox WHERE username = '%u' AND active = '1'









Dovecot のバーチャルドメイン設定

Dovecot をバーチャルドメインに対応させるには、

'/etc/dovecot.conf' に以下を追加します。基本的な設定は完了しているものとします。


# メールボックスの場所を指定

#mail_location = maildir:~/Maildir
mail_location = maildir:/var/mail/virtual/%u

# 認証方法の変更
# パスワードの取得を SQL に変更
#passdb shadow {
#}
passdb sql {
# Path for SQL configuration file, see doc/dovecot-sql.conf for example
args = /usr/local/etc/dovecot-mysql.conf
}
# ユーザー名の取得を SQL に変更
#userdb passwd {
#}
userdb sql {
# Path for SQL configuration file, see doc/dovecot-sql.conf for example
args = /usr/local/etc/dovecot-mysql.conf
}





以上の設定が完了したら Dovecot を再起動します。



# /etc/rc.d/rc.dovecot restart





バーチャル対応なのでドメイン名まで含めてひとつのアカウントです。


因みに、dovecotでSQLで認証周りで困ったら、/etc/dovecot.conf の最後のほうにある「auth_debug」を yesにすると細かい動きがログに残るのでデバッグしやすい。





☆☆☆☆☆   こんな記事もあります。   ☆☆☆☆☆

インストール済みFreeBSDへのログイン
Webminのインストール
SSHサーバーのインストール
Webサーバー Apache20 のインストール
Webmin で Apacheを操作できるように設定する。
Webmin ファイル マネージャの文字化けについて
apache20  リバース プロキシ
メールサーバーとは
インプレッション         インプレッションを書く

Copyright 2006B-CITY. All rights reserved.