Linux の ufw でファイル共有 Samba の接続元を家のネットワークに絞る
この手順で使う値
- OS:Linux
- ポート:445・139
- 家のネットワークの例:192.168.1.0/24。コマンドの 192.168.1.0/24 は、お使いのネットワークの範囲に置き換えてください。
Pengolin のアプリでは、お使いのPCで見つかったポートとネットワークの範囲を入れた手順を表示します。
これは何か
Samba のファイル共有は、ほかの機器とフォルダーやプリンターを共有するための仕組みです。今は、どこからでも接続を受ける設定になっています。ここでは、ufw のファイアウォールで、家のネットワーク 192.168.1.0/24 の機器からだけ受けるようにします。
使っているかの確かめ方
端末で次を実行します。「Local Address:Port」の列に「:445・139」があれば、その番号で接続を待っています。
ss -tln
手順
始める前に:遠隔操作でこのPCを使っているなら、できるだけこのPCの前で作業してください。家のネットワークの外からファイル共有を使っている場合は、絞ると使えなくなります。
管理者権限が必要
今の ufw のファイアウォールの状態を確かめます。先頭に sudo を付けたコマンドは管理者として動きます。パスワードを聞かれたら、自分のログインパスワードを入れて Enter を押します。パスワードは入力しても画面に出ません。Status: active なら有効、inactive なら無効です。あわせて、445・139番を接続元 Anywhere で許可している行がないかを見ます。
sudo ufw status numbered
管理者権限が必要
家のネットワーク 192.168.1.0/24 からだけ、445・139番への接続を許可します。必ず、広い許可を消す前・ufw を有効にする前に行います。
sudo ufw allow proto tcp from 192.168.1.0/24 to any port 445
sudo ufw allow proto tcp from 192.168.1.0/24 to any port 139
管理者権限が必要
手順2で見つけた広い許可、つまり接続元が Anywhere の 445・139番の行を消します。sudo ufw delete のあとに、一覧の [ ] の中の番号を付けて実行します。番号が 3 なら sudo ufw delete 3 です。1つ消すと番号がずれるので、消すたびに sudo ufw status numbered で一覧を見直します。
管理者権限が必要
手順2で inactive だった場合だけ、ufw を有効にします。有効にすると、許可していないほかの接続は届かなくなります。必ず手順3のあとに行います。
sudo ufw enable
管理者権限が必要
最後にもう一度一覧を見て、445・139番の許可が 192.168.1.0/24 からだけになっていれば完了です。
sudo ufw status numbered
直したら、もう一度診断すると確かめられます
出典
- https://documentation.ubuntu.com/server/how-to/security/firewalls/
- https://manpages.ubuntu.com/manpages/noble/man8/ufw.8.html
- https://manpages.ubuntu.com/manpages/noble/man8/ss.8.html
- https://manpages.ubuntu.com/manpages/noble/man8/sudo.8.html
確認日:2026-10-21

