FSynch-libcurl 設定ガイド
libcurlモードを選択したときのFTP詳細設定画面
libcurlモードを選択したときだけ有効になる項目
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ボタンを押した場合は
必ず、一覧リストにある「修正」ボタンを押して変更内容を転送
してください。
libcurlモード時のログ出力
メニューより
設定 > 環境設定 > FTP接続の基本設定
にあります
libcurlモードのログ
ログ出力をONにすることでログファイルに接続の途中経過などがわかります。
このログ内容はライブラリのlibcurlが出力しているもので同じライブラリ使用しているアプリ共通です。
ftp_curl.log
のファイルがlibcurl専用の出力ログファイル名になります。 ログ出力のための設定は
環境設定からFTPの基本設定
で該当箇所をチェックします
FTP接続時のステータスバーの色の変化(2.1.8.2)
FTP接続が成功
winInet (normalFTP)
libcurl (normalFTP)
libcurl (explicitFTP)
libcurl (implicitFTP)
FTP接続が失敗
何らかの理由でログインなどエラー発生
通信の切断処理
通信の切断ボタンなどで切断した場合
CopyRight©Stacksoft ALL Rights Reserved