Ubuntuを自宅や社内のファイルサーバーとして活用する際、最もポピュラーな選択肢がSambaです。しかし、設定を一歩間違えるとネットワーク内の誰からでも中身が丸見えになってしまうリスクもあります。
今回は、基本のインストールから、セキュリティを強固にするための設定までをステップ・バイ・ステップで解説します。
1. Sambaのインストール
まずはパッケージリストを更新し、Samba本体をインストールします。
sudo apt update
sudo apt install samba -y
インストールが完了したら、サービスが稼働しているか確認しましょう。
systemctl status smbd
2. 共有ディレクトリの準備と基本設定
次に、実際にファイルを置く場所を作成し、Sambaの設定ファイル(smb.conf)を編集します。
共有フォルダの作成
sudo mkdir -p /srv/samba/share
sudo chown nobody:nogroup /srv/samba/share
sudo chmod 777 /srv/samba/share
smb.conf の編集
設定ファイルを編集する前に、必ずバックアップを取っておきましょう。
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
sudo nano /etc/samba/smb.conf
ファイルの末尾に以下の設定を追記します。
[Shared]
path = /srv/samba/share
browsable = yes
writable = yes
guest ok = no
read only = no
3. ユーザー管理
SambaはLinuxのシステムユーザーとは別に、独自のパスワードデータベースを持っています。
Sambaユーザーの追加
既存のLinuxユーザー(例: ubuntu)をSambaに登録します。
sudo smbpasswd -a ubuntu
※ここで設定するパスワードは、Windowsなどから接続する際に使用します。
4. 【重要】セキュリティ設定の強化
ここからは、今回のメインであるセキュリティ設定について章分けして解説します。
① ネットワーク制限(IPアドレス制限)
特定のIPアドレスやセグメントからのみアクセスを許可することで、不正アクセスを物理的に遮断します。[global] セクションに追記してください。
[global]
# ローカルホストと特定のネットワーク(例: 192.168.1.0/24)のみ許可
hosts allow = 127. 192.168.1.
hosts deny = ALL
② 使用プロトコルの限定(古いSMBの禁止)
脆弱性のある古いプロトコル(SMB1など)を無効化し、セキュアなSMB3以上を強制します。
[global]
min protocol = SMB3
max protocol = SMB3
③ ファイアウォール(UFW)の設定
Ubuntu標準のファイアウォールで、Sambaのポート(137, 138, 139, 445)を適切に管理します。
# Sambaプロファイルを許可
sudo ufw allow Samba
# 特定のサブネットからのみ許可したい場合(より安全)
sudo ufw allow from 192.168.1.0/24 to any app Samba
sudo ufw reload
④ インターフェースの固定
Sambaが待ち受けるネットワークインターフェースを限定します。例えば、外部に面したインターフェースがある場合、ローカル側のみに絞るのが安全です。
[global]
interfaces = lo eth0
bind interfaces only = yes
5. 設定の反映と接続テスト
設定が終わったら、文法チェックを行ってからサービスを再起動します。
# 文法チェック
testparm
# 再起動
sudo systemctl restart smbd
接続方法
- Windows: エクスプローラーのパス欄に
\\(サーバーのIPアドレス)\Sharedを入力。 - macOS: Finderの「サーバへ接続」から
smb://(サーバーのIPアドレス)/Sharedを入力。
まとめ
Sambaの構築は簡単ですが、「プロトコルの制限」と「IPアドレスによるアクセス制限」を行うだけで、セキュリティ強度は格段に向上します。
特に多機能なサーバーとして運用する場合は、今回紹介したセキュリティ設定をまず最初に適用することを強くおすすめします。


コメント