71 lines
3.1 KiB
Markdown
71 lines
3.1 KiB
Markdown
|
|
# VSCode Server Setup
|
|||
|
|
|
|||
|
|
VSCode (code-server) успешно установлен на сервере и доступен по адресу:
|
|||
|
|
|
|||
|
|
**URL:** https://vscode.mnemo-cards.online
|
|||
|
|
|
|||
|
|
## Учетные данные для входа
|
|||
|
|
|
|||
|
|
- **Username:** vscode
|
|||
|
|
- **Password:** AGktOidxrah1KVC0
|
|||
|
|
|
|||
|
|
## Доступ
|
|||
|
|
|
|||
|
|
- ✅ Доступен только по домену vscode.mnemo-cards.online
|
|||
|
|
- ❌ Заблокирован доступ по IP адресу сервера
|
|||
|
|
- 🔒 Защищен SSL сертификатом от Let's Encrypt
|
|||
|
|
|
|||
|
|
## Служба
|
|||
|
|
|
|||
|
|
Code-server запущен как systemd сервис и автоматически запускается при перезагрузке сервера.
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Проверить статус
|
|||
|
|
sudo systemctl status code-server
|
|||
|
|
|
|||
|
|
# Перезапустить
|
|||
|
|
sudo systemctl restart code-server
|
|||
|
|
|
|||
|
|
# Остановить
|
|||
|
|
sudo systemctl stop code-server
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Конфигурация
|
|||
|
|
|
|||
|
|
- Порт: 8080 (локально, проксируется через nginx)
|
|||
|
|
- Пользователь: vscode
|
|||
|
|
- Конфигурационный файл: `/home/vscode/.config/code-server/config.yaml`
|
|||
|
|
|
|||
|
|
## Рабочая директория
|
|||
|
|
|
|||
|
|
- **Домашняя директория:** `/home/vscode`
|
|||
|
|
- **Репозиторий:** `/home/vscode/cards` (символическая ссылка: `/root/cards`)
|
|||
|
|
- **Файлы конфигурации:** `/home/vscode/.config/code-server/`
|
|||
|
|
|
|||
|
|
## Безопасность
|
|||
|
|
|
|||
|
|
- 🔐 **Аутентификация:** Сильный пароль (16 символов)
|
|||
|
|
- 🔒 **SSL/TLS:** Полностью шифрованное HTTPS соединение с сертификатом Let's Encrypt
|
|||
|
|
- 🚫 **Доступ по IP:** Заблокирован - только по домену vscode.mnemo-cards.online
|
|||
|
|
- 🛡️ **Rate Limiting:**
|
|||
|
|
- Логин: максимум 5 попыток в минуту
|
|||
|
|
- Общие запросы: максимум 30 запросов в минуту с burst до 10
|
|||
|
|
- 🔨 **Fail2Ban:** Автоматическая блокировка IP при подозрительной активности
|
|||
|
|
- 3 неудачные попытки логина → бан на 1 час
|
|||
|
|
- DDoS защита: 100 запросов в минуту → бан на 10 минут
|
|||
|
|
- 👤 **Пользователь:** Отдельный пользователь vscode без sudo прав
|
|||
|
|
- 📁 **Файловая система:** Полный доступ к своему репозиторию
|
|||
|
|
- 🔄 **Автообновление:** SSL сертификаты обновляются автоматически
|
|||
|
|
|
|||
|
|
## Обновление сертификатов
|
|||
|
|
|
|||
|
|
SSL сертификаты автоматически обновляются через cron job certbot.
|
|||
|
|
|
|||
|
|
## Устранение неполадок
|
|||
|
|
|
|||
|
|
Если возникли проблемы с доступом:
|
|||
|
|
|
|||
|
|
1. Проверьте статус code-server: `sudo systemctl status code-server`
|
|||
|
|
2. Проверьте nginx конфигурацию: `sudo nginx -t`
|
|||
|
|
3. Проверьте логи: `sudo journalctl -u code-server -f`
|