🔑 Подключение и передача файлов
# Подключение к серверу
ssh user@host
# Копирование файла
scp file.txt user@host:/path/
# SFTP-сессия
sftp user@host
# Синхронизация директорий
rsync -avz -e ssh /local/path user@host:/remote/path
⚙️ Настройка
/etc/ssh/sshd_config
Port 2222 # Меняем порт
PermitRootLogin no # Запрет root-входа
PasswordAuthentication no # Только по ключам
MaxAuthTries 3 # Лимит попыток входа
AllowUsers admin user1 # Белый список пользователей
Перезапуск:
systemctl restart sshd
🔒 Ключи SSH
# Генерация ключа
ssh-keygen -t ed25519 -C "admin@myserver"
# Установка ключа на сервер
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@host
🛡 Fail2Ban
Установка и запуск:
apt install fail2ban # Debian/Ubuntu
yum install fail2ban # CentOS/RHEL
systemctl enable --now fail2ban
Конфиг
/etc/fail2ban/jail.local:
[sshd]
enabled = true
port = 2222
filter = sshd
maxretry = 3
bantime = 3600
🔥 Firewall
UFW
ufw allow 2222/tcp
ufw enable
ufw status
iptables
iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
iptables -A INPUT -j DROP
firewalld
firewall-cmd --permanent --add-port=2222/tcp
firewall-cmd --reload
💡 Советы по безопасности:
1. 🚫 Не пускаем root по SSH
2. 🔑 Только ключи, никаких паролей
3. 📌 Ставим нестандартный порт
4. 🛡 Лимитируем доступ по IP
5. 🚨 Включаем Fail2Ban
👉 @linuxchmod