Бесплатный SFTP-клиент для Mac
Conchshell ставит папки вашего Mac и сервера рядом по SFTP, а SSH-терминал к тому же хосту — в соседней вкладке. Версия 2.16.0, macOS 12 Monterey и новее, Apple silicon или Intel.
Он сделан под ежедневную работу — выложить сборку, забрать лог, поправить конфиг. У больших файлов, синхронизации с сервера и нескольких файловых команд в этой версии есть ограничения; они перечислены ниже, а не оставлены вам на поиски.
Что он умеет на Mac
Две панели: Mac и сервер
SFTP-подключение открывает Mac слева и сервер справа. Файлы перетаскиваются через границу или уходят по стрелке; файлы и папки из Finder можно бросить прямо на панель сервера. Каждая панель фильтрует и сортирует по имени, размеру и дате, а у сервера видны права.
Папки: сначала сравнение, потом синхронизация
Папки переносятся целиком, со всем содержимым. «Синхронизировать каталоги» сравнивает локальную папку с папкой на сервере, показывает, что будет передано или создано и где конфликт, принимает исключения вроде .git и node_modules — и только потом делает работу, в одну сторону за раз: с Mac на сервер или с сервера на Mac.
Очередь, которая говорит, что случилось
Каждый файл встаёт в очередь с отметкой: ждёт, идёт, готово или ошибка. Ошибка объясняет причину, а упавший файл можно повторить отдельно.
Когда нужна ещё и оболочка
Файловая панель под терминалом
У SSH-подключения к тому же серверу есть своя файловая панель под терминалом. Двойной щелчок по файлу открывает его в приложении, выбранном в настройках, или во встроенном редакторе; каждое сохранение уходит обратно на сервер, в каком бы редакторе вы ни работали.
История и закреплённые папки
Эта панель помнит каталоги, где вы бывали на каждом сервере, держит закреплённые, а лог открывается прямо в мониторе логов.
Ключи, jump-хосты и прокси
Пароль или ключ: файлы OpenSSH, PEM и PuTTY .ppk, а парольная фраза спрашивается при подключении; ключ в формате SSH2 (RFC 4716) в 2.16.0 не читается — его нужно сначала перевести командой ssh-keygen -i. Ключи из ~/.ssh предлагаются списком, хосты из ~/.ssh/config — на первом экране, а подключение может идти через один jump-хост и прокси SOCKS или HTTP.
Ключи хостов проверяются
При первом подключении отпечаток ключа сервера показывается в окне macOS, а изменившийся ключ останавливает подключение. Серверы, уже записанные в ~/.ssh/known_hosts, переносятся один раз — если только этот файл не хеширует имена хостов.
Чего он не умеет в 2.16.0
Ограничения этой версии — чтобы большая передача не нашла их за вас.
Прогресс по файлам, а не по байтам
Передачи идут по одной. Очередь отмечает файл как идущий, а потом готовый; сколько байт ушло, скорости и оставшегося времени для текущего файла она не показывает, и отменить уже начатый файл нельзя — только те, что ещё ждут.
Загрузка через память, без докачки
Файл для загрузки на сервер целиком читается в память и только потом отправляется; скачивание пишется на диск по мере прихода. Прерванная передача начинается сначала. Для кода, конфигов и логов это неважно; многогигабайтный образ лучше отправить через scp или rsync в соседнем терминале.
То же имя — замена
Загрузка поверх файла с тем же именем заменяет его без вопроса. Посмотрите на панель сервера, прежде чем бросать на неё папку файлов.
Синхронизация — в одну сторону и полная только на сервер
«Синхронизировать каталоги» работает в одну сторону за раз; двусторонней синхронизации нет. С Mac на сервер уходят новые и изменённые файлы. С сервера на Mac обновляются только файлы, которые у вас уже есть локально: то, что есть лишь на сервере, в 2.16.0 не показывается и не скачивается — заберите это с панели сервера.
«Переименовать» и «Новая папка»
На macOS в двухпанельном виде эти две команды в 2.16.0 не открывают окно для имени. Переименовать можно в файловой панели под SSH-терминалом, а mv и mkdir в терминале сделают остальное.
Права видны, но не меняются
Окна для прав нет — это делает chmod в терминале.
Без ssh-agent
Ключи читаются из файлов или из собственного хранилища приложения. Ключ, который живёт только в ssh-agent, в агенте менеджера паролей или на аппаратном токене, не используется.
Без одноразовых кодов
Сервер, который после пароля спрашивает второй фактор, не поддерживается.
Что нужно
Mac
macOS 12 Monterey и новее, Apple silicon или Intel — отдельные нативные сборки
Загрузка
9,3 МБ для Apple silicon, 9,9 МБ для Intel
Сервер
Любой SSH-сервер с подсистемой SFTP — в OpenSSH она включена по умолчанию
Аккаунт
Не нужен — регистрировать нечего
Цена
Бесплатно. Платная возможность одна — синхронизация подключений между своими машинами, $19 разово
Первый запуск
Системные настройки → Конфиденциальность и безопасность → «Всё равно открыть»; на macOS 12 — Системные настройки → Защита и безопасность → «Основные». Один раз, при первом запуске; подробности — на
странице загрузки.
Вопросы про SFTP на Mac
Этот SFTP-клиент бесплатный?
Да. SFTP, две панели и синхронизация папок — в бесплатной сборке, без аккаунта. Платная возможность одна: синхронизация сохранённых подключений между своими машинами, $19 разово.
Можно ли править файл на сервере в своём редакторе?
Да, из файловой панели под SSH-терминалом: двойной щелчок открывает файл в приложении, выбранном в настройках, и каждое сохранение загружается обратно. В двухпанельном SFTP-виде двойной щелчок открывает только папки.
Он подхватывает мои SSH-ключи и ~/.ssh/config?
Да. Ключи из ~/.ssh показываются списком — OpenSSH, PEM и .ppk, — парольная фраза спрашивается при подключении, а переключатель «Запомнить» по умолчанию выключен. Ключ в формате SSH2 (RFC 4716) сначала нужно перевести в OpenSSH командой ssh-keygen -i. Хосты из ~/.ssh/config предлагаются на первом экране. ssh-agent не используется.
Может ли он держать локальную папку и папку на сервере одинаковыми?
В одну сторону и по запросу: «Синхронизировать каталоги» сравнивает обе, показывает различия и переносит то, что вы одобрили, — новые и изменённые файлы с Mac на сервер или, с сервера, только те файлы, что у вас уже есть локально. В обе стороны сразу он не синхронизирует и следить за папками в фоне не умеет.
Годится ли он для очень больших файлов?
В 2.16.0 — нет. Загрузка целиком проходит через память, а очередь не показывает прогресс внутри файла, так что многогигабайтные файлы лучше отправлять через scp или rsync в терминале.
А FTP и FTPS он умеет?
Да, в тех же двух панелях. У FTPS есть своя страница — со своими ограничениями.
По теме
То же приложение — со стороны той задачи, ради которой вы пришли.