hack のためのネタ帳, etc,,,

ftp を mount する場合は以下のようにすれば良い。
ftp:// は省略しても良い。
# password をその場で打ち込む場合
curlftpfs ftp://server.name mount_point -o user=username
# username, password を URL に含める場合(推奨しないけど)
curlftpfs ftp://username:password@server.name mount_point
ftps を mount する場合は以下のようにすれば良い。
#explicit (明示的) ftps
curlftpfs ftp://server.name:990 mount_point -o ssl,user=username
#implicit (暗黙の) ftps
curlftpfs ftps://server.name mount_point -o user=username
ftps:// の時は自動的に port 990 が用いられる。
-o オプションで以下のパラメータを与えると検証を省略出来る。
  • no_verify_peer : サーバー証明書に付属の CA 署名の確認を省略
  • no_verify_hostname : サーバー名とサーバー証明書の CN フィールドの一致の確認を省略

ただし、2015-02-04 現在、Ubuntu 14.04.1 TLS の curlftpfs 0.9.2 libcurl/7.35.0 fuse/2.9 では、no_verify_hostname は機能せず、以下のようなエラーが発生する。
$ curlftpfs ftp://server.name:990 mount_point -o ssl,user=username,no_verify_hostname
...
Error setting curl: CURLOPT_SSL_VERIFYHOST no longer supports 1 as value!
これに関して cURL のドキュメントを読むと、どうも、CURLOPT_SSL_VERIFYHOST = 1 は libcurl 7.28.0 以前にデバッグ用として用いられていたらしいのだが、間違って設定するプログラマが後を絶たないため、要検証である CURLOPT_SSL_VERIFYHOST = 2 をデフォルトにして CURLOPT_SSL_VERIFYHOST = 1 は 2 と同じ扱いにして、エラー表示するように変更したらしい。検証を省略するには CURLOPT_SSL_VERIFYHOST = 0 とすべきらしいので、これは curlftpfs のバグと言うか、libcurl が言うところのよくある間違いに引っかかってる状態のようだ。
しかし curlftpfs の bug tracker へ 2013-10-23 に登録された後 2014-05-06 には上記情報も提供されていて Milestone: v1.0 (example) にも登録もされているというのに、依然として status: open とか、いつになったら直してくれるの?これ?

参考:

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

管理人/副管理人のみ編集できます