🌰
SFTPでumaskを000に変更する
はじめに
SFTPでumaskを必ず000で動作させる設定を行う必要があったので実施しました。
SSHDの設定の変更
変更の対象ファイル・・・/etc/ssh/sshd_config
変更前
# override default of no subsystems
Subsystem sftp /usr/lib/openssh/sftp-server
変更後
# override default of no subsystems
Subsystem sftp /usr/lib/openssh/sftp-server -u 000
設定の反映
-
systemctl reload sshd
で設定は更新される。 - すでに接続済みのコネクションは変更されないので、一回接続を切断して再接続して貰う必要がある。
- 次のように
ps -ef | grep ssh
で確認できる。
ubuntu 566 565 0 Oct22 ? 00:00:06 /usr/lib/openssh/sftp-server -u 000
sedでの設定修正・Ubuntuの場合
sed -i 's!^Subsystem\s*sftp\s*/usr/lib/openssh/sftp-server$!Subsystem\tsftp\t/usr/lib/openssh/sftp-server -u 000!g' /etc/ssh/sshd_config
- デフォルト状態のみ想定手動調整されているとマッチしない
- $をつけないと繰り返すと増えていくので注意
その他
- sedの区切り文字は/以外でも利用できる。
- !や@などでも可能なので/を含む場合は!をつかっています。
- 最初の文字で自動で判別してくれるとのこと
Discussion