Postfixのインストール -2004年12月14日
これはこれからインストールするウイルス対策ソフトやLinux自体が問題発
生時に管理者宛てに警告メールを送ります。 そのメールを送るための仕込です。
前節では外部からの接続を考慮しないセキュリティ設定をポリシーとしています
が、ここではある程度仕込んでしまって後節では変わった方法でセキュリティ対
策を考えています。
また、警告メール受信は普段使いのWindowsPCを想定しています。
(じゃなくても良いけど...)
PCからメールを見るためのPOP3サーバー(Dovecot)もあわせてインストール
します。
では、Postfixをインストールします。
|
[root@station ~]# yum -y install postfix
Setting up Install Process
Setting up Repo: crash-hat
repomd.xml 100% |=========================| 951 B 00:00
Setting up Repo: base
repomd.xml 100% |=========================| 1.1 kB 00:00
Setting up Repo: updates-released
repomd.xml 100% |=========================| 951 B 00:00
Reading repository metadata in from local files
crash-hat : ################################################## 65/65
base : ################################################## 2622/2622
updates-re: ################################################## 355/355
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for postfix to pack into transaction set.
postfix-2.1.5-2.4.FC3.i38 100% |=========================| 39 kB 00:00
---> Package postfix.i386 2:2.1.5-2.4.FC3 set to be installed
--> Running transaction check
Dependencies Resolved
Transaction Listing:
Install: postfix.i386 2:2.1.5-2.4.FC3
Downloading Packages:
postfix-2.1.5-2.4.FC3.i38 100% |=========================| 2.7 MB 00:03
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: postfix 100 % done 1/1
Installed: postfix.i386 2:2.1.5-2.4.FC3
Complete!
[root@station ~]#
|
|
|
設定ファイルの変更 -2004年12月14日
[root@station ~]# vi /etc/postfix/main.cf
68〜69行目
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
↓
myhostname = station.localdomain ← (ホスト名を「station」とした時で環境によって異なる)
#myhostname = virtual.domain.tld
76行目
#mydomain = domain.tld
↓
mydomain = localdomain
106〜109行目
#inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
↓
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
#inet_interfaces = localhost
154〜157行目
mydestination = $myhostname, localhost.$mydomain, localhost
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
# mail.$mydomain, www.$mydomain, ftp.$mydomain
↓
#mydestination = $myhostname, localhost.$mydomain, localhost
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
# mail.$mydomain, www.$mydomain, ftp.$mydomain
239〜241行目
#mynetworks_style = class
#mynetworks_style = subnet
#mynetworks_style = host
↓
#mynetworks_style = class
mynetworks_style = subnet
#mynetworks_style = host
254〜256行目
#mynetworks = 168.100.189.0/28, 127.0.0.0/8
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
↓
mynetworks = 192.168.1.0/24, 127.0.0.0/8 ← (自宅のアドレスに合わせて)
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
286行目
#relay_domains = $mydestination
↓
relay_domains = $mydestination
408〜409行目
#home_mailbox = Mailbox
#home_mailbox = Maildir/
↓
#home_mailbox = Mailbox
home_mailbox = Maildir/
539行目
#smtpd_banner = $myhostname ESMTP $mail_name
↓
smtpd_banner = $myhostname ESMTP
以下末尾に追加
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
以下、2行はスパムメール除けです 予期せねメール未達もありえます。
設定の際は各DBサイトへのリンク先を参照しポリシーを確認して下さい。
maps_rbl_domains = relays.ordb.org, all.rbl.jp
smtpd_client_restrictions = permit_mynetworks, reject_maps_rbl ,permit
|
|
|
メール管理ユーザーの登録 -2004年12月14日
警告メールを受け取る管理ユーザーを登録します。
このユーザーはメールを閲覧のみでサーバーに対しての管理者権限はありません
し、コンソールにもログインをさせません。(/sbin/nologin)
|
[root@station ~]# useradd -s /sbin/nologin mailadmin ← 「mailadmin」は任意の名前で
[root@station ~]#
|
|
|
|
パスワードを設定
|
[root@station ~]# passwd mailadmin ← 「mailadmin」は上記設定と同じ名前で
Changing password for user mailadmin.
New UNIX password: ← パスワード入力(表示はされない)
Retype new UNIX password: ← 同じパスワードを再入力
passwd: all authentication tokens updated successfully.
[root@station ~]#
|
|
|
|
パスワードが簡単だと...
|
[root@station ~]# passwd mailadmin
Changing password for user mailadmin.
New UNIX password:
BAD PASSWORD: it does not contain enough DIFFERENT characters
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@station ~]#
|
|
|
文句を言われますが、無視すればそのまま設定が完了します(笑)
|
|
メール管理ユーザーへメール転送設定 -2004年12月14日
真の管理者(root)宛てのメールをメール管理ユーザーへ転送する設定をします。
直接管理者(root)で閲覧すれば良さそうなものですが、このように転送するのが
一般的なようです。 理由は判りません(涙) 最終行(100行目)を変えます。
|
[root@station ~]# vi /etc/aliases
#root: marc
↓
root: mailadmin ← 先ほど作ったユーザー名と同じで
|
|
|
|
設定の反映
|
[root@station ~]# postalias /etc/aliases
[root@station ~]#
|
|
|
使わないメール・サーバーサービス(sendmail)を消してしまおう -2004年12月14日
「Postfix」をインストールして、使わない「sendmail」を消します。
|
[root@station ~]# yum -y remove sendmail
Setting up Remove Process
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package sendmail.i386 0:8.13.1-2 set to be erased
--> Running transaction check
Dependencies Resolved
Transaction Listing:
Remove: sendmail.i386 0:8.13.1-2
Downloading Packages:
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Erasing: sendmail 1/1
Removed: sendmail.i386 0:8.13.1-2
Complete!
[root@station ~]#
|
|
|
スッキリ♪
|
|
sasl認証サービスの起動と設定 -2004年12月14日
saslによるパスワード認証のサービスの起動とその設定です
|
[root@station ~]# /etc/init.d/saslauthd start ← sasl認証サービス起動
saslauthd を起動中: [ OK ]
[root@station ~]# chkconfig saslauthd on ← sasl認証サービス自動起動設定
[root@station ~]# chkconfig --list saslauthd ← 設定の確認
saslauthd 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← run level 2〜5の「on」を確認
[root@station ~]#
|
|
|
Postfix(smtp)サービスの起動と設定 -2004年12月14日
Postfix(smtp)サービスの起動とその設定です
|
[root@station ~]# /etc/init.d/postfix start ← Postfix(smtp)サービス起動
Starting postfix: [ OK ]
[root@station ~]# chkconfig postfix on ← Postfix(smtp)サービス自動起動設定
[root@station ~]# chkconfig --list postfix ← 設定の確認
postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← run level 2〜5の「on」を確認
[root@station ~]#
|
|
|
Dovecotのインストール -2004年12月14日
続いて、Dovecotをインストールします。
|
[root@station ~]# yum -y install dovecot
Setting up Install Process
Setting up Repo: crash-hat
repomd.xml 100% |=========================| 951 B 00:00
Setting up Repo: base
repomd.xml 100% |=========================| 1.1 kB 00:00
Setting up Repo: updates-released
repomd.xml 100% |=========================| 951 B 00:00
Reading repository metadata in from local files
primary.xml.gz 100% |=========================| 15 kB 00:00
MD Read : ################################################## 65/65
crash-hat : ################################################## 65/65
base : ################################################## 2622/2622
updates-re: ################################################## 355/355
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for dovecot to pack into transaction set.
dovecot-0.99.11-1.FC3.4.i 100% |=========================| 13 kB 00:00
---> Package dovecot.i386 0:0.99.11-1.FC3.4 set to be installed
--> Running transaction check
--> Processing Dependency: libmysqlclient.so.10 for package: dovecot
--> Processing Dependency: libpq.so.3 for package: dovecot
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for mysql to pack into transaction set.
mysql-3.23.58-13.i386.rpm 100% |=========================| 35 kB 00:00
---> Package mysql.i386 0:3.23.58-13 set to be installed
---> Downloading header for postgresql-libs to pack into transaction set.
postgresql-libs-7.4.6-1.F 100% |=========================| 9.3 kB 00:00
---> Package postgresql-libs.i386 0:7.4.6-1.FC3.2 set to be installed
--> Running transaction check
--> Processing Dependency: perl-DBD-MySQL for package: mysql
--> Processing Dependency: perl(DBI) for package: mysql
--> Processing Dependency: perl-DBI for package: mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for perl-DBD-MySQL to pack into transaction set.
perl-DBD-MySQL-2.9003-5.i 100% |=========================| 5.3 kB 00:00
---> Package perl-DBD-MySQL.i386 0:2.9003-5 set to be installed
---> Downloading header for perl-DBI to pack into transaction set.
perl-DBI-1.40-5.i386.rpm 100% |=========================| 11 kB 00:00
---> Package perl-DBI.i386 0:1.40-5 set to be installed
--> Running transaction check
Dependencies Resolved
Transaction Listing:
Install: dovecot.i386 0:0.99.11-1.FC3.4
Performing the following to resolve dependencies:
Install: mysql.i386 0:3.23.58-13
Install: perl-DBD-MySQL.i386 0:2.9003-5
Install: perl-DBI.i386 0:1.40-5
Install: postgresql-libs.i386 0:7.4.6-1.FC3.2
Downloading Packages:
dovecot-0.99.11-1.FC3.4.i 100% |=========================| 601 kB 00:00
mysql-3.23.58-13.i386.rpm 100% |=========================| 3.2 MB 00:03
postgresql-libs-7.4.6-1.F 100% |=========================| 140 kB 00:00
perl-DBD-MySQL-2.9003-5.i 100% |=========================| 111 kB 00:00
perl-DBI-1.40-5.i386.rpm 100% |=========================| 467 kB 00:00
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: perl-DBI 100 % done 1/5
Installing: postgresql-libs 100 % done 2/5
Installing: mysql 100 % done 3/5
Installing: dovecot 100 % done 4/5
Installing: perl-DBD-MySQL 100 % done 5/5
Installed: dovecot.i386 0:0.99.11-1.FC3.4
Dependency Installed: mysql.i386 0:3.23.58-13 perl-DBD-MySQL.i386 0:2.9003-5 per
l-DBI.i386 0:1.40-5 postgresql-libs.i386 0:7.4.6-1.FC3.2
Complete!
[root@station ~]#
|
|
|
設定ファイルの変更 -2004年12月14日
[root@station ~]# vi /etc/dovecot.conf
14行目
#protocols = imap imaps
↓
protocols = pop3
77行目
#login_chroot = yes
↓
login_chroot = yes
174行目
#valid_chroot_dirs =
↓
valid_chroot_dirs = /home
197行目
#default_mail_env =
↓
default_mail_env = maildir:%h/Maildir
|
|
|
Dovecot(pop3)サービスの起動と設定 -2004年12月14日
Dovecot(pop3)サービスの起動とその設定です
[root@station ~]# /etc/init.d/dovecot start ← Dovecot(pop3)サービス起動
Dovecot Imap を起動中: [ OK ]
[root@station ~]# chkconfig dovecot on ← Dovecot(pop3)サービス自動起動設定
[root@station ~]# chkconfig --list dovecot ← 設定の確認
dovecot 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← run level 2〜5の「on」を確認
[root@station ~]#
|
|
|
「yum」がダウンロードした残骸を消します -2004年12月14日
「yum」がダウンロードしたファイルがディスクに溜まっているので消します。
|
[root@station ~]# yum clean packages
Cleaning up Packages
9 packages removed
[root@station ~]#
|
|
|
すっきり♪
|
|
メールの送受信テスト -2004年12月14日
Outlook Expressでの設定例です。
メールアドレスはメール管理ユーザーを「mailadmin」で作った場合は「mailadm
in@station.localdomain」になります。
送受信のサーバーはサーバーのIPアドレスを指定して下さい。
メーラーの設定が出来たら「root@station.localdomain」宛てにメールを送信し
て下さい。
「メール管理ユーザーへメール転送設定」で設定した「root」の転送先が「mail
admin」になっていれば送ったメールがこのアカウントで受信出来るはずです。

なお、念のためお断りしておきますが、この設定で外部にサーバーを向けないで
下さい。 やったことはありませんが、メールサーバー自身のドメイン名を「lo
caldomain」としているので外部から「localdomain」を名乗って繋がれるとどん
なメール(スパム)でもリレーしてしまうかもしれません。
(大丈夫なような気もしますが、この状態で外にに向ける意味はないです)
|
|
| |