ローカルポートである21 FTPポートの転送中にSSHにログインすると、コマンドは次のようになります。
ssh -R 2101:localhost:21[Eメール保護]-p 8288
正常にログインした後、SSHは次のコマンドを送信しました。
ftp ikiw@localhost -p 2101
コマンドが正しく実行され、問題なくFTPに正常にログインしましたが、FTP中にコマンドに使用できるファイルのリストを表示したい場合、または次のls
エラーdir
が発生します。
ftp: '::1:27394' に接続できません: 接続が拒否されました。
何が問題なの?コマンドを実行すると、FTPはランダムに新しいポートを生成しますかls
?
ローカルFTPをSSH / VPSに転送し、SSH / VPSからローカルコンピュータにFTPを正常に実行したいと思います。誰でも助けてソリューションを提供できますか?とても感謝しています! :D
答え1
FTPはひどいプロトコルです。はい、複数のポートを使用します。制御ポートがあり、すべてのデータ転送(ls
またはその他)get
に対して2番目の新しいランダムポートが開きます。
さらに悪いことは、PASVを使用するのかアクティブモードのFTPを使用するのかによって仕える人接続を開始できます。
FTPがこれらの転送を処理することは容易ではありません。 SSH接続になっていて使えませんかsftp
?これはSSHに直接組み込まれたFTPに似たプロトコルなので、ポート転送は必要ありません。
答え2
FTPはIP6を使用しようとしているようですが、IP4を介してのみトンネリングしています。 -4オプションを使用してftpを起動してみてください。