
みなさんラズパイにファイアウォールの設定をしていますか?
ラズパイでサーバーなどを立てる際に気になるセキュリティ。
サーバーを安全に始めるために、ぜひファイアーウォールを設定しましょう。
ここでは、コマンドの基本的な説明と初めてファオアウォールを設定する方向けの設定方法を書きました。コピペでパクってね。
更新履歴
2019/12/28お勧め設定を一部変更
2020/1/13一部表記ミスを変更
2020/2/9リンク修正
2020/6/17表記変更
2020/9/22一部手直し
2020/10/10コードデザイン変更
環境
機器 | Raspberry Pi 3 Model B+ Raspberry Pi 4 Model B 4GB |
OS | Raspbian GNU/Linux 10 |
もちろんどのラズパイでも同じように設定できますよ!
ファイアウォール設定
0. 設定準備
「LXTerminal」から設定をします。

こんな画面が開きます。これ以降のコマンドはここに入力して、EnterすればOKです。
[この中]に書いてある数字は[この記号]を消し、置き換えてください。ここにコピペ入力👈
[この記号]は設定する数字に置き換え😁

1. ufwのインストール
ufw(ファイアーウォールアプリ)をインストールする
sudo apt install ufw
ただインストールするだけでファイアウォールを導入できます。簡単ですね。
※お勧め設定はこちらから。初めて設定する方はパクった方が早いです。
2. 基本操作7選
ここでは、ファイアウォールを設定する上での基本的な操作を7つ厳選しました。
ファイアーウォール有効化
sudo ufw enable
ファイアーウォール無効化
sudo ufw disable
ファイアーウォールの状態確認
sudo ufw status
ポート番号の接続を許可
sudo ufw allow [ポート番号]
ポート番号の接続を拒否
sudo ufw deny [ポート番号]
接続許可しているポート番号の設定を削除
sudo ufw delete allow [ポート番号]
接続拒否しているポート番号の設定を削除
sudo ufw delete deny [ポート番号]
3. いろいろな操作
ここでは、基本操作7選ほど使いませんが、覚えた方が良いものをまとめました。
全てのポート接続を許可
sudo ufw default allow
全てのポート接続を拒否
sudo ufw default deny
ポート設定を削除するもう一つの方法
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
消したい設定の行の左側にある数字を[上で出た消したい設定の数字]に入れてください。
sudo ufw delete [番号]
ローカル環境からの接続のみ許可
sudo ufw allow from 192.168.0.0/24 to any port [ポート番号]
家の中からしかSSH接続やVNC接続しない人はこっちの方がいいでしょう。
特定の端末からのみにしたいなら「192.168.0.0」の部分を、その端末のIPアドレスにすればいいでしょう。
4. お勧め設定
ここでファイアウォールをインストールした前提で始めます。また、全くいじっていないことを前提とします。
まず、ファイアウォールの状態を確認しましょう。
sudo ufw status
このような出力が出ればOKです。
Status: inactive
次に、まだActiveになっていないときに全ての接続を拒否してしまいましょう。
sudo ufw default deny
次にラズパイに接続するもののポートを許可します。SSHやVNCなどです。
私ははじめにSSHをAnywhere、VNCをローカルのみで設定することをお勧めします。万が一うまくいかなかったときにSSHのみでも接続できるようにしておくためです。
ラズパイへアクセスするためのSSH接続orVNC接続を許可します。{22(SSH), 5900(VNC)}
sudo ufw allow [22, 5900]
ローカルのみならこっちです。
sudo ufw allow from 192.168.0.0/24 to any port [22, 5900]
その後はポートを指定して許可するか、アプリのリストを出して、それから許可したいアプリを選択します。
アプリのリストを表示する
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)
sudo ufw allow Samba
そしてActiveにしましょう。繰り返しですがラズパイにアクセスするためのポートの許可は忘れずにしましょうね!
sudo ufw enable
再起動して、
sudo reboot
VNCやSSHがうまくつながればOKです。
SSHをローカルでしか使わないなら設定をローカルのみに変更してしまえばOKです。