質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
IMAP

IMAP (Internet Message Access Protocol) とは、メールサーバー上の電子メールデータを操作するためのプロトコルです。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

SMTP

SMTP(Simple Mail Transfer Protocol)はIPネットワークでemailを伝送する為のプロトコルです。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Q&A

解決済

1回答

3096閲覧

【CentOS】SSLが使われているか調べたい

yudai524

総合スコア37

IMAP

IMAP (Internet Message Access Protocol) とは、メールサーバー上の電子メールデータを操作するためのプロトコルです。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

SMTP

SMTP(Simple Mail Transfer Protocol)はIPネットワークでemailを伝送する為のプロトコルです。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

0グッド

0クリップ

投稿2015/08/26 03:16

お世話になります。

現在、CentOS上で
サーバーの環境復元作業をしております。

OpenSSLをインストールしたのですが
SSLを利用しているソフトがわからず困っています。

復元するサーバーの環境としましては

CentOS 4.9
Apache 2.0.64
dovecot 1.2.17
sendmail 8.14.5

です。

このうちApacheはSSLを利用しております。

メール関係は
プロセスを見た感じだとdovecotとsendmailが使われているようです。
Postfixはインストールされていましたが、起動していませんでした。

SSLを利用しているかどうかを見るには
設定ファイルと開いてるポートを見ればわかるだろうと思い
ポートとsendmailとdovecotの設定ファイルを確認しました。

まず、ポートを調べたところ993番と995番が開いており
IMAPsとPOP3s用のポートらしいということがわかりました。

また、25番と587番も開いており
こちらはSMTPのSTARTTLSで利用することもわかりました。

次に、dovecotの設定ファイルを見たところ、以下の記述が見つかりました。

$ vi /etc/dovecot.conf ... protocols = imap imaps pop3 pop3s ... #ssl = yes ... #ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem #ssl_key_file = /etc/pki/dovecot/private/dovecot.key ...

ここで訳が分からなくなりました。
プロトコルはimapsやpop3sをサポートするように書いてあるし、ポートも開いているのに
SSL関係の設定はコメントアウトされてあります。

ssl_cert_fileやssl_key_fileで指定されているファイルを見に行ってみましたが
ファイルはありませんでした。

また、sendmailの設定ファイルでは以下のような記述がありました。

$ vi /etc/mail/sendmail.mc ... dnl define(`confCACERT_PATH', `/usr/share/ssl/certs') dnl define(`confCACERT', `/usr/share/ssl/certs/ca-bundle.crt') dnl define(`confSERVER_CERT', `/usr/share/ssl/certs/sendmail.pem') dnl define(`confSERVER_KEY', `/usr/share/ssl/certs/sendmail.pem') ...

ここでも分からなくなりました。
confCACERT_PATHとconfCACERTのディレクトリとファイルは存在するのですが
confSERVER_CERTとconfSERVER_KEYで指定されているファイルが存在しません。

以上のような状況なのですが
dovecotとsendmailでSSLは使われているのでしょうか。

ご回答、よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

■dovecot について

CentOS 4.9 の dovecot(バージョン 0.99.11)はデフォルトで以下の秘密鍵、証明書ファイルを使用するようです。これらのファイルが存在するのではないでしょうか。

ssl_cert_file = /usr/share/ssl/certs/dovecot.pem ssl_key_file = /usr/share/ssl/private/dovecot.pem

また、このバージョンの dovecot では、"ssl = yes|no" ではなく、"ssl_disable = no|yes" で設定するようです。デフォルトは "ssl_disable = no" ですので、SSL が有効です。

■sendmail について

sendmail.mc で秘密鍵、証明書ファイルの設定がなければ STARTTLS は無効になると思います。
telnet などで 25, 587 番ポートに接続して EHLO コマンドを入力し、"STARTTLS" の応答があれば有効、なければ無効です。

(有効な場合) $ telnet localhost 25 Trying 127.0.0.1... Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. 220 ホスト名 ESMTP Sendmail 8.13.1/8.13.1; Wed, 26 Aug 2015 14:18:21 +0900 EHLO localhost 250-ホスト名 Hello localhost.localdomain [127.0.0.1], pleased to meet you 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-8BITMIME 250-SIZE 250-DSN 250-ETRN 250-AUTH DIGEST-MD5 CRAM-MD5 250-STARTTLS 250-DELIVERBY 250 HELP quit 221 2.0.0 ホスト名 closing connection Connection closed by foreign host.

投稿2015/08/26 05:24

TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yudai524

2015/08/26 06:35

早速のご回答ありがとうございます! まず、sendmailについてですが ご助言頂いた方法で試したところ 25,587番ともSTARTTLSの応答はありませんでした。 よって、sendmailはSSLが使われていないようです。 ありがとうございます! 次にdovecotですが 稼働中の本番環境(CentOS4.9)の方ではdovecotのバージョン(dovecot --version)は1.2.17でした。 構築した者がソースからインストールしたのかもしれません。 現在ローカルのVMで再現中のCentOS4.9ではdovecotのバージョン(未インストールなのでyum info dovecot)は0.99.11でした。 ご指摘頂いたとおり、本番環境で /usr/share/ssl/certs/dovecot.pem と /usr/share/ssl/private/dovecot.pem を見に行ってみましたが、やはりファイルは存在しませんでした。 また質問欄でもお伝えした通り SSL関連の設定部分はコメントアウトされております。 こちらも、秘密鍵や証明書が無いということで imapsとpop3sがサポートされていて、ポートは開いているけど SSLは有効になっていない・・・。 という理解で大丈夫でしょうか?? 社内でわかるものがおらず、 僕もサーバー構築の経験が少ないので確信が持てずにおります・・・。
TaichiYanagiya

2015/08/26 07:05

秘密鍵、証明書ファイルがなければ起動時にエラーとなると思います。 dovecot-1.2.17 のソースコードに含まれる dovecot-example.conf ファイルには以下の記述があります。コンパイル時 configure の "--with-ssldir=" でディレクトリを指定していなければ、ここにあると思います。 #ssl_cert_file = /etc/ssl/certs/dovecot.pem #ssl_key_file = /etc/ssl/private/dovecot.pem
yudai524

2015/08/27 02:55

該当のファイルを探そうとしたところ、/etc/以下にsslというディレクトリがありませんでした・・・。 どうしてもよくわからなかったので 教えて頂いたsendmailの方法をPOP3sやIMAPsのポートでもやってみようと思い、調べて試してみました! telnetでは接続できなかったので opensslコマンドで993番と995番にそれぞれ接続を試みたところ どちらもサーバーから証明書が送られてきました! どうもdovecotの方ではSSLが動いているようです。 この度は、ご丁寧に回答頂き本当にありがとうございました! 大変勉強になりました! それでは、これにて解決とさせて頂きます。
TaichiYanagiya

2015/08/27 03:27

証明書ファイル、どこにあるのでしょうね。 dovecot-2 であれば doveconf コマンドで調べることができますが、1.2.17 だと無いですね。 dovecot 実行ファイルを strings コマンドで見て、".pem" などのファイルを探すとか。 $ strings /usr/local/sbin/dovecot | grep -E '\.pem|\.key|\.crt|^/etc'
yudai524

2015/08/28 03:07

お返事遅くなりまして申し訳ありません。 ちょっとその方法で試してみます!追ってまた結果をご報告します!
yudai524

2015/08/31 00:41

遅くなりまして申し訳ありません。 ご助言頂いたとおりのコマンドを試してみました! まずwhich dovecotとしたところ、想定していた/usr/local/sbin/dovecotでなく /usr/sbin/dovecotでした。 (yumのリポジトリの設定を見たところ、ローカルにいくつかリポジトリを追加しており、その中にdovecot-1.2.17のrpmがありました) ですので、dovecotのパスの部分を変更した以下のコマンドを入力した結果 以下のようになりました。 # strings /usr/sbin/dovecot | grep -E '\.pem|\.key|\.crt|^/etc' table[VAR_EXPAND_HOME_IDX].key == 'h' /etc/dovecot.conf /etc/redhat-release /etc/SuSE-release /etc/mandriva-release /etc/fedora-release /etc/sourcemage-release /etc/slackware-version /etc/gentoo-release /etc/debian_version /etc/lsb-release /etc/mtab
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問