すべての記事

macFUSEなしでMacからSFTPとS3に接続する方法

· 11分で読めます

結論から言うと: FinderはSFTPサーバにもS3バケットにも接続できません。よく使われる回避策はmacFUSEでマウントする方法ですが、これにはシステム拡張のインストールが必要です。それはまったく不要にできます。無料のオープンソースツールrcloneをHomebrewでインストールし(brew install rclone)、ターミナルから、またはFolia Filesのようにrcloneを利用するファイルマネージャから使えば、カーネル拡張なしでリモートのファイルを閲覧・コピー・編集できます。

この記事では、Finderでは足りない理由、macFUSEを使わない方法、そしてFolia Filesの2つのエディションがこうした接続をどう扱うかを説明します。

サイドバーに「クラウド」と「サーバ」のセクションがあり、左にローカルフォルダ、右にpCloudのフォルダを表示したFolia Files

FinderでSFTPやS3を開けない理由

Finderの移動 › サーバへ接続…(⌘K)が対応しているのは、SMB、AFP、NFS、WebDAV、FTP(FinderではFTPは読み出し専用)という決まったプロトコルだけです。SFTPは含まれておらず、Amazon S3や、Backblaze B2、Wasabi、Cloudflare R2、MinIOなどのS3互換サービスも同様です。「サーバへ接続」にsftp://のアドレスを入力しても、Finderのウインドウは開きません。

つまり「FinderでSFTP」は、macOSに標準では用意されていません。別のツールが必要です。

macFUSEの問題点

SFTPをFinderで使う昔ながらの方法は、サーバをディスクのようにマウントすることです。macOSでは従来、これにmacFUSE(SSHFS、またはrclone mountと組み合わせて)が使われてきました。macFUSEは長いあいだカーネル拡張に頼っており、それがいくつかの手間を生みます:

  • インストールには管理者アカウントが必要です。
  • Appleシリコン搭載Macでは、他社製のカーネル拡張は、復旧モードで起動セキュリティポリシーを下げないと読み込まれません。
  • macOSの大型アップデートで動かなくなり、新しいバージョンが出るまで待つことがあります。
  • 情報システム部門が管理する仕事用のMacでは、こうした操作自体が許可されていないかもしれません。

サーバ上のファイルを開いて編集し、保存し直したいだけなら、macFUSEは必要ありません。以下の方法はどれもmacFUSEを使いません。

方法1:ターミナルに標準のsftpとscp

macOSにはOpenSSHが入っているので、sftpとscpはすでに使えます:

sftp user@example.com

セッションの中では、ls、cd、get file.txt、put file.txtが期待どおりに動きます。ファイルを1つだけコピーするなら1行で済みます:

scp report.pdf user@example.com:/home/user/

ちょっとした転送には最適です。ただ、大きなフォルダ階層をたどるには面倒で、S3やクラウドストレージにはまったく役立ちません。

方法2:コマンドラインでrcloneを使う

rcloneは、SFTP、Amazon S3とS3互換サービス、WebDAV、Google Drive、Dropbox、OneDriveなど、数十種類のストレージプロトコルに対応しています。普通のプログラムとして動くので、カーネル拡張は不要です。

Homebrewでrcloneをインストール

Homebrewがまだなければ、brew.shからインストールします。次にターミナルで:

brew install rclone

リモートを設定する

対話式の設定を起動します:

rclone config
  1. nを入力して新しいリモートを作り、myserverのような短い名前を付けます。
  2. ストレージの種類を選びます。SSHサーバならsftp、Amazon S3や互換サービスならs3です。
  3. SFTPの場合はホスト、ユーザ名、ポート(通常は22)、そしてパスワードかSSH鍵のパスを入力します。S3の場合はプロバイダを選び、アクセスキー、シークレットキー、リージョンまたはエンドポイントを入力します。
  4. 詳細オプションは、必要とわかっている場合を除きデフォルトのままにして終了します。

使ってみる

rclone lsd myserver:            # フォルダの一覧
rclone ls myserver:/var/www     # ファイルの一覧
rclone copy ~/Desktop/site myserver:/var/www/site

rcloneは、macFUSEなしでリモートをディスクとしてマウントすることもできます。nfsmountコマンドが、macOS内蔵のNFSクライアントにリモートを提供します。これはよく動き、スクリプトにも組み込めます。とはいえコマンドラインであることに変わりはなく、プレビューも、2つのフォルダ間のドラッグ&ドロップもなく、どのリモートをどこにマウントしたかも自分で覚えておく必要があります。そこでグラフィカルなツールが役立ちます。

方法3:rcloneを使うファイルマネージャ

「rclone Mac GUI」や「Mac S3 ブラウザ」と検索する人が求めているのは、たいてい普通のファイル操作です。ローカルのフォルダの隣にサーバを表示し、ドラッグ、ドロップ、プレビュー、編集をしたいのです。

Mac用のネイティブなファイルマネージャであるFolia Filesは、Webサイト版でまさにこれを実現します。SFTP、S3、クラウドには裏でrcloneを使い、rcloneのnfsmountコマンドでマウントするので、macFUSEも管理者権限も不要です。追加するにはツール › 接続(サーバとクラウド)…(⌘K)を選び、新規接続をクリックします。保存する前に接続をテストで設定を確認できます。

サーバはサイドバーのサーバセクションに、クラウドのアカウントはクラウドに表示されます。ほかのフォルダと同じように、タブや左右に並べたパネルで閲覧でき、サーバとローカルフォルダのあいだはドラッグ&ドロップでコピーできます。

同じFolia Filesウインドウの2つのパネルに、Dropboxのフォルダとその下にローカルの「書類」フォルダを表示

実用上のポイント:

  • ネットワーク共有には追加のものは不要です。 SMB、AFP、NFS、WebDAV、FTPの接続はFinderと同じくrcloneなしで動くので、NASやWebDAV経由のNextcloudサーバを、SFTPサーバと同じリストに並べられます。
  • Dropbox、Google Drive、OneDriveなど、専用のMacアプリがあるサービスは設定不要です。それらのフォルダはクラウドセクションに表示されます。
  • リモート編集。 サーバ上の書類をいつものアプリで開くと、Folia FilesはMac上のコピーで作業し、保存するたびにサーバへ送り返します。このオプションは設定 › ファイルとネットワークにあります。
  • 再開できるコピーと、取り消せる履歴。 ネットワークで中断したコピーは止まったところから再開し、すべての操作が記録されます。大きなフォルダをサーバとやり取りするときに効いてきます。

Folia Filesの設定の「ファイルとネットワーク」ページ:ネットワークで中断したコピーは自動的に再開

Webサイト版とMac App Store版の違い

Folia Filesには2つのエディションがあり、アプリも価格も同じで、買い切りです。ただしリモート接続については違いがはっきりしています:rcloneを使ったSFTP、S3、クラウドへの直接接続が組み込まれているのはWebサイト版だけです。

Webサイト版 App Store版 App Store版+Companion
ネットワーク共有(SMB、AFP、NFS、WebDAV、FTP) ○ ○ ○
専用アプリで入れたクラウド ○ ○ ○
rclone経由のSFTP、S3、クラウド ○ × ○
フォルダの同期 ○ × ○

Webサイト版(foliafiles.com): すべて含まれています。brew install rcloneでrcloneを一度インストールすれば、あとはFolia Filesが引き受けます。

Mac App Store版: Appleのサンドボックスにより、アプリはrcloneを実行できません。そのため単体ではSFTPもS3もありません。無料の小さなアプリFolia Files Companionを入れると追加できます(rcloneはやはりHomebrewでインストールしておく必要があります):

  1. foliafiles.com/companionからダウンロードします。
  2. アプリケーションフォルダに移動します。
  3. 一度開きます。

Companionが実行するのは決められた操作の一覧だけで、Folia Filesのためだけに動きます(アプリの署名を確認します)。Wonderlink SLが署名し、Appleの公証を受けており、自動でアップデートされます。フォルダの同期など、サンドボックスでブロックされるほかの機能も使えるようになります。

Folia FilesでCompanionが「インストール済み(無効)」と表示される場合:

  1. Folia Filesを終了します。
  2. 「ダウンロード」フォルダやディスクイメージ上など、Companionのほかのコピーを削除します。
  3. 「アプリケーション」フォルダにあるコピーを開き、再有効化をクリックします。

購入はエディション間で引き継がれません。SFTPやS3がアプリを使いたい一番の理由なら、Webサイト版がいちばん簡単です。

SFTPとS3の接続を安定させるコツ

  • SFTPにはパスワードよりSSH鍵を使いましょう。 ssh-keygenで作成し、公開鍵をサーバの~/.ssh/authorized_keysに追加します。
  • まず簡単なコマンドで試しましょう。 ターミナルでrclone lsd myserver:が動けば、認証情報とネットワークは問題ありません。失敗した場合は、エラーメッセージがたいてい原因(ホストの誤り、鍵の拒否、バケットへの権限不足)を示しています。
  • S3ではリージョンとエンドポイントを確認しましょう。 S3互換プロバイダはそれぞれ独自のエンドポイントアドレスを持っており、その誤りが接続失敗のいちばん多い原因です。
  • S3のキーには必要な権限だけを与えましょう。 1つのバケットに限定したキーのほうが、アカウント全体に使えるキーより安全です。

よくある質問

macFUSEなしでFinderにSFTPを追加できますか? SFTPに対応していない「サーバへ接続」からはできません。rclone nfsmountなら、macOSのNFSクライアントを通じてmacFUSEなしでサーバをディスクとしてマウントできます。Folia Filesもこの方法でrcloneの接続をマウントしています。

rcloneを使うのに管理者権限は必要ですか? rclone自体は普通のプログラムで、カーネル拡張は不要です。ただしHomebrewのインストーラは、最初のセットアップ時にパスワードを求めることがあります。

rcloneは無料ですか? はい、無料のオープンソースです。

Folia FilesはIntel搭載Macでも動きますか? はい。Appleシリコン搭載MacとIntel搭載Macの両方に対応したユニバーサルアプリで、macOS 14以降で動作します。

SFTPやS3も含めたすべての機能を、アカウントもカードも不要で7日間無料で試せます(Webサイト版をダウンロード)。