Шпаргалка адміна

SSH · Git Deploy · DietPi · Docker · Nginx

🔐 SSH — підключення та ключі

Команда Що робить
ssh user@192.168.1.109 Підключитись до сервера за IP
ssh -i ~/.ssh/iot_server_key dietpi@192.168.1.109 Підключитись з конкретним приватним ключем
ssh-keygen -t ed25519 -C “email” Згенерувати новий SSH ключ (ed25519)
cat ~/.ssh/id_ed25519.pub Показати публічний ключ (для копіювання на сервер)
ssh-copy-id user@192.168.1.109 Скопіювати публічний ключ на сервер автоматично
nano ~/.ssh/config Відкрити конфіг SSH (alias для хостів)
ssh -p 2222 user@host Підключитись на нестандартний порт
exit Закрити SSH сесію

💡 Приклад ~/.ssh/config: Host dietpi / HostName 192.168.1.109 / User dietpi / IdentityFile ~/.ssh/iot_server_key

🐙 Git — deploy та базові команди

Команда Що робить
git clone https://github.com/user/repo.git Клонувати репо через HTTPS
GIT_SSH_COMMAND=”ssh -i ~/.ssh/deploy_key” git clone git@github.com:user/repo.git Клонувати з конкретним SSH ключем
git pull Отримати останні зміни з remote
git pull origin main Отримати зміни з гілки main
git status Показати стан робочої директорії
git log –oneline -10 Останні 10 комітів в одну строку
git stash Тимчасово зберегти незакомічені зміни
git stash pop Повернути збережені зміни
git checkout -b feature/new Створити і переключитись на нову гілку

💡 Deploy key — read-only ключ прив’язаний до конкретного репо. Додається в GitHub → Settings → Deploy keys

🥧 DietPi — системні команди

Команда Що робить
sudo poweroff Вимкнути сервер
sudo reboot Перезавантажити сервер
sudo apt update && sudo apt upgrade -y Оновити всі пакети
sudo apt install -y git curl wget Встановити пакети
dietpi-config Відкрити конфігуратор DietPi (меню)
dietpi-software Встановити/видалити програми через меню
df -h Дискова статистика (скільки місця)
free -h Статистика RAM
htop Моніторинг процесів в реальному часі
uptime Час роботи сервера без перезавантаження
journalctl -f Дивитись системні логи в реальному часі
sudo systemctl status назва Статус сервісу
sudo systemctl restart назва Перезапустити сервіс
sudo systemctl enable назва Додати сервіс в автозапуск

🐳 Docker — контейнери та compose

 

Команда Що робить
docker ps Список запущених контейнерів
docker ps -a Всі контейнери (включно зупинені)
docker images Список образів
docker logs -f назва Логи контейнера в реальному часі
docker exec -it назва bash Зайти всередину контейнера
docker stop назва Зупинити контейнер
docker restart назва Перезапустити контейнер
docker rm назва Видалити контейнер
docker rmi образ Видалити образ
docker-compose up -d Запустити всі сервіси у фоні
docker-compose down Зупинити і видалити контейнери
docker-compose down -v Зупинити + видалити volumes (дані!)
docker-compose logs -f Логи всіх сервісів
docker-compose pull Оновити образи
docker stats Моніторинг CPU/RAM контейнерів
docker system prune -a Очистити всі невикористані образи/контейнери

💡 docker-compose down -v видаляє volumes — всі дані БД будуть втрачені! Використовуй обережно.

🌐 Nginx — веб-сервер та reverse proxy

Команда Що робить
sudo systemctl status nginx Статус Nginx
sudo systemctl restart nginx Перезапустити Nginx
sudo systemctl reload nginx Перезавантажити конфіг без зупинки
sudo nginx -t Перевірити конфіг на помилки (завжди перед reload!)
sudo nano /etc/nginx/nginx.conf Головний конфіг Nginx
sudo nano /etc/nginx/sites-available/mysite Конфіг конкретного сайту
sudo ln -s /etc/nginx/sites-available/mysite /etc/nginx/sites-enabled/ Увімкнути сайт
sudo tail -f /var/log/nginx/error.log Дивитись помилки Nginx
sudo tail -f /var/log/nginx/access.log Дивитись access логи
sudo certbot –nginx -d example.com Отримати SSL сертифікат Let’s Encrypt
sudo certbot renew –dry-run Тест оновлення SSL сертифіката

💡 Завжди запускай sudo nginx -t перед sudo systemctl reload nginx — це рятує від простою сервісу через помилку в конфізі.

Malware Analysis Laboratory · github.com/PacktPublishing/Malware-Development-for-Ethical-Hackers-Second-Edition

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *