web-dev-qa-db-ja.com

(S)FTPプロキシの認証と使用にはどのような種類または標準がありますか?

(S)FTPを使用してファイルを企業サーバーにダウンロードするプログラムを開発およびサポートしています。企業のクライアントは、私のプログラムが直接接続するのではなく、プロキシを経由することを要求することがよくあります。残念ながら、(S)FTPプロキシは、特に認証に関しては標準化されていないようです。

ベンダーを事前に知らなくても、(S)FTPプロキシと対話するための標準的な方法を見つけたいと思います。

それが不可能な場合は、さまざまな(S)FTPプロキシタイプ、それらの長所と短所(使用する選択肢がある場合)、それらの使用方法、それらを実装しているベンダーの例のリストをまとめたいと思います。詳細情報などへのリンク.

2
Stephen

これが私がこれまでに見つけたものです:

  • チェックポイントログイン-構文
    • FTPで動作します
    • USERコマンドとPASSコマンドを介してプロキシに追加情報を渡すことで機能します。
    • 特別なコマンドは必要ないため、プロキシの概念が組み込まれていない場合でも、すべてのFTP対応プログラムでこのメソッドを使用できるはずです。使用するユーザー/パスを変更するだけです。
    • ユーザー:ftp_username @ proxy_username @ ftp_Host
    • パス:ftp_password @ proxy_password
    • 使用者:Bluecoat ProxySG、おそらく他の人。
    • 詳細: https://kb.bluecoat.com/index?page=content&id=KB2898
  • Raptor login-syntax
    • FTPで動作します
    • プロキシパスワードがACCTを使用して渡されることを除いて、チェックポイントと同様です。
    • プログラムがACCTを理解する必要がありますが、パスワードを分離することが望ましい場合があります。チェックポイントとは異なり、パスワードで@文字をサポートします。
    • ユーザー:ftp_username @ ftp_Host proxy_username
    • パス:ftp_password
    • ACCT:proxy_password
    • 使用者:Bluecoat ProxySG、おそらく他の人。
    • 詳細:上記と同じリンク(スーパーユーザーは2つのリンクに制限します)
  • [〜#〜]靴下[〜#〜]
    • どのプロトコルでも機能します
    • SOCKSは、標準化されたプロキシプロトコルです。
    • SOCKSは、FTPだけでなく、まったく異なるプロトコルにも使用できます。
    • プログラムがSOCKSを理解して使用できる場合、これはおそらく最も柔軟なソリューションです。ただし、実装はより複雑になる場合があります。
    • 詳細:ウィキペディアのSOCKS
  • HTTP CONNECT
    • FTPで動作します
    • プロキシサーバーへのHTTP接続から始めます。プロキシを介した接続が確立されると、TCPは引き続き使用されますが、クライアントは他のプロトコル(FTPなど)に自由に切り替えることができます。
    • これは最も簡単で柔軟なオプションかもしれません。欠点は、プログラムがFTPサポートに加えて、最初のCONNECTのHTTPプロトコルをサポートする必要があることです。
    • 詳細: http://en.wikipedia.org/wiki/HTTP_tunnel#HTTP_CONNECT_Tunneling
  • Filezillaで参照されている他のメソッド。これらの説明はまだ見つかりません。
    • USER @ Host
      • コマンドの順序(リテラルではないカンマ):USER%s、PASS%w、USER%u @%h、PASS%p、ACCT%a
    • 地点
      • コマンドの順序(リテラルではないカンマ):USER%s、PASS%w、SITE%h、USER%u、PASS%p、ACCT%a
    • 開いた
      • コマンドの順序(リテラルではないカンマ):USER%s、PASS%w、OPEN%h、USER%u、PASS%p、ACCT%a
  • ベンダーリスト
    • http://www.gartner.com/technology/reprints.do?id=1-1AOGE0B&ct=120529&st=sb%252 を参照してください。
    • これは実装の詳細を提供しませんが、提供される範囲を理解するのに役立ちます。 Secure Web Gatewayはプロキシのスーパーセットだと思います(つまり、マルウェアの削除、おそらく監視などの他のサービスを提供します)。通常、企業プロキシを経由する場合、それはこれらのSWGの1つになります。
1
Stephen