【パクろう】ラズパイでファイアーウォールを設定する方法

【パクろう】ラズパイでファイアーウォールを設定する方法

みなさんラズパイにファイアウォールの設定をしていますか?

ラズパイでサーバーなどを立てる際に気になるセキュリティ。

サーバーを安全に始めるために、ぜひファイアーウォールを設定しましょう。

ここでは、コマンドの基本的な説明初めてファイアウォールを設定する方向けの設定方法を書きました。コピペでパクってね。

更新履歴
  • 2019/12/28: お勧め設定を一部変更
  • 2020/1/13: 一部表記ミスを変更
  • 2020/2/9: リンク修正
  • 2020/6/17: 表記変更
  • 2020/9/22: 一部手直し
  • 2020/10/10: コードデザイン変更
  • 2021/02/24: ローカルのみ接続を基本操作に移動
  • 2022/3/3: 内容修正
  • 2022/8/15: 一部修正

設定したラズパイの環境

機器Raspberry Pi 3 Model B+
Raspberry Pi 4 Model B 4GB
OSRaspbian GNU/Linux 10

もちろんどのラズパイでも同じように設定できますよ!Debian系列ならどんなOSでもいけるかと。CentOSは別なんですよねぇ。。。めんどい。

ラズパイのファイアウォール設定

それではファイアウォールを設定しましょう。

設定準備

「LXTerminal」を起動します。

こんな画面が開きます。これ以降のコマンドはここに入力して、EnterすればOKです。

[この中]に書いてある数字は[この記号]を消し、置き換えてください。([この記号]があるコードはサイト上で編集してコピーできます。)

LXTerminal
ここにコピペ入力
[この記号]は設定する数字に置き換えする

ufwのインストール

ufw(ファイアーウォールアプリ)をインストールする

LXTerminal
sudo apt install ufw -y

ただインストールするだけでファイアウォールを導入できます。簡単ですね。

※お勧め設定はこちらから。初めて設定する方はパクった方が早いです。

基本操作8選

ここでは、ファイアウォールを設定する上での基本的な操作を8つ厳選しました。

ファイアーウォール有効化

LXTerminal
sudo ufw enable

ファイアーウォール無効化

LXTerminal
sudo ufw disable

ファイアーウォールの状態確認

LXTerminal
sudo ufw status

ポート番号で接続を許可

LXTerminal
sudo ufw allow [ポート番号]

ポート番号の接続をローカル環境のみ許可

LXTerminal
sudo ufw allow from 192.168.0.0/24 to any port [ポート番号]

家の中からしかSSH接続やVNC接続しない人はこっちの方がいいでしょう。

特定の端末からのみにしたいなら「192.168.0.0」の部分を、その端末のIPアドレスにすればいいでしょう。

ポート番号の接続を拒否

LXTerminal
sudo ufw deny [ポート番号]

接続許可しているポート番号の設定を削除

LXTerminal
sudo ufw delete allow [ポート番号]

接続拒否しているポート番号の設定を削除

LXTerminal
sudo ufw delete deny [ポート番号]

いろいろな操作

ここでは、基本操作8選ほど使いませんが、覚えた方が良いものをまとめました。

全てのポート接続を許可

LXTerminal
sudo ufw default allow

全てのポート接続を拒否

LXTerminal
sudo ufw default deny

ポート設定を削除するもう一つの方法

LXTerminal
sudo ufw status numbered

出力の例

Status: active
     To    Action   From
     --    ------    ----
[ 1] 5900 ALLOW IN 192.168.0.0/24
[ 2] 8080 ALLOW IN Anywhere
[ 3] 80   ALLOW IN Anywhere
[ 4] 443  ALLOW IN Anywhere

消したい設定の行の左側にある数字を下の[数字]に入れてください。

LXTerminal
sudo ufw delete [数字]

(y/n)?と表示されたらyと入力してEnterしましょう。

ファイアウォールのお勧め設定

こちらの章でファイアウォールをインストールした前提で始めます。また、全くいじっていないことを前提とします。

まず、ファイアウォールの状態を確認しましょう。

LXTerminal
sudo ufw status

このような出力が出ればOKです。

Status: inactive

次に、まだActiveになっていないときに全ての接続を拒否してしまいましょう。

LXTerminal
sudo ufw default deny

次にラズパイに接続するもののポートを許可します。SSHやVNCなどです。

私ははじめにSSHをAnywhere、VNCをローカルのみで設定することをお勧めします。万が一うまくいかなかったときにSSHのみでも接続できるようにしておくためです。

ラズパイへアクセスするためのSSH接続orVNC接続を許可します。数字は一個ずつ指定します。設定で変更していない限り、ポート番号22はSSH、5900はVNCです。

家のネットワーク外部からも接続するならこっち。

LXTerminal
sudo ufw allow [22, 5900]

SSHを外部から接続するならこんな感じですね。

LXTerminal
sudo ufw allow 22

ローカルのみならこっちです。

LXTerminal
sudo ufw allow from 192.168.0.0/24 to any port [22, 5900]

VNCをローカル環境のみで利用するなら以下の通り。

LXTerminal
sudo ufw allow from 192.168.0.0/24 to any port 5900

その後はポートを指定して許可するか、アプリのリストを出して、それから許可したいアプリを選択します。

アプリのリストを表示する

LXTerminal
sudo ufw app list

出力例

Available applications:
DNS
IMAP
IMAPS
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH
POP3
POP3S
SMTP
SSH
Samba
Socks
Telnet
Transmission
Transparent Proxy
VNC
WWW
WWW Cache
WWW Full
WWW Secure
XMPP

アプリの接続を許可する。(例としてSamba)

LXTerminal
sudo ufw allow Samba

そしてActiveにしましょう。繰り返しですがラズパイにアクセスするためのポートの許可は忘れずにしましょうね!

LXTerminal
sudo ufw enable

このような出力が出てればufwは起動しています。

Firewall is active and enabled on system startup

再起動して、

LXTerminal
sudo reboot

VNCやSSHがうまくつながればOKです。

SSHをローカルでしか使わないなら設定をローカルのみに変更してしまえばOKです。

このサイトではラズパイの活用法についての記事が多数あります。『ラズパイカテゴリーの記事一覧』や、下のオススメ記事を是非ご覧ください。

次に読みたいラズパイ記事リスト

お勧めの記事です。

ラズパイでマイクラサーバーを作るのは意外と簡単です。ぜひやってみてください。(記事リンク)

Raspberry pi(ラズパイ)でMinecraftサーバーを立てる【ローカル・公式サーバー】
Raspberry pi(ラズパイ)でMinecraftサーバーを立てる【ローカル・公式サーバー】

メールサーバーなんかも作れます。自分専用のメールサーバーなんて夢がありますよ!(記事リンク)

ラズパイでメールサーバーを構築するよ1/2(Postfix+Dovecot)
ラズパイでメールサーバーを構築するよ1/2(Postfix+Dovecot)

関連記事

ラズパイでメールサーバーを構築するよ2/2(Postfix+Dovecot)

ラズパイでメールサーバーを構築するよ2/2(Postfix+Dovecot)

ラズパイ4を買ったった

ラズパイ4を買ったった

【初心者向け完全版】ラズパイの初期設定【win/mac対応】

【初心者向け完全版】ラズパイの初期設定【win/mac対応】

ラズパイでマインクラフトサーバーを立てる方法【ローカル・公式サーバー】

ラズパイでマインクラフトサーバーを立てる方法【ローカル・公式サーバー】

【1ヶ月60円】ラズパイの電気代知ってる?全部計算してみた。

【1ヶ月60円】ラズパイの電気代知ってる?全部計算してみた。

ラズパイでマインクラフトサーバーを立てる方法【Spigot・とりあえず起動編】

ラズパイでマインクラフトサーバーを立てる方法【Spigot・とりあえず起動編】

raspberry pi 4(ラズパイ4)で公式ラズパイサーバーを起動したときのラズパイへの負荷をみてみたよ。

raspberry pi 4(ラズパイ4)で公式ラズパイサーバーを起動したときのラズパイへの負荷をみてみたよ。

ラズパイでマインクラフトサーバーを立てる方法【グローバル・公式サーバー】

ラズパイでマインクラフトサーバーを立てる方法【グローバル・公式サーバー】