Бесплатный SSH web клиент за 5 минут

Бесплатный SSH web клиент за 5 минут

Без смс и регистрации...

Иногда, c вашего рабочего места могут быть закрыты все порты кроме основных (80, 443), что делает затруднительным использование классических клиентов типа putty для ssh протокола (22 порт по умолчанию) с подключением куда то наружу.
Тогда на помощь может придти любой ssh веб-клиент. Для себя я развернул sshwifty, выбрав вариант деплоя используя docker-образ.

ssh

Мы будем передавать ssh-ключи в этот клиент, так что используйте только свой или какой-нибудь проверенный сервис.

Так как на моем VPS уже поднято несколько серверов, я использую docker-compose и nginx (кстати он тоже в докере) как edge сервер. У меня уже стоит обязательное использование SSL, так что дополнительной генерации сертификатов для защиты подключения не потребовалось.

Требования:
Необходимо иметь свой VPS(виртуальную машину, дроплет и т.д.) на каком нибудь облаке.

Итого, для разворачивания своего web ssh клиента необходимо выполнить следующие шаги:

  1. Поставить docker
  2. Добавить dns a-запись на субдомен для удобства подключения и запоминания.
  3. Отредактировать docker-compose добавив в него новый сервер.
    Я не стал делать expose порта 8182 так как сделаю это на уровне nginx
  sshwifty:
    container_name: sshwifty
    image: niruix/sshwifty:latest
    restart: always
  1. Добавить новый VirtualHost в nginx.conf.
server {
        listen 443 ssl;
        server_name <your_server>;

        ssl_certificate     <path/to/fullchain.pem>;
        ssl_certificate_key <path/to/privkey.pem>;

        location / {
                # редирект на контейнер по имени и с дефолтным портом
                proxy_pass http://sshwifty:8182;
                proxy_set_header Host $http_host;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection upgrade;
                proxy_set_header Accept-Encoding gzip;
        }
}
  1. Запустить ваш docker-compose
    docker-compose up -d