LoginSignup
0
0

openSUSE Tumbleweed sftp 使用不可の解決

Posted at

先週にopenSUSEをLeapからTumbleweedに乗り換えました。
そしてFileZillaでWindowsとLinux間のファイル転送ができなくなった。
その時はsshとscpが使えますが、sftpは使えません。

>sftp -v ${servername}
debug1: Exit status 127

というエラーコードが出てきました。
調べると、127はsftp-serverが存在しないか場所が間違ったかのどちらです。
YAST Software Managerを開いて、opensshの中身を調べると、sftp-serverは/usr/libexec/ssh/sftp-server、sshd-configは/usr/etc/ssh/sshd_configに置いたらしくってとりあえず/usr/etc/ssh/sshd_configの

#Subsystem sftp /usr/libexec/ssh/sftp-server
Subsystem sftp internal-sftp

を修正した。改善されませんでした。
そして/etc/ssh/sshd_configを開くと、

Subsystem sftp /usr/lib/ssh/sftp-server

が書かれています。しかしTumbleweedの/usr/libにsshというdirectoryが存在しません。
ここを

Subsystem sftp internal-sftp

に修正して

sudo systemctl restart sshd

でsshdを再起動したら、sftpもFileZillaも使えるようになった。

まとめ

SSHサーバーの設定ファイルは/usr/etc/ssh/sshd_configではなく/etc/ssh/sshd_configです。
Tumbleweedのopensshはsftp-serverを/usr/libexec/ssh/sftp-serverにインストールした。
sftpのエラーコードが127の場合、/etc/ssh/sshd_configのSubsystem sftpを/usr/libexec/ssh/sftp-server(package managerでsftp-serverの場所を特定できる時はその場所)もしくはinternal-sftpに指定すれば解決できるかもしれません。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0