公開鍵SSHを使用すると機能しますが、SFTPではエラーが発生します

公開鍵SSHを使用すると機能しますが、SFTPではエラーが発生します

サーバーに openSUSE をインストールし、特定の IP からの 1 人のユーザーのみ、公開キーのみ (PAM なし、パスワードなし) が許可されるように SSH を構成しました。

SSH は機能し、X11 転送は機能し、SFTP は機能します。

さて、私は外部の世界とほぼ同じセカンダリ システムが必要でした。Xubuntu をインストールし、SSH とファイアウォールを設定し、openSUSE からまったく同じ SSH 構成とキーをコピーし、そして...

SSHは機能し、X11転送は機能し、SFTPは機能するではない仕事。

接続に FileZilla を使用していますが、「sftp は sftp サーバーから予期しないファイルの終わりを受信しました」というエラーが発生します。少し Google で検索したところ、サーバーの「/var/log/auth.log」を確認するようにというアドバイスが見つかったので、そのようにしました。すべて順調です。SFTP を使用して接続しようとすると、「sshd[11835]: Accepted publickey for ...」というメッセージのみが表示されます。

このような違いの原因は何でしょうか、またそれを修正するにはどうすればよいでしょうか?

答え1

ついに見つけました。他のクライアントを試して、そのうちの 1 つが新しい光をもたらしてくれることを期待しましたが、確かに「sftp -v」はそうでした。コピーした sshd 構成は、外部 sftp サーバーを使用していました (openSUSE にはありましたが、Xubuntu にはありませんでした)。これを内部サーバーに変更したところ、Xubuntu を使用しても接続できるようになりました。

役に立った投稿は次のとおりです:OpenSSH: 内部 sftp と sftp サーバーの違い

答え2

FTPサーバーはすでにインストールしましたか?まだの場合は、以下のようにvsftpのようなFTPサーバーデーモンをインストールしてください。

sudo zypper -n in vsftpd

次に、/etc/vsftpd.confファイルを構成します。それ以外の場合は、クライアントの構成を再確認し、SSH 秘密鍵と公開鍵の正しいディレクトリを配置していることを確認します。

関連情報