25
25

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SSL接続(HTTPS)をやろうとしてはまっている人はiptablesを確認しよう

Last updated at Posted at 2015-01-24

SSLの設定で自分が2日間はまったので、次来る人がすぐに気づいてくれるようにメモを残しておきます。

私の開発環境は、GMOのグローバルサインでSSL証明書や秘密鍵を発行し、EC2インスタンスにRailsとWordpressを共存させ、どちらも常時SSL接続を実現しようとしている感じです。

SSLの仕組みは、以下の記事で理解しました。
3分で理解できる!共通鍵暗号方式と公開鍵暗号方式の仕組み
SSLとは?仕組みから、共有・独自SSLの違い、証明書についてが分かるまとめ

SSLの設定方法などは、以下の記事を参考にしました。
PKCS #12 ファイルから秘密鍵,証明書,中間CAを取り出す
*グローバルサインでは、PKCS#12形式で証明書や秘密鍵がセットになったファイルをダウンロードできます。この方法で解凍して、証明書と秘密鍵を取得します。
[インストール] Apache 2.x + mod_ssl + OpenSSL(新規・更新)
Amazon EC2 (Amazon Linux) での SSL 設定(重要なのは、EC2のSecurity GroupでHTTPSの443ポートを許可しておく事)
SSLのパスフレーズ(Pass Phrase Dialog)入力を省略してApacheを起動する
Apache + OpenSSL ジオトラスト クイックSSL プレミアム インストール手順 (新規)
CloudFrontで独自ドメインSSL設定

さて、ここからが本題なのですが、私の場合以上の記事にあった手順を完璧に再現しても上手くいきませんでした。SSLの設定をいじってみたり、ssl.confファイルのNameVirtualHostをいじってみたりしてもダメでした。

そして結果分かった原因は、

iptablesでSSL通信のための443ポートを許可するのを忘れていたからでした!

もう一度言います。

iptablesでSSL通信のための443ポートを許可してください!

/etc/sysconfig/iptablesを編集します。

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT # ここの行をいれてなかった!!!
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

これをしたらすべて上手く行きました!iptablesで許可してなかったらそりゃ無理です。

いろいろ検索したのに、どこの記事にもiptablesに関して言及していなかったのでここにメモを残しておきます。
iptablesはオフにすることでも問題は解決しますが、セキュリティ的にオフにしていない人も多いと思うので、そういう人ははまりがちなところだと思います。お気をつけて!

25
25
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
25

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?