Доступ к Sshwifty
- Откройте браузер и перейдите по адресу:
https://<SERVER_IP> - Предупреждение SSL в браузере ожидаемо (самоподписанный сертификат)
- Требуется аутентификация (всплывающее окно Basic Auth)
- Метод аутентификации: HTTP Basic Auth
- Учётные данные хранятся в защищённом виде в:
/root/.cloudzy-creds
Важные файлы и директории
- Директория установки:
/root/sshwifty - Docker Compose-файл:
/root/sshwifty/docker-compose.yml - Сохранённые учётные данные:
/root/.cloudzy-creds - Виртуальный хост Nginx:
/etc/nginx/sites-available/sshwifty.conf - Файл Basic Auth:
/etc/nginx/auth/sshwifty.htpasswd - Сертификаты TLS:
/etc/nginx/ssl
Замечания по безопасности
- Только NGINX принимает подключения на публичных портах.
- Доступ защищён через Basic Auth.
- TLS использует самоподписанный сертификат.
- Учётные данные хранятся с ограниченными правами доступа.
Подключение SSL с собственным доменом
1. Направьте ваш домен на IP-адрес сервера.
2. Откройте конфигурацию Nginx и замените оба вхождения server_name <IP>; на ваш домен («<your-domain>) для блоков HTTP (порт 80) и HTTPS (порт 443):
vim /etc/nginx/sites-available/sshwifty.conf
3. Установите Certbot:
apt install -y certbot python3-certbot-nginx
4. Выполните следующую команду, чтобы получить SSL-сертификат от Let's Encrypt:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
5. Замените пути SSL в конфигурации Nginx:
vim /etc/nginx/sites-available/sshwifty.conf
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
6. Перезапустите Nginx, чтобы применить изменения:
systemctl restart nginx
7. Откройте браузер и перейдите по адресу: https://yourdomain.com