Бесплатный SFTP-клиент для Mac

Conchshell ставит папки вашего Mac и сервера рядом по SFTP, а SSH-терминал к тому же хосту — в соседней вкладке. Версия 2.17.1, macOS 12 Monterey и новее, Apple silicon или Intel.

Он сделан под ежедневную работу — выложить сборку, забрать лог, поправить конфиг. Докачки прерванной передачи, двусторонней синхронизации и окна для прав в этой версии нет; это и остальные ограничения перечислены ниже, а не оставлены вам на поиски.

Что он умеет на Mac

Две панели: Mac и сервер
SFTP-подключение открывает Mac слева и сервер справа. Файлы перетаскиваются через границу или уходят по стрелке; файлы и папки из Finder можно бросить прямо на панель сервера. Каждая панель фильтрует и сортирует по имени, размеру и дате, а у сервера видны права.
Папки: сначала сравнение, потом синхронизация
Папки переносятся целиком, со всем содержимым. «Синхронизировать каталоги» сравнивает локальную папку с папкой на сервере, показывает, что будет передано или создано и где конфликт, принимает исключения вроде .git и node_modules — и только потом делает работу, в одну сторону за раз: с Mac на сервер или с сервера на Mac.
Очередь, которая говорит, что случилось
Каждый файл встаёт в очередь с отметкой: ждёт, идёт, готово, ошибка или отменено. Пока файл передаётся, очередь показывает, сколько пройдено, скорость и оставшееся время, а идущую передачу можно отменить. Ошибка объясняет причину, а упавший или отменённый файл можно повторить отдельно.
Ничего не заменяется без вопроса
Если файл или папка с тем же именем уже есть, в какую бы сторону ни шла передача, Conchshell спрашивает, заменить или пропустить, и один ответ можно распространить на следующие совпадения.

Когда нужна ещё и оболочка

Файловая панель под терминалом
У SSH-подключения к тому же серверу есть своя файловая панель под терминалом. Двойной щелчок по файлу открывает его в приложении, выбранном в настройках, или во встроенном редакторе; каждое сохранение уходит обратно на сервер, в каком бы редакторе вы ни работали.
История и закреплённые папки
Эта панель помнит каталоги, где вы бывали на каждом сервере, держит закреплённые, а лог открывается прямо в мониторе логов.
Ключи, jump-хосты и прокси
Пароль, ключ или ssh-agent. Ключи — файлы OpenSSH и PuTTY .ppk (парольная фраза к ним спрашивается при подключении) или PEM без парольной фразы, а сертификат OpenSSH, лежащий рядом с ключом как <ключ>-cert.pub, предъявляется первым без всякой настройки; ключ в формате SSH2 (RFC 4716) не читается — его нужно сначала перевести командой ssh-keygen -i. Ключи из ~/.ssh предлагаются списком, хосты из ~/.ssh/config — на первом экране, а подключение может идти через один jump-хост и прокси SOCKS или HTTP.
Ключи хостов проверяются
При первом подключении отпечаток ключа сервера показывается в окне macOS, а изменившийся ключ останавливает подключение. Серверы, уже записанные в ~/.ssh/known_hosts, переносятся один раз — если только этот файл не хеширует имена хостов.

Чего он не умеет в 2.17.1

Ограничения этой версии — чтобы большая передача не нашла их за вас.

По одной передаче на подключение
У каждого подключения передачи идут по одной, а остальные его файлы ждут своей очереди; передачи разных подключений идут параллельно.
Без докачки
Прерванная передача начинается сначала; как правило, прежний файл остаётся нетронутым, пока новая копия не готова целиком. Передачи идут потоком с диска и на диск, не через память; одно скачивание ограничено 64 ГиБ. Многогигабайтный образ по ненадёжной связи лучше отправить через rsync --partial в соседнем терминале — он умеет продолжить с места обрыва.
Синхронизация — в одну сторону
«Синхронизировать каталоги» работает в одну сторону за раз; двусторонней синхронизации нет. С Mac на сервер уходят новые и изменённые файлы. С сервера на Mac скачиваются новые и изменённые файлы, в том числе те, что есть только на сервере, создаются папки, а на Mac ничего не удаляется.
Права видны, но не меняются
Окна для прав нет — это делает chmod в терминале.
Без проброса агента
С 2.17.0 работает и сам ssh-agent: ключ из него, в том числе аппаратный, годится для входа. Conchshell берёт агент, на который указывает SSH_AUTH_SOCK, IdentityAgent из ~/.ssh/config не читает, а на сервер агент не пробрасывает никогда.
Без одноразовых кодов
Сервер, который после пароля спрашивает второй фактор, не поддерживается.

Что нужно

Mac
macOS 12 Monterey и новее, Apple silicon или Intel — отдельные нативные сборки
Загрузка
11,0 МБ для Apple silicon, 12,2 МБ для Intel
Сервер
SSH-сервер с современными алгоритмами и подсистемой SFTP — в OpenSSH она включена по умолчанию; устройства, которые предлагают только шифры CBC или 3DES, обмен ключами на SHA-1 или только ключ хоста DSA, не подключатся
Аккаунт
Не нужен — регистрировать нечего
Цена
Бесплатно. Платная возможность одна — синхронизация подключений между своими машинами, $19 разово
Первый запуск
Apple silicon: открывается сразу. Intel: Системные настройки → Конфиденциальность и безопасность → «Всё равно открыть»; на macOS 12 — Системные настройки → Защита и безопасность → «Основные». Один раз, при первом запуске; подробности — на странице загрузки.

Вопросы про SFTP на Mac

Этот SFTP-клиент бесплатный?

Да. SFTP, две панели и синхронизация папок — в бесплатной сборке, без аккаунта. Платная возможность одна: синхронизация сохранённых подключений между своими машинами, $19 разово.

Можно ли править файл на сервере в своём редакторе?

Да, и в двухпанельном SFTP-виде, и в файловой панели под SSH-терминалом: двойной щелчок открывает файл в приложении, выбранном в настройках, или во встроенном редакторе, и каждое сохранение загружается обратно. Если вы ещё не выбрали, первый двойной щелчок спросит, что вам удобнее.

Он подхватывает мои SSH-ключи и ~/.ssh/config?

Да. Ключи из ~/.ssh показываются списком — OpenSSH, PEM и .ppk, — парольная фраза спрашивается при подключении, а переключатель «Запомнить» по умолчанию выключен. Ключ в формате SSH2 (RFC 4716) сначала нужно перевести в OpenSSH командой ssh-keygen -i. Хосты из ~/.ssh/config предлагаются на первом экране. Войти можно и через ssh-agent.

Может ли он держать локальную папку и папку на сервере одинаковыми?

В одну сторону и по запросу: «Синхронизировать каталоги» сравнивает обе, показывает различия и переносит то, что вы одобрили, — новые и изменённые файлы с Mac на сервер или, с сервера, новые и изменённые файлы, включая те, которых у вас ещё нет. В обе стороны сразу он не синхронизирует и следить за папками в фоне не умеет.

Годится ли он для очень больших файлов?

С 2.17.0 — да: передачи идут потоком, а не через память, очередь показывает прогресс, скорость и оставшееся время, а идущую передачу можно отменить. Одно скачивание ограничено 64 ГиБ, а прерванная передача начинается заново, так что для очень большого файла по ненадёжной связи rsync --partial в терминале всё ещё надёжнее.

А FTP и FTPS он умеет?

Да, в тех же двух панелях. У FTPS есть своя страница — со своими ограничениями.

По теме

То же приложение — со стороны той задачи, ради которой вы пришли.

Направьте его на сервер, с которым работаете каждый день.

Две панели и терминал открываются из одного списка сохранённых подключений. Приложение бесплатно; синхронизация подключений между своими машинами — $19 разово.