How to Setup and Use SFTP in Sublime Text 4 Настройка и использование SFTP в Sublime Text 4

This guide covers how to install the SFTP package in Sublime Text 4, configure automated uploads on save, and sync local directories with a remote server over SSH using PuTTY key authentication on Windows. В этом руководстве рассмотрено, как установить пакет SFTP в Sublime Text 4, настроить автоматическую загрузку при сохранении и синхронизировать локальные папки с удаленным сервером по SSH с использованием ключей PuTTY в Windows.

1. Installation via Package Control 1. Установка через Package Control

  1. Open Sublime Text 4 and press Ctrl + Shift + P (Windows/Linux) or Cmd + Shift + P (Mac) to open the Command Palette. Откройте Sublime Text 4 и нажмите Ctrl + Shift + P (Windows/Linux) или Cmd + Shift + P (Mac), чтобы открыть палитру команд.
  2. Type Package Control: Install Package and hit Enter. Введите Package Control: Install Package и нажмите Enter.
  3. Search for SFTP (by wbond) and press Enter to install. Найдите SFTP (автор wbond) и нажмите Enter для установки.

2. Project Configuration (sftp-config.json) 2. Конфигурация проекта (sftp-config.json)

Open your project folder in Sublime Text (File > Open Folder...), right-click the root folder in the sidebar, and choose SFTP/FTP > Map to Remote.... Replace the file contents with the following: Откройте папку проекта в Sublime Text (File > Open Folder...), нажмите правой кнопкой мыши по корневой папке в боковой панели и выберите SFTP/FTP > Map to Remote.... Замените содержимое файла следующим кодом:

{
    "type": "sftp",

    "save_before_upload": true,
    "upload_on_save": true,
    "sync_down_on_open": false,
    "sync_skip_deletes": false,
    "sync_same_age": true,
    "confirm_downloads": false,
    "confirm_sync": true,
    "confirm_overwrite_newer": false,
    "allow_config_upload": true,
    
    "host": "YOUR_SERVER_IP",
    "user": "root",
    "ssh_key_file": "C:/Users/YOUR_WINDOWS_USERNAME/.ssh/id_rsa.ppk",
    "port": "22",
    
    "remote_path": "/root/my_server/",
    "ignore_regexes": [
        "\\.sublime-(project|workspace)", "sftp-config(-alt\\d?)?\\.json",
        "sftp-settings\\.json", "/venv/", "\\.svn/", "\\.hg/", "\\.git/",
        "\\.bzr", "_darcs", "CVS", "\\.DS_Store", "Thumbs\\.db", "desktop\\.ini",
        "/dist/", "dist/"
    ],

    "connect_timeout": 30
}

3. Configuration Parameters Explained 3. Описание параметров конфигурации

Setting Value Description Описание
upload_on_save true Automatically uploads the current file to the remote server every time you save. Автоматически загружает текущий файл на удаленный сервер при каждом сохранении.
ssh_key_file Path Path to your SSH key on Windows in .ppk format for key authentication. Путь к вашему SSH-ключу в Windows в формате .ppk для аутентификации по ключу.
allow_config_upload true Prevents upload popup warnings when saving or syncing sftp-config.json itself. Предотвращает появление всплывающих предупреждений при сохранении или синхронизации sftp-config.json.
confirm_sync true Prompts a confirmation dialog prior to running full folder synchronization. Запрашивает подтверждение перед запуском полной синхронизации папок.
ignore_regexes Array Excludes specified files and directories (like .git, /venv/, and .DS_Store) from remote transfer. Исключает указанные файлы и каталоги (например, .git, /venv/ и .DS_Store) из передачи.

4. SSH Key Authentication Setup (Windows) 4. Настройка аутентификации по SSH-ключу (Windows)

Set up PuTTY SSH key authentication from Windows using PuTTYgen: Настройте аутентификацию по SSH-ключу PuTTY из Windows с помощью PuTTYgen:

  1. Open PowerShell on Windows and generate an RSA SSH key pair: Откройте PowerShell в Windows и сгенерируйте пару SSH-ключей RSA:
    ssh-keygen -t rsa -b 4096 -f "$env:USERPROFILE\.ssh\id_rsa"
    (Press Enter for all prompts to accept default settings and leave the passphrase empty). (Нажимайте Enter на все запросы, чтобы принять настройки по умолчанию и оставить парольную фразу пустой).
  2. Copy your public key to the Linux server by running: Скопируйте ваш публичный ключ на сервер Linux, выполнив команду:
    Get-Content $env:USERPROFILE\.ssh\id_rsa.pub | ssh root@YOUR_SERVER_IP "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
    Note: $env:USERPROFILE is a PowerShell variable that automatically points to your Windows user folder (e.g., C:\Users\YourName). Примечание: $env:USERPROFILE — это переменная PowerShell, которая автоматически указывает на вашу папку пользователя Windows (например, C:\Users\ВашеИмя).
  3. Convert Private Key to .ppk Format: Sublime SFTP on Windows uses PuTTY's engine under the hood and requires keys in .ppk format: Конвертация приватного ключа в формат .ppk: Пакет SFTP в Sublime Text на Windows использует движок PuTTY и требует ключи в формате .ppk:
    • Download and open PuTTYgen (from putty.org). Скачайте и откройте PuTTYgen (с сайта putty.org).
    • Click Conversions > Import key in the top menu bar. Нажмите Conversions > Import key в верхнем меню.
    • Select your private key file: C:\Users\YOUR_WINDOWS_USERNAME\.ssh\id_rsa. Выберите ваш файл приватного ключа: C:\Users\YOUR_WINDOWS_USERNAME\.ssh\id_rsa.
    • Click Save private key (click Yes if asked to save without a passphrase). Нажмите Save private key (нажмите Yes, если появится запрос на сохранение без парольной фразы).
    • Save the file as C:\Users\YOUR_WINDOWS_USERNAME\.ssh\id_rsa.ppk. Сохраните файл как C:\Users\YOUR_WINDOWS_USERNAME\.ssh\id_rsa.ppk.
  4. Update sftp-config.json in Sublime Text 4 to point to your new .ppk key file: Обновите sftp-config.json в Sublime Text 4, указав путь к новому файлу ключа .ppk:
    "ssh_key_file": "C:/Users/YOUR_WINDOWS_USERNAME/.ssh/id_rsa.ppk"
    Note: sftp-config.json is a JSON configuration file. In JSON, paths must use forward slashes (/) instead of Windows backslashes (\). Примечание: sftp-config.json — это конфигурационный файл формата JSON. В формате JSON в путях необходимо использовать прямые слеши (/) вместо обратных (\).

Support My Work Поддержать проект

If these tutorials helped you, consider buying me a coffee! Если эти туториалы вам помогли, вы можете поддержать автора.

Sberbank (Russia only) Сбербанк (только для РФ)

Sberbank SBP QR Code

Direct transfer via phone number (Russia only) Перевод по номеру телефона (только для РФ)

+7 (917) 212-29-59

USDT TRC20

USDT TRC20 QR Code

Support via Cryptocurrency Поддержка криптовалютой

TMtY1YifNf6FKvgeFmqKGQR4NStKr3csGp