KUSANAGIでは、セキュリティの観点からrootログインを禁止することが推奨されています。
その場合、WinSCPでも一般ユーザー(作業用ユーザー)でログインすることになるため、root権限でのファイル操作ができなくなります。
- rootログインは禁止したい。
- だけどWinSCPではroot権限でファイル操作したい。

相反する願いを両立させちゃう欲ばりな方法を紹介します!
WinSCPに一般ユーザーでログインしてroot権限で作業する方法
サーバー側の設定
人によっては/etc/sudoersに次の設定をしているかもしれません。
その場合、本項の設定は不要ですので飛ばしてください。
【ユーザー名】 ALL=NOPASSWD: ALL

決して推奨しません
以下は、そうでない場合。
/etc/sudoersを開いて編集します。
$ sudo visudo
次の記述を加えます。
【ユーザー名】 ALL=NOPASSWD: /usr/libexec/openssh/sftp-server
保存して終了します。
WinSCP側の設定
起動時の画面から「設定」を押してSFTPのタブを開きます。

SFTPサーバーの欄に以下のコマンドを入力します。
sudo /usr/libexec/openssh/sftp-server
設定が終わったら、以下の2点についてチェックしてみてください。
- ログインできるか。
- root権限が必要なファイルを操作できるか。
注意1:sftp-serverのパスの確認について
本稿はKUSANAGIを使っている方を前提とする記事ですが、もしかしたらそうでない方もいるかもしれません。
その場合、sftp-serverのパスが異なる可能性があります。
以下のいずれかのコマンドでパスを確認できます。
which sftp-server
または
grep sftp /etc/ssh/sshd_config
注意2:「sudo: no tty present」で詰まる人へ
もし次の事情で設定がうまくいかない場合はsudoers設定を確認してみてください。
- sudoパスワード要求が出る
- ttyエラーが出る
- 接続できない
まとめ
これまではモヤモヤした気分を抱えながらrootでログインしてました。
しかしようやくrootログインを禁止にできました。

やってみたら、意外とあっさり解決したのではないでしょうか?
VPSは、もう「黒い画面」だけじゃない。
「VPSは難しそう」と諦めていませんか? ConoHaのKUSANAGIなら、ブラウザ上の管理画面(KUSANAGI Manager)で、ドメイン設定からSSL発行まで直感的に操作可能です。
コマンド操作なしで世界最速級の環境を構築できる、今の時代の初心者にとっての最適解。私が長年愛用している理由がここにあります。
※当サイト経由で新規申し込みいただくと、特典として1000円分のクーポンをもらえます。