「iptables HTTPとHTTPSを許可する」の版間の差分
提供: セキュリティ
(ページの作成:「<!-- vim: filetype=mediawiki --> Linux で Webサーバ を運用している場合に、iptables を使っている場合、外部からの HTTP や [[...」) |
|||
行1: | 行1: | ||
− | |||
− | |||
− | |||
[[Linux]] で [[Webサーバ]] を運用している場合に、[[iptables]] を使っている場合、外部からの [[HTTP]] や [[HTTPS]] に対するアクセスを許可する必要があります。 | [[Linux]] で [[Webサーバ]] を運用している場合に、[[iptables]] を使っている場合、外部からの [[HTTP]] や [[HTTPS]] に対するアクセスを許可する必要があります。 | ||
行7: | 行4: | ||
== 概要 == | == 概要 == | ||
− | |||
ここで紹介するのは、[[Webサーバ]] を運営している場合の [[iptables]] の設定の例です。 | ここで紹介するのは、[[Webサーバ]] を運営している場合の [[iptables]] の設定の例です。 | ||
また、OUTPUT のデフォルトを DROP に設定している場合には、外部の[[Webサーバ]] に対するアクセスを許可しなければなりません。 | また、OUTPUT のデフォルトを DROP に設定している場合には、外部の[[Webサーバ]] に対するアクセスを許可しなければなりません。 | ||
− | 提供している[[Webサーバ]]で [[yum]] | + | 提供している[[Webサーバ]]で [[yum]] コマンドを使って、外部のリポジトリからパッケージをダウンロードしたり、外部のWebAPIを利用する場合には、アクセス許可が必要です。 |
− | + | ||
== 外部からのHTTPとHTTPSに対するアクセスを許可する == | == 外部からのHTTPとHTTPSに対するアクセスを許可する == | ||
− | |||
[[HTTP]] (80)と [[HTTPS]] (443) を許可する例です。 | [[HTTP]] (80)と [[HTTPS]] (443) を許可する例です。 | ||
− | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
-A INPUT -p tcp --dport http -j ACCEPT | -A INPUT -p tcp --dport http -j ACCEPT | ||
行41: | 行34: | ||
COMMIT | COMMIT | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
== 外部のHTTPとHTTPSに対するアクセスを許可する == | == 外部のHTTPとHTTPSに対するアクセスを許可する == | ||
− | |||
ホストから外部の[[Webサーバ]]の[[HTTP]]/[[HTTPS]]に対するアクセスを許可する設定です。 | ホストから外部の[[Webサーバ]]の[[HTTP]]/[[HTTPS]]に対するアクセスを許可する設定です。 | ||
− | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
iptables -A OUTPUT -p tcp -m state --state NEW --dport http -j ACCEPT | iptables -A OUTPUT -p tcp -m state --state NEW --dport http -j ACCEPT | ||
iptables -A OUTPUT -p tcp -m state --state NEW --dport https -j ACCEPT | iptables -A OUTPUT -p tcp -m state --state NEW --dport https -j ACCEPT | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
== 関連項目 == | == 関連項目 == | ||
* [[iptables]] | * [[iptables]] | ||
* [[Apache HTTP Server]] | * [[Apache HTTP Server]] | ||
* [[Webサーバ]] | * [[Webサーバ]] | ||
+ | <!-- vim: filetype=mediawiki | ||
+ | --> |
2015年9月23日 (水) 17:38時点における最新版
Linux で Webサーバ を運用している場合に、iptables を使っている場合、外部からの HTTP や HTTPS に対するアクセスを許可する必要があります。
概要
ここで紹介するのは、Webサーバ を運営している場合の iptables の設定の例です。
また、OUTPUT のデフォルトを DROP に設定している場合には、外部のWebサーバ に対するアクセスを許可しなければなりません。 提供しているWebサーバで yum コマンドを使って、外部のリポジトリからパッケージをダウンロードしたり、外部のWebAPIを利用する場合には、アクセス許可が必要です。
外部からのHTTPとHTTPSに対するアクセスを許可する
HTTP (80)と HTTPS (443) を許可する例です。
-A INPUT -p tcp --dport http -j ACCEPT -A INPUT -p tcp --dport https -j ACCEPT
ステートを指定するのが、より好ましいでしょう。
-A INPUT -p tcp -m state --state NEW --dport http -j ACCEPT -A INPUT -p tcp -m state --state NEW --dport https -j ACCEPT
/etc/sysconfig/iptables の例です。
*filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -i lo -j ACCEPT -A INPUT -p tcp --dport ssh -j ACCEPT -A INPUT -p tcp --dport http -j ACCEPT -A INPUT -p tcp --dport https -j ACCEPT -A OUTPUT -o lo -j ACCEPT COMMIT
外部のHTTPとHTTPSに対するアクセスを許可する
ホストから外部のWebサーバのHTTP/HTTPSに対するアクセスを許可する設定です。
iptables -A OUTPUT -p tcp -m state --state NEW --dport http -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW --dport https -j ACCEPT