e3FireWall

ufw(Uncomplicated FireWall)は、Ubuntuで標準的に利用できる、「iptablesを簡単に設定するツール」です。ufwを利用することで、「外部からの接続は基本的に受け付けない」「sshだけは許す」などといった設定を、iptablesにくらべて格段に少ない操作で実現できます。

//Gijutsu-Hyoron

■ RaspiOS アップデート

セクションb4による

■ ufwのインストールと基本コマンド

#インストール
$ sudo apt install ufw -y
//基本コマンド
#ファイアウォールの状態
$ sudo ufw status
  Status: inactive
#有効化
$ sudo ufw enable
#無効化
$ sudo ufw disable

#ポート番号で接続を許可
$ sudo ufw allow ポート番号
#ポート番号の接続をローカル環境のみ許可
$ sudo ufw allow from 192.168.0.0/24 to any port ポート番号

#ポート番号の接続を拒否
$ sudo ufw deny ポート番号
#接続許可しているポート番号の設定を削除
$ sudo ufw delete allow ポート番号
#接続拒否しているポート番号の設定を削除
$ sudo ufw delete deny ポート番号
#ポート設定を削除
$ sudo ufw delete ポート番号

#全てのポート接続を許可
$ sudo ufw default allow
#全てのポート接続を拒否
$ sudo ufw default deny

■ ufwの設定

#IPv6を適用しない
$ sudo nano /etc/default/ufw
7: IPV6=no

■ ラズパイにファイアーウォールを設定

#ポート設定を削除
$ sudo ufw reset
#最初にすべてのポートを拒否しておく
$ sudo ufw default deny

#FTPアクセスを許可
$ sudo ufw allow ftp #(21/tcp)
#SSHを許可する
$ sudo ufw allow ssh #(22/tcp)
#Webサーバーを許可する
$ sudo ufw allow 80/tcp
$ sudo ufw allow 443/tcp

#RasPi のローカルネットワークの全てを許可(PCからRaspiのFTP接続も含む)
$ sudo ufw allow from 192.168.0.0/24   ※

#ファイアウォールを起動させる
$ sudo ufw enable

※:Raspberry Pi でローカル接続//ぷにうす研究室


#ファイアウォールの状態を確認する
$ sudo ufw status numbered
//output
Status: active
     To                         Action      From
     --                         ------      ----
[ 1] 21/tcp                     ALLOW IN    Anywhere
[ 2] 22/tcp                     ALLOW IN    Anywhere
[ 3] 443/tcp                   ALLOW IN    Anywhere
[ 4] Anywhere                ALLOW IN    192.168.0.0/24
[ 5] 80/tcp                     ALLOW IN    Anywhere

■ 他の補助ツール

1.netstat コマンドの -l オプションを使用して、リスニングサーバーソケットのみを表示
リッスンしているポートの確認
$ netstat -tlnw
2.ポートを使用しているプロセスを調べる
#nmapをインストール
$ sudo apt-get install nmap
#現状のポートの利用状態
$ nmap localhost