
- SSLモード
-
normalFTP セキュリティ的にはすべて生のままで通信される通常のFTPになります。WinInetモード通信と暗号化がないという意味では変わりませんが 、libcurlを使用しているため処理方法はまったく異なります。通常は60秒でセッションが切れます。サイズが大きくなるとセットしなおしています。 ファイルサイズが大きい場合は通信速度が遅いとタイムアウトが発生する可能性があります。これはlibcurlが持ってるものでファイルサイズの大きさによってタイムアウト時間を調整しています。大きなサイズのファイルを転送する場合 タイムアウトを無制限にする方法は何かあったときプログラムが固まっているようになってしまうリスクもあるため時間制限はセットしています。 もし途中でダウンロード/アップロードが失敗するようでしたらWinInetモードで行ってください。タイムアウトが発生した場合は処理が失敗と出てStatusBarにメッセージがセットされます explicitFTP ポート番号を変更しない場合は最初は通常の21番ポートで通信します。SSLでの接続が確立後にユーザー名やパスワードのやり取りが暗号化された状態で行われます
但し、FSynchの場合PasvModeをPASV/EPSV/EPRTにした場合はCCC(Clear Command Channel)をPASVにしてパケットがルーター上で切り分けされるようにします(PORTモード以外,PORTモードとはlibcurl固有の呼び方ですがPASSIVEでないモード)
(CURLOPT_FTP_SSL_CCCの設定がCURLFTPSSL_CCC_ACTIVEとして動作、これはFTPを使う場合は通常はルーター越えで使えないと困ることが多いためです。同じネットワークであればわざわざSSL通信も必要ないでしょう)
これはimplicitFTPでも同じです。”CURLOPT_FTP_SSL_CCC” で検索してください
SSL接続が出来なかった場合はどういう挙動をするかはSSL/TLSの項目をご覧くださいimplicitFTP これはFTPサーバー側がimplicitで待ち受けている必要があります。通常は990番ポートが使用されます。explicitFTPモードと同様にユーザー名やパスワード含めて暗号化されます。
SSL接続が出来なかった場合はどういう挙動をするかはSSL/TLSの項目をご覧ください - PasvMode
- libcurlの場合はPASVはデフォルトになります。ネットワークでルーターが介されていない同一ネットワーク上での接続の場合のみコンボボックスのリスト一番下PORTを選択することも可能とは思います
PASVでうまくいかない場合はEPSVにしてコネクションを行うことで成功することがあります。 - SSL/TLS
trySSL | SSL通信を試みます。通常はFTPサーバー側が対応していればSSLで行いますが、そうでない場合はnormalFTPモードで通信される可能性があります。SSLでできない場合に切断されるかどうかはサーバー側でも設定があるのでこの選択の場合は必ず切断されることはなくnormalFTPの場合もあることを意識してください。 |
SSL-All | このモードは必ずSSL通信でコネクションを確率しようとし、それができない場合はあきらめ切断されコネクションは失敗します。 接続がどのモードでコネクションしているかはステータスバーで確認できます。 |
TLS-auth | これはTLSの認証方法を使用するということですが、libcurlはサーバーが対応可能な場合には最新の方法を試みますのでFTPサーバーが余程古くなければ気にする必要はなく最新のセキュリティ方法で認証されます。 |
上記画面を変更してOKボタンを押した場合は必ず、一覧リストにある「修正」ボタンを押して変更内容を転送してください。
- メニューより設定 > 環境設定 > FTP接続の基本設定にあります
libcurlモードのログ |
![]() |
ログ出力をONにすることでログファイルに接続の途中経過などがわかります。 このログ内容はライブラリのlibcurlが出力しているもので同じライブラリ使用しているアプリ共通です。 ftp_curl.logのファイルがlibcurl専用の出力ログファイル名になります。 ログ出力のための設定は環境設定からFTPの基本設定で該当箇所をチェックします |
- FTP接続が成功
-
winInet (normalFTP) libcurl (normalFTP) libcurl (explicitFTP) libcurl (implicitFTP) - FTP接続が失敗
-
何らかの理由でログインなどエラー発生 - 通信の切断処理
-
通信の切断ボタンなどで切断した場合