Содержание

SSH сервер. Установка и настройка


Установка

Debian / Ubuntu

apt-get install openssh-server

RedHat / CentOS / Fedora

yum install openssh-server

Настройка

Конфигурационный файл openssh-сервера хранится по следующему пути:

vim /etc/ssh/sshd_config

Подробнее

man sshd_config

Настройка порта

OpenSSH позволяет указать произвольный порт для прослушивания при помощи переменной Port .

# например 2222
Port 2222

Настройка аутентификации

# yes - разрешить вход под root
# no - запретить вход под root
PermitRootLogin no
# yes - разрешить авторизацию по паролю
# no - запретить авторизацию по паролю
PasswordAuthentication no
# yes - разрешить авторизацию по пустому паролю
# no  - запретить авторизацию по пустому паролю
PermitEmptyPasswords no

Наиболее предпочтительным способом авторизации является аутентификация на основе SSH2 RSA-ключей. Включить аутентификацию по публичному ключу можно так:

# yes - включить возможность авторизации по SSH-ключу
# no - отключить возможность авторизации по SSH-ключу
PubkeyAuthentication yes

Чтобы явно определить место хранения публичных ключей, необходимо переопределить значение переменной AuthorizedKeysFile

AuthorizedKeysFile %h/.ssh/authorized_keys

Протоколы SSH1 и SSH2

sshd может работать с протоколами SSH1 и SSH2. При этом использование небезопасного SSH1 крайне не рекомендуется. Заставить sshd работать только с протоколом SSH2 можно так:

# 1 - использовать SSH1
# 2 - использовать SSH2
Protocol 2

Приветствие

Чтобы позволить вашему OpenSSH серверу показывать содержимое файла /etc/issue.net в качестве шапки пред авторизацией, просто добавьте или измените строку:

Banner /etc/issue.net

Лимит на количество подключений

Средствами Iptables можно ограничить количество одновременных подключений по SSH. Пример с ограничением в 3 подключения:

iptables -N rate-limit
iptables -A rate-limit -p tcp -m conntrack --ctstate NEW -m limit --limit 3/min --limit-burst 3 -j RETURN
iptables -A rate-limit -j DROP
iptables -I INPUT 1 -p tcp --dport 22 -j rate-limit

Источники