web-dev-qa-db-ja.com

SFTP「サーバーに接続できませんでしたエラー」

SFTP経由でサーバーに接続する際に問題が発生しました。システムにSSHで接続することはできますが、奇妙な理由でSFTPを使用できません(以前はできていました)。

Iptablesのルールをすべてクリアしましたiptables -Fまだアクセスできません。 (フルアクセスを許可するために)サブシステムを削除しましたが、まだアクセスできません。私は一生の間、問題が何であるかを理解することができません。したがって、解決策を不可能にしている。

更新

http://Pastebin.com/eZwZ5Z7w のサブシステム構成セクション

#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp sftp-server
1
ash

Sftpサブシステムの削除は、sftpを無効にするものです。エントリをもう一度追加してみてください。 sshサービスを再起動しても機能しない場合は、sshd構成で質問を更新してください。

更新

あなたが提供した設定はフルパスを与えていません、コメントされたバージョンを使用してみてください。

Subsystem sftp /usr/lib/openssh/sftp-server

たとえば、私の設定には

# grep sftp /etc/ssh/sshd_config 
Subsystem       sftp    /usr/libexec/openssh/sftp-server

また、locateを使用してファイルを検索すると、そのファイルがそこにのみ配置されていることが確認されます。

# locate sftp-server
/usr/libexec/openssh/sftp-server
/usr/share/man/man8/sftp-server.8.gz
0
becomingwisest

これはおそらく元のポスターには役立たないでしょうが、私は同じ症状をもたらす別の原因に遭遇しました。

症状:sftp -v <user>@<Host>すると、印刷後に接続がブロックされます。

debug1: Sending subsystem: sftp

原因:システムのデフォルトのシェル構成をバイパスするために、~/.bashrcの先頭に次の行を配置しました。

exec env -i HOME=$HOME TERM=$TERM bash --noprofile --rcfile ~/.bash2

単にexec bashでも同じ問題が発生します。これは理にかなっていると思います-~/.bashrcのソーシングは決して戻りません-代わりに、bashの新しいインスタンスが実行され、古いインスタンスが置き換えられます。

Sshサーバーが/usr/lib/openssh/sftp-serverを実行する前に、シェル構成ファイルを入手する必要があるのはおそらく驚くべきことです。

更新:OpenSSHFAQのこの関連エントリも参照してください。
http://openssh.com/faq.html#2.9
(「sftp/scpは接続に失敗しましたが、sshは問題ありません。」というタイトルのエントリ)

2
mpb