Categories: linux

Linuxでポート80を許可する方法:ufw allow 80コマンドの使い方

Webサーバーを立ち上げたけれど、なぜか外部からアクセスできない。そんなときに見落としがちなのが、ファイアウォールの設定です。Linux環境ではセキュリティを高めるために、外部からのアクセスを制限する「ファイアウォール」が標準で有効になっていることがあります。
特に、HTTP通信で利用される「ポート80」が閉じられていると、ウェブページにアクセスできません。この記事では、「ufw allow 80」コマンドを使ってポート80を許可する方法をわかりやすく解説します。Linux初心者の方でも迷わず設定できるよう、コマンドの意味や注意点も丁寧に説明します。


UFWとは?Linuxのファイアウォール管理ツール

UFW(Uncomplicated Firewall)は、その名のとおり「複雑ではないファイアウォール」という意味で、iptablesの設定を簡単に行うためのツールです。UbuntuなどのDebian系Linuxディストリビューションでは標準搭載されていることも多く、初心者にも扱いやすいのが特徴です。

たとえば、以下のような特徴があります。

  • コマンドが直感的でわかりやすい
  • ポート番号やサービス名を使った設定が可能
  • 設定状況を確認しやすい

UFWを使うことで、不要な通信をブロックし、必要な通信だけを許可するといった操作を簡単に行えます。


ポート80とは?なぜ許可が必要なのか

ポート番号とは、通信の「入り口・出口」のようなもので、どのサービスに対する通信かを識別するための番号です。

  • ポート80はHTTP通信(ウェブサイト閲覧など)で使われる
  • ウェブサーバー(ApacheやNginxなど)を立てる場合に必要
  • 閉じていると外部からのアクセスが拒否される

そのため、Webサーバーを公開するには、ポート80を許可しないと「ページが開かない」「接続エラーになる」などのトラブルが発生します。


ufw allow 80コマンドの基本的な使い方

コマンドの意味

sudo ufw allow 80

このコマンドは、HTTP通信で使われるポート番号80番の通信を許可するという意味になります。

解説

  • sudo:管理者権限でコマンドを実行
  • ufw:ファイアウォールツールUFWを呼び出す
  • allow:指定した通信を許可する
  • 80:許可するポート番号(ここではHTTP用)

このコマンドを実行することで、外部からのHTTPアクセスが通るようになります


コマンドの実行手順

実際の手順を以下に示します。

1. UFWがインストールされているか確認

まず、ufwがインストールされているかを確認します。

sudo ufw status

エラーが出た場合は、以下のコマンドでインストールしてください。

sudo apt update
sudo apt install ufw

2. UFWを有効化する

ファイアウォールが無効化されている場合は、以下のコマンドで有効にします。

sudo ufw enable

※有効化すると、デフォルトで「全ての受信を拒否・全ての送信を許可」となります。

3. ポート80を許可する

sudo ufw allow 80

または、サービス名で指定する方法もあります。

sudo ufw allow http

どちらも同じ意味です。

4. 設定を確認する

sudo ufw status

出力例:

Status: active

To Action From
-- ------ ----
80 ALLOW Anywhere

このように表示されていれば、ポート80の通信が許可されています。


具体的な利用例:Nginxサーバーでの設定

たとえば、NginxをインストールしてWebサーバーを構築したときに、ポート80が閉じているとブラウザで表示できません。

以下のような手順で設定します。

sudo apt install nginx
sudo ufw allow 'Nginx HTTP'

または明示的に、

sudo ufw allow 80

とすれば、外部アクセスが可能になります。


間違えた設定を取り消す方法

もし間違えて設定してしまった場合は、以下のコマンドでルールを削除できます。

sudo ufw delete allow 80

サービス名で許可した場合は、こちらを使います。

sudo ufw delete allow http

これでポート80の許可が取り消されます。


セキュリティ上の注意点

ポート80を開けるということは、外部からのアクセスを受け入れる窓口を作るということです。Webサーバーを運用する際には、次のようなセキュリティ対策も併せて行うことが重要です。

  • ApacheやNginxのアップデートを怠らない
  • 不要なサービスは無効化する
  • ログ監視ツール(fail2banなど)を活用する
  • SSL化(https)も検討する

とくにSSL化をしていないHTTP通信は暗号化されていないため、データの盗聴や改ざんのリスクがあります。ポート443(HTTPS)を開けてSSL証明書を導入することで、より安全な通信が可能です。


よくあるエラーと対処法

UFWが有効にならない

ERROR: problem running ufw-init

このようなエラーが出た場合は、再起動やログファイルの確認が必要です。

sudo systemctl restart ufw

設定が反映されない

一部のクラウドサービス(例:AWS、Google Cloud)では、クラウド側のセキュリティグループでポートが閉じていることもあります。
この場合は、サーバー側の設定だけでなく、クラウドの管理画面でもポートを開ける必要があります


まとめ:ポート80の許可はWebサーバーの第一歩

sudo ufw allow 80」は、LinuxでWebサーバーを外部に公開するために必須のコマンドです。設定はとてもシンプルですが、理解して使わないとセキュリティリスクにつながる可能性もあります。

Webサーバーを運用する際は、まずこのコマンドでポート80を開放し、通信が通ることを確認しましょう。そのうえで、SSL化やアクセス制御などの追加のセキュリティ対策も忘れずに行いましょう。

upandup

Web制作の記事を中心に、暮らし、ビジネスに役立つ情報を発信します。 アフィリエイトにも参加しています。よろしくお願いいたします。