新規記事の投稿を行うことで、非表示にすることが可能です。
2016年06月05日
Redmine on docker
前々記事と
前回記事の続き。
この環境を使用し、プロジェクト管理ツール「Redmine」をインストールしてみた。
基本、下記のとおり、やってみた。
https://github.com/sameersbn/docker-redmine
- イメージのダウンロード
[root@cent7 ~]#docker pull sameersbn/redmine:3.2.1-6
- 手動でpostgreSQLのコンテナを起動
docker run --name=postgresql-redmine -d \
--env='DB_NAME=redmine_production' \
--env='DB_USER=redmine' --env='DB_PASS=password' \
--volume=/srv/docker/redmine/postgresql:/var/lib/postgresql \
sameersbn/postgresql:9.4-21
- 手動でRedmineのコンテナを起動
docker run --name=redmine -d \
--link=postgresql-redmine:postgresql --publish=10083:80 \
--env='REDMINE_PORT=10083' \
--volume=/srv/docker/redmine/redmine:/home/redmine/data \
sameersbn/redmine:3.2.1-6
- Redmineにアクセスする
http://インストールしたサーバ(dokcerが稼働するホスト)のIPアドレス:10083/
にアクセスする。
- ログイン
以下で、ログインする。
•username: admin
•password: admin
ログインできたので、、利用する。
-
no image
-
no image
-
no image
-
no image
-
no image
docker-composeのインストール
まず、ダウンロードする。
[root@cent7 ~]# curl -L https://github.com/docker/compose/releases/download/1.3.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
[root@cent7 ~]#
実行権限を付与する。
[root@cent7 ~]# chmod +x /usr/local/bin/docker-compose
[root@cent7 ~]#
2016年06月04日
docker事始め
[root@cent7 ~]# yum install -y docker
[root@cent7 ~]# rpm -qa | grep docker
docker-1.9.1-40.el7.centos.x86_64
docker-selinux-1.9.1-40.el7.centos.x86_64
docker-forward-journald-1.9.1-40.el7.centos.x86_64
docker-common-1.9.1-40.el7.centos.x86_64
[root@cent7 ~]#
[root@cent7 ~]# systemctl start docker
[root@cent7 ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
[root@cent7 ~]# systemctl -t service list-unit-files | grep -i docker
docker-storage-setup.service disabled
docker.service enabled
[root@cent7 ~]#
イメージファイルをdocker pullコマンドで、インターネット経由で取得する。
[root@cent7 ~]# docker pull centos;centos6
Using default tag: latest
Trying to pull repository docker.io/library/centos ... latest: Pulling from library/centos
1544084fad81: Pull complete
df0fc3863fbc: Pull complete
a3d54b467fad: Pull complete
a65193109361: Pull complete
Digest: sha256:1a62cd7c773dd5c6cf08e2e28596f6fcc99bd97e38c9b324163e0da90ed27562
Status: Downloaded newer image for docker.io/centos:latest
[root@cent7 ~]#
[root@cent7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/centos latest a65193109361 33 hours ago 196.7 MB
[root@cent7 ~]#
docker リポジトリから、ダウンロードしたイメージファイル群のうち、centos6というタグのついたイメージファイルから、コンテナを生成し、起動する。
--nameオプションはコンテナの名前を指定する。-iオプションは、コンテナの標準入力を開いた状態にし、-tオプションは、仮想端末を割り当て、「コンテナの標準入力にアタッチする。
[root@cent7 ~]# docker run --name test01 -i -t centos:centos6 /bin/bash
Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
[root@ada7fb668bb6 /]#
コンテナのOSのバージョンを確認します。
[root@ada7fb668bb6 /]# cat /etc/redhat-release
CentOS release 6.8 (Final)
[root@ada7fb668bb6 /]#
[root@ada7fb668bb6 /]# hostname
ada7fb668bb6
[root@ada7fb668bb6 /]#
試しに、dockerコンテナ上にの/rootディレクトリに、ファイルtestfileを作成してみる。
[root@ada7fb668bb6 /]# touch /root/testfile
[root@ada7fb668bb6 /]# ls -l /root/testfile
-rw-r--r-- 1 root root 0 Jun 4 06:09 /root/testfile
[root@ada7fb668bb6 /]#
dockerコンテナのOS環境から、離脱する。
[root@ada7fb668bb6 /]# exit
exit
[root@cent7 ~]#
ホストOS上で、過去に起動したコンテナ一覧を確認
[root@cent7 ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ada7fb668bb6 centos:centos6 "/bin/bash" 5 minutes ago Exited (130) 26 seconds ago test01
作業したコンテナを再利用できるように、コンテナのイメージ化を行う。作業したコンテナIDとイメージを指定して、コミットを行う。
[root@cent7 ~]# docker commit ada7fb668bb6 centos:centos6
4dcb99183e43d3ce417d19b753f520bc894aea858c2729ea9b3c6270f4787a7a
[root@cent7 ~]#
現在のイメージファイルの一覧を確認。
[root@cent7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos centos6 4dcb99183e43 40 seconds ago 194.6 MB
docker.io/centos centos6 e133ccd15399 34 hours ago 194.6 MB
docker.io/centos latest a65193109361 34 hours ago 196.7 MB
[root@cent7 ~]#
先程、コミットしたイメージファイル「centos:centos6」を使って、別のコンテナtest02を生成。
[root@cent7 ~]# docker run --name test02 -i -t centos:centos6 /bin/bash
Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
[root@e23e4c8f9044 /]# ls -l /root/testfile
-rw-r--r-- 1 root root 0 Jun 4 06:09 /root/testfile
コンテナtest02で/root/testfile2を生成する
[root@e23e4c8f9044 /]# touch /root/testfile2
[root@e23e4c8f9044 /]# exit
exit
[root@cent7 ~]#
ホストOS側で、生成したtest02をコミットする。
[root@cent7 ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e23e4c8f9044 centos:centos6 "/bin/bash" 2 minutes ago Exited (0) 53 seconds ago test02
ada7fb668bb6 e133ccd15399 "/bin/bash" 29 minutes ago Exited (130) 24 minutes ago test01
[root@cent7 ~]#
[root@cent7 ~]# docker commit e23e4c8f9044 centos:testfile2
b01c09c05772010e429b215463d343fa0116e8cff26709b1eca8aaf6f24c3d13
[root@cent7 ~]#
現在のイメージファイルの一覧を確認。
[root@cent7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos testfile2 b01c09c05772 50 seconds ago 194.6 MB
centos centos6 4dcb99183e43 24 minutes ago 194.6 MB
docker.io/centos centos6 e133ccd15399 34 hours ago 194.6 MB
docker.io/centos latest a65193109361 34 hours ago 196.7 MB
[root@cent7 ~]#
CentOS6.xとCentOS7とのサービス管理コマンド比較
前回記事の続き。
CentOS6.xとCentOS7とのサービス管理コマンド比較。
(CentOS6.x)
#service vsftpd start
(CentOS7)
#systemctl start vsftpd
(CentOS6.x)
#service vsftpd start
(CentOS7)
#systemctl start vsftpd
(CentOS6.x)
#service vsftpd restart
(CentOS7)
#systemctl restart vsftpd
(CentOS6.x)
#service vsftpd reload
(CentOS7)
#systemctl reload vsftpd
ただし、該当サービスのユニット管理ファイルに「ExecReload=」オプションの指定のないサービスの場合、reloadオプションはエラーになります。」
[root@cent7 ~]# cat /usr/lib/systemd/system/vsftpd.service
[Unit]
Description=Vsftpd ftp daemon
After=network.target
[Service]
Type=forking
ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
[Install]
WantedBy=multi-user.target
[root@cent7 ~]# systemctl reload vsftpd
Failed to reload vsftpd.service: Job type reload is not applicable for unit vsftpd.service.
(CentOS6.x)
#service vsftpd status
(CentOS7)
#systemctl status vsftpd
(CentOS6.x)
#service vsftpd condrestart
(CentOS7)
#systemctl condrestart vsftpd
(CentOS6.x)
#chkconfig vsftpd on
(CentOS7)
#systemctl enable vsftpd
(CentOS6.x)
#chkconfig vsftpd off
(CentOS7)
#systemctl disable vsftpd
(CentOS6.x)
#chkconfig --list
(CentOS7)
#systemctl -t service list-unit-files
(CentOS6.x)
#chkconfig --list vsftpd
(CentOS7)
#systemctl -t service list-unit-files | grep -i vsftpd
CentOS7「systemd」についての備忘録
CentOS7でのサービス系管理機能「systemd」についての備忘録。
CentOS7では、chckconfigコマンドによるサービスの有効化、無効化などに代わり、
systemctlコマンドを使って、サービスの起動、停止、状態管理などを行う。
systemdでは、ユニットと呼ばれる単位で、管理を行う。
ユニットとは、systemdの管理対象となる処理の単位のことを指し、次に示すいくつかのタイプが存在する。
- service:各種デーモンやサービスの起動
- target:複数のユニットをグループ化したもの
- mount:ファイルシステムのマウント制御
- device:ディスクデバイス
- socket:FIFP、Unixドメインソケット、ポート番号などに関する通信資源
OSの起動時における起動の有効化・無効化および設定状態を確認するには、ユニットの種類として、「service」を指定し、
list-unit-filesを指定する。
[root@cent7 ~]# systemctl -t service list-unit-files
UNIT FILE STATE
arp-ethers.service disabled
auditd.service enabled
UNIT FILE STATE
・・・・
・・・・
tuned.service enabled
wpa_supplicant.service disabled
144 unit files listed.
[root@cent7 ~]# systemctl -t service list-unit-files | grep -i vsftpd
vsftpd.service disabled
vsftpd@.service disabled
[root@cent7 ~]#
「disabled」は、OS起動時に自動起動しない。
[root@cent7 ~]# systemctl status vsftpd
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
Active: inactive (dead)
[root@cent7 ~]#
「Active:」の項目は、「inactive (dead)」のため、現在、vstpdは起動していない。
[root@cent7 ~]# systemctl start vsftpd
[root@cent7 ~]# systemctl status vsftpd
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
Active: active (running) since 土 2016-06-04 13:21:17 JST; 4s ago
Process: 8452 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
Main PID: 8453 (vsftpd)
CGroup: /system.slice/vsftpd.service
mq8453 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
6月 04 13:21:17 cent7 systemd[1]: Starting Vsftpd ftp daemon...
6月 04 13:21:17 cent7 systemd[1]: Started Vsftpd ftp daemon.
[root@cent7 ~]#
「Active:」の項目は、「active (running) 」のため、現在、vstpdは起動している。
[root@cent7 ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[root@cent7 ~]# systemctl -t service is-enabled vsftpd
enabled
[root@cent7 ~]#
2016年05月22日
CentOS7.2のカーネルアップデート
フルブラウザ・ソリューションの検証を行うことに伴い、Linuxカーネル3.18以上にしなければならないことを受け、CentOS7.2上のカーネルのアップデートを行う。
前回記事の通り、インストールを行うと、
カーネルは下記のとおり、3.10となっている。
[root@centos7 ~]# uname -r
3.10.0-327.el7.x86_64
[root@centos7 ~]#
上記を、Linuxカーネル3.18以上にアップデートする。
yumのリポジトリに下記のとおり、elrepoを追加する。
[root@centos7 ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
[root@centos7 ~]# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo
(実行例)
[root@centos7 ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
[root@centos7 ~]# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo .noarch.rpm
http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm を取得中
準備しています... ################################# [100%]
更新中 / インストール中...
1:elrepo-release-7.0-2.el7.elrepo ################################# [100%]
[root@centos7 ~]#
下記のコマンドで、最新版のLinuxカーネルをインストールする。
[root@centos7 ~]# yum install --enablerepo=elrepo-kernel kernel-ml
(実行例)
赤字個所は、「y」を入力
[root@centos7 ~]# yum install --enablerepo=elrepo-kernel kernel-ml
読み込んだプラグイン:fastestmirror, langpacks
base | 3.6 kB 00:00:00
elrepo | 2.9 kB 00:00:00
elrepo-kernel | 2.9 kB 00:00:00
extras | 3.4 kB 00:00:00
google-chrome | 951 B 00:00:00
updates | 3.4 kB 00:00:00
(1/4): extras/7/x86_64/primary_db | 131 kB 00:00:00
(2/4): updates/7/x86_64/primary_db | 4.9 MB 00:00:01
(3/4): elrepo/primary_db | 352 kB 00:00:02
(4/4): elrepo-kernel/primary_db | 1.6 MB 00:00:02
google-chrome/primary | 1.8 kB 00:00:00
Determining fastest mirrors
* base: ftp.tsukuba.wide.ad.jp
* elrepo: ftp.ne.jp
* elrepo-kernel: ftp.ne.jp
* extras: ftp.tsukuba.wide.ad.jp
* updates: ftp.tsukuba.wide.ad.jp
google-chrome 3/3
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ kernel-ml.x86_64 0:4.6.0-1.el7.elrepo を インストール
--> 依存性解決を終了しました。
依存性を解決しました
========================================================================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
========================================================================================================================================================================
インストール中:
kernel-ml x86_64 4.6.0-1.el7.elrepo elrepo-kernel 38 M
トランザクションの要約
========================================================================================================================================================================
インストール 1 パッケージ
総ダウンロード容量: 38 M
インストール容量: 173 M
Is this ok [y/d/N]: y
Downloading packages:
kernel-ml-4.6.0-1.el7.elrepo.x86_64.rpm | 38 MB 00:00:18
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
インストール中 : kernel-ml-4.6.0-1.el7.elrepo.x86_64 1/1
検証中 : kernel-ml-4.6.0-1.el7.elrepo.x86_64 1/1
インストール:
kernel-ml.x86_64 0:4.6.0-1.el7.elrepo
完了しました!
[root@centos7 ~]#
下記コマンドで起動カーネルの一覧を確認する。
[root@centos7 ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.6.0-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-bc631b2b63824f4ba0f76521579e4d64) 7 (Core)
[root@centos7 ~]#
※上記で順番を確認する。(最初の行が0行目)。カーネルバージョンが最新のものの行を確認する。
下記のコマンドで、起動カーネルを最初の行である「4.6.0-1.el7.elrepo.x86_64」に変更する。
[root@centos7 ~]#grub2-set-default 0
下記のコマンドで、起動カーネルの変更を起動ファイルに反映する。
[root@centos7 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
(実行例)
[root@centos7 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.6.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.6.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-327.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-327.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-bc631b2b63824f4ba0f76521579e4d64
Found initrd image: /boot/initramfs-0-rescue-bc631b2b63824f4ba0f76521579e4d64.img
done
その後、再起動する。
[root@centos7 ~]# shutdown -r now
再起動したら、カーネルがアップデートされた状態(ここでは、「4.6.0-1.el7.elrepo.x86_64」)で起動していることを確認する。
[root@centos7 ~]# uname -r
4.6.0-1.el7.elrepo.x86_64
[root@centos7 ~]#
2016年05月21日
CentOS7.2へのGoogle-Chromeインストール
以下、構築手順の記載。
リポジトリ編集用ファイルを開く。
[root@centos7 ~]# vi /etc/yum.repos.d/google-chrome.repo
以下のとおり、編集を行う。
[root@centos7 ~]# cat /etc/yum.repos.d/google-chrome.repo
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
[root@centos7 ~]#
・下記のコマンドでgoogle-chrome-stableをインストールする。
[root@centos7 ~]# yum install google-chrome-stable
読み込んだプラグイン:fastestmirror, langpacks
google-chrome | 951 B 00:00
google-chrome/x86_64/primary | 1.8 kB 00:00
Determining fastest mirrors
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
google-chrome 3/3
依存性の解決をしています
--> トランザクションの確認を実行しています。
〜 中略 〜
トランザクションの要約
================================================================================
インストール 1 パッケージ (+79 個の依存関係のパッケージ)
総ダウンロード容量: 73 M
インストール容量: 255 M
Is this ok [y/d/N]: y ※途中対話的な質問が来たら、「y」でenterする。
Downloading packages:
redhat-lsb-submod-multimedia.x86_64 0:4.1-27.el7.centos.1
redhat-lsb-submod-security.x86_64 0:4.1-27.el7.centos.1
spax.x86_64 0:1.5.2-13.el7
systemtap-sdt-devel.x86_64 0:2.8-10.el7
〜 中略 〜
完了しました!
[root@centos7 ~]#
・インストールが完了したら、google-chrome -versionを確認する。
[root@centos7 ~]# google-chrome -version
Google Chrome 50.0.2661.86
[root@centos7 ~]#
その後、(rootでない一般ユーザーで)CentOSにGUIログインし、 [アプリケーション]-[GoogleChrome]を起動する。
CentOS上で、GoogleChromeによるWeb閲覧ができることを確認する
2016年05月20日
CentOS7.2インストール
「Microsoft RDS CALが不要の「Linux仮想ブラウザ」なら、大幅にコスト削減」
http://www.ashisuto.co.jp/product/theme/virtualization/doublebrowser.html
まずは、上記のソリューションは、CentOS7(Linuxカーネル3.18以上)が必要となるが、
CentOS7以降、コマンド体系が変更されたことを言い訳に、学習をおろそかにしていたため、
ここで、下記要件をもとに、手順を整備しておくことにした。
・VmwareEsxi5.1の仮想マシン上にCentOS7.2をGUIモードでインストールする。
・SELinux、ファイルーウォール機能は、無効化する。
・GoogleChromeをインストールする。
・カーネルを3.18以上にアップデートする。
画面ショットが多いため、下記にPDFファイルを格納。
https://drive.google.com/file/d/0B2yjG8delT8WTVBNcGhhNE1YdDg/view?usp=sharing
https://drive.google.com/file/d/0B2yjG8delT8WQW9VYU1RRjQ2SHc/view?usp=sharing
https://drive.google.com/file/d/0B2yjG8delT8WcUYtMl9HM1EyUFE/view?usp=sharing
https://drive.google.com/file/d/0B2yjG8delT8WcXFlOHJIejJYZlU/view?usp=sharing
インストールにおいては、下記を参照した。
いずれ、CentOS6までとのコマンド体系などの変更点をまとめたい。
CentOS 7実践ガイド (impress top gear) 新品価格 |
Lenovo G500 タッチパッド無効化
2016年04月10日
sendmailによるSPF認証対応受信メールサーバ@(環境構築)
前回記事でのでSPF認証対応受信メールサーバ構築のための環境整備に続き、実際に、sendmailによるSPF認証対応受信メールサーバを構築してみる。
なお、spf対応の実現方法は、「smf-spf 」を使用する。
検証環境の前提は、前回記事と同じ。
・受信メールサーバは、RedhatEnterpriseLinux6.4、sendmail-8.14.4-9を使用
・spfへの対応は、smf-spf を使用する。
・検証に使用するドメインは、「simalab.com」
・DNSサーバ上で、mxレコードを受信側IPアドレスに設定
・DNSサーバ上で、spfレコードを送信側IPアドレスに設定
・送信サーバ側でメールを送信した場合、送信者アドレスのドメイン部を「log.simalab.com」を「simalab.com」に書き換える。
http://server-setting.info/centos/sendmail-smf-spf-install.html
以下、構築手順の記載。
wgetがインストールされていない場合は、下記のとおりインストール
[root@mx-ns src]# yum install wget
参照URLのとおり、smf-spf の rpm は、通常のリポジトリにはない模様。
smf-spf の rpm は、http://www.city-fan.org/ で公開されているため、そちらのリポジトリを参照可能とするため、
city-fan.org で公開されているリポジトリをまずは、インストールする。
検証環境は、RHEL6.4のため、下記を使用する。
http://www.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-13.rhel6.noarch.rpm
ここでは、/usr/local/srcにダウンロードした。
[root@mx-ns src]# wget http://www.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-13.rhel6.noarch.rpm
CITY-FAN.ORGの公開鍵をインポートする。
[root@mx-ns src]# rpm --import http://www.city-fan.org/ftp/contrib/yum-repo/CITY-FAN.ORG-GPG-KEY
city-fan.org リポジトリをインストールする
[root@mx-ns src]# rpm -Uvh city-fan.org-release-1-13.rhel6.noarch.rpm
準備中... ########################################### [100%]
1:city-fan.org-release ########################################### [100%]
[root@mx-ns src]#
まさに、参照URL記載のとおり、city-fan.org リポジトリは、正式なところでもないので常に無効にしておく(下記赤字箇所)。使いたい時は、yum のパラメータに–enablerepo を指定して使うようにする。
[root@mx-ns src]# cat /etc/yum.repos.d/city-fan.org.repo
[city-fan.org]
name=city-fan.org repository for Red Hat Enterprise Linux (and clones) $releasever ($basearch)
#baseurl=http://mirror.city-fan.org/ftp/contrib/yum-repo/rhel$releasever/$basearch
mirrorlist=http://mirror.city-fan.org/ftp/contrib/yum-repo/mirrorlist-rhel$releasever
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-city-fan.org
[city-fan.org-debuginfo]
name=city-fan.org debuginfo repository for Red Hat Enterprise Linux (and clones) $releasever ($basearch)
#baseurl=http://www.city-fan.org/ftp/contrib-debug/rhel$releasever/$basearch
mirrorlist=http://www.city-fan.org/ftp/contrib-debug/mirrorlist-rhel$releasever
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-city-fan.org
[city-fan.org-source]
name=city-fan.org source repository for Red Hat Enterprise Linux (and clones) $releasever
#baseurl=http://mirror.city-fan.org/ftp/contrib/yum-repo/rhel$releasever/source
mirrorlist=http://mirror.city-fan.org/ftp/contrib/yum-repo/source-mirrorlist-rhel$releasever
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-city-fan.org
smf-spf を --enablerepo=city-fan.orgオプション付きでインストールする。
[root@mx-ns src]# yum --enablerepo=city-fan.org install smf-spf
〜中略〜
依存性関連をインストールしました:
libspf2.x86_64 0:1.2.10-8.el6 sendmail-milter.x86_64 0:8.15.2-6.0.cf.rhel6
完了しました!
[root@mx-ns src]#
参照URLのとおり、smf-spf を sendmailで利用するためには、メールフィルタリングを実施する「MILTER 」がインストールされていないとダメなようなので、確認する。通常、CentOS , Scientific Linux で提供されている Sendmailは、既に組み込まれているようだが、検証環境(RHEL)でも念のため、確認しておく。
[root@mx-ns src]# sendmail -d0.10
Version 8.14.4
Compiled with: DNSMAP HESIOD HES_GETMAILHOST LDAPMAP LOG MAP_REGEX
MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6
NETUNIX NEWDB NIS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS
TCPWRAPPERS USERDB USE_LDAP_INIT
以下をsendmail.mcに追加する。
[[root@mx-ns src]# vi /etc/mail/sendmail.mc
# 追加
define(`confMILTER_MACROS_HELO', confMILTER_MACROS_HELO`, {verify}')dnl
INPUT_MAIL_FILTER(`smf-spf', `S=unix:/var/run/smfs/smf-spf.sock, T=S:30s;R:1m')dnl
mcファイルをコンパイルする。
[root@mx-ns src]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
下記のコマンドでsmf-spf を起動する。
[[root@mx-ns src]# service smf-spf start
smf-spf を起動中: [ OK ]
[root@mx-ns src]#
起動したら、システム再起動後も自動で起動するように設定をしておく。
[root@mx-ns src]# chkconfig --list smf-spf
smf-spf 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@mx-ns src]#
[root@mx-ns src]# chkconfig smf-spf on
[root@mx-ns src]#
[root@mx-ns src]# chkconfig --list smf-spf
smf-spf 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@mx-ns src]#
最後にsendmailを再起動する。
[root@mx-ns src]# service sendmail restart
sm-client を停止中: [ OK ]
sendmail を停止中: [ OK ]
sendmail を起動中: [ OK ]
sm-client を起動中: [ OK ]
[root@mx-ns src]#
[root@mx-ns src]#
以上で、構築手順は終了し、次回以降、動作確認を実施する。