В качестве примера рассмотрен конфиг от freebsd. От linux может незначиткльно отличаться. Конфигурационный файл находиться в директории /etc/ssh: # ee /etc/ssh/sshd_config
Сам конфиг:
# Номер порта, который слушает SSH демон. # Для большей безопасности, стандартный 22 порт можно сменить на любой другой. Port 22 # Версия протокола Protocol 2 # Тип адресного пространства, который используется SSH сервером. # inet - ipv4, inet6-ipv6, any - любой. # Оставлю четвертую версию IP протокола. Что-то мне подсказывает, # что не скоро дома я буду использовать шестую версию IP. AddressFamily inet # Сетевой адрес, который будет слушать SSH демон. # Указываю свой внутренний IP адрес, таким образом, SSH демон # будет принимать соединения только из моей локальной сети. ListenAddress 192.168.100.1 # Ключи я пока использовать не буду, по той причине, # что для доступа из внутренней сети они мне не нужны, # а снаружи доступа пока у меня нет. # Но учту на будущее, что они у меня уже есть. # HostKeys for protocol version 2 #HostKey /etc/ssh/ssh_host_rsa_key #HostKey /etc/ssh/ssh_host_dsa_key # Задаю куда писать лог авторизаций и его уровень информативности. # AUTH значит, что лог пишется в /var/log/auth.log. # Остальные варианты можно посмотреть в man sshd_config # Варианты детализации лога: QUIET, FATAL, ERROR, INFO, VERBOSE. # DEBUG - не рекомендован к использованию по причине того, # что компрометирует безопасность. # Похоже, он для отладки =) SyslogFacility AUTH LogLevel INFO # Закрывает сеанс связи через минуту как кто-то подключился, # но не прошел авторизацию.. # Если у меня будет суперсверхсложныйиневожможный пароль, # то, возможно этого времени не хватит LoginGraceTime 1m # Под rootом подключаться запрещаем. Без вариантов. PermitRootLogin no # Нужно проверить права доступа к файлам (chmod) и их принадлежность (chown) # и домашнюю директорию пользователя, прежде чем разрешить вход. # Служит для того, чтобы пользователь не дал на домашний каталог доступ на запись всем. StrictModes yes # Число попыток залогиниться # Тут все просто, три раза не получилось, "пшел вон!" =) MaxAuthTries 3 # Максимальное количество одновременно открытых сессий. # Мне четырех с лихвой хватит. MaxSessions 4 # RSA метод аутификации пока не использую. # Все по той же причине, что в моей домашней сети она не нужна #RSAAuthentication yes #PubkeyAuthentication yes #AuthorizedKeysFile .ssh/authorized_keys # Оставлю пока только аутификацию по паролю, # причем, как я понимаю, в данном случае пароль передается не открытым текстом. # Пустой пароль запрещен. PasswordAuthentication no PermitEmptyPasswords no ChallengeResponseAuthentication yes
Остальные опции приводить не буду, можно понять что к чему, прочитав мануал. А данной настройки для текущих работ мне вполне хватит. Перед тем, как отходить далеко от сервера, обязательно заведу нового пользователя системы (по ssh под root зайти будет невозможно):
# adduser
Username: user
Login group [user]: wheel
Shell (sh csh tcsh nologin) [sh]:
Такие вот ключевые моменты.