メインコンテンツへスキップ
  1. ブログ/

cyrus-sasl(サイラスサスル)とは

·
Linux セキュリティ
目次

はじめに
#

Cyrus SASL(サイラス・サスル) は、SASL(Simple Authentication and Security Layer)認証機構を提供するためのライブラリとなります。

メールサーバー(Postfix,Dovecotなど)など認証を必要とする多くのサーバーソフトで利用されています。

本記事では、Rocky Linux 8環境でのインストール方法や設定ファイルについて解説します。

より詳細な情報は以下のドキュメントをご確認ください。

公式ドキュメント

インストール方法
#

RockyLinux8環境で「Cyrus SASL」をインストールするには以下のように「dnf」コマンドを使用します。

dnf install cyrus-sasl

利用するLinuxOS等によっては初期状態から導入されている場合がございます。

追加インストール
#

plainやmd5メカニズムを使用する場合は追加パッケージをインストールする必要があります。

plainを使用する場合
#

dnf install cyrus-sasl-plain

md5を使用する場合
#

dnf install cyrus-sasl-md5

ライブラリを使用する場合
#

dnf install cyrus-sasl-lib

開発用
#

dnf install cyrus-sasl-devel

設定ファイル
#

Cyrus SASLの設定ファイルは以下に配置されます。

これはPostfixなどのSMTP認証に関する設定に使用されます。

/etc/sasl2/smtpd.conf

主な設定項目
#

pwcheck_method
#

pwcheck_method項目ではユーザーの認証情報をどのモードで確認するかを指定する事ができます。

主要な設定は「saslauthd」や「auxprop」等があります。

以下は動作モードを指定した例となります。

pwcheck_method: saslauthd

以下は、Cyrus SASLで指定可能な動作モードの一覧表となります。

使用するモードは、利用するサービスや認証方式の要件に応じて選択してください。

モード名 説明
auxprop 内部のユーザーデータベース(sasldb)を使用して認証します。
saslauthd 外部の認証デーモン(saslauthd)を使用します。PAMなどと連携が可能です。
pwcheck 古いモード。現在は非推奨で、saslauthdに置き換えられています。
authdaemond Courier IMAPなどの一部ソフトで使用される認証デーモンと連携します。

mech_list
#

mech_list項目ではCyrus SASLがサポートする認証メカニズムを指定する事ができます。

主要な設定は「PLAIN」や「LOGIN」等があります。

以下は認証メカニズムを指定した例となります。

mech_list: PLAIN LOGIN

以下は、Cyrus SASLで指定可能な主な認証メカニズムの一覧表となります。

使用するメカニズムは、セキュリティ要件や互換性に応じて選択してください。​

メカニズム名 説明
PLAIN 最も基本的な認証方式。ユーザー名とパスワードを平文で送信します。
LOGIN PLAINと似ていますが、ステップが分かれています。
CRAM-MD5 チャレンジレスポンス方式で、パスワードをハッシュ化して送信します。
DIGEST-MD5 HTTP認証にも使われる方式で、MD5を用いたチャレンジレスポンス認証です。
SCRAM-SHA-1 チャレンジレスポンス方式で、SHA-1を使用します。
SCRAM-SHA-256 SCRAMの一種で、SHA-256を使用します。
GSSAPI Kerberosを利用した認証方式です。
NTLM WindowsのNT LAN Manager認証方式です。
EXTERNAL 外部の認証情報を使用します。
ANONYMOUS 匿名アクセスを許可します。
OTP 一度限りのパスワードを使用する認証方式です。
SRP セキュアなパスワード認証方式で、パスワードを直接送信しません。

log_level
#

log_level項目ではCyrus SASLの動作に関するログ出力の詳細度を指定する事ができます。

以下はログ出力の詳細度を「2」に指定した例となります。

log_level: 2

以下は指定できる値の表となります。

内容
0 ログなし(デフォルト)
1 エラーメッセージのみ
2 エラー + 警告
3 通知も含む
5 詳細な動作ログ
7 デバッグレベルの出力

関連記事

【初心者向け解説】SELinuxの状態を確認する方法
Linux SELinux セキュリティ
Postfixでシンタックスチェックを行う方法
Postfix メール Linux
【初心者向け解説】dnfでインストールしたパッケージを検索する方法
Linux Dnf
Linux CLIから「Zed Attack Proxy」でセキュリティテストを実行する方法
セキュリティ
Mailmanのバージョンを確認する方法
Linux メール
総当たり攻撃の最大時間を計算してみた
セキュリティ