Назад | Перейти на главную страницу

Защита ssh на сервере с помощью git

Чтобы предотвратить атаки методом грубой силы ssh на серверы нашего отдела, я могу использовать брандмауэр для них из большого Интернета и разрешить доступ только из подсети нашего кампуса. Я все еще могу получить к ним доступ извне через VPN или через хост-шлюз с централизованным управлением.

Но у нас запущен сервер gitlab, а git использует порт ssh. Наши пользователи gitlab находятся за пределами кампуса, а некоторые не являются сотрудниками университета и не имеют доступа к VPN или шлюзу. Если я настрою брандмауэр, как указано выше, я бы заблокировал их.

gitlab использует ssh через одно имя пользователя: git, и все открытые ключи пользователей gitlab находятся в папке git пользователь .ssh/authorized_keys с command= для запуска службы для конкретного запроса git. Пользователи Gitlab не получают доступа к оболочке. Только мы, админы, можем получить оболочки.

Лучший подход к безопасности на сервере gitlab:

Есть ли другой способ заблокировать доступ из диапазона IP только для раздела ssh имена пользователей? т.е. разрешить ssh для пользователя git из любого места и разрешить ssh доступ для любого другого имени пользователя только из нашей подсети кампуса? Я полагаю, что брандмауэры не могут сделать это без проверки пакетов, так что, возможно, это что-то в sshd config?

Сделайте его выходящим в Интернет

Для удобства пользователя (и вашего) можно запустить GitLab с выходом в Интернет. gitlab.com делает это в масштабе.

Компоненты для защиты - это sshd и веб-приложение Ruby on Rails.

Отключить аутентификацию пароля ssh с помощью обычного openssh PasswordAuthentication директива. Пользователь GitLab git вынужден использовать gitlab-shell с помощью authorized_keys, которым он управляет. Вы можете ограничить разрешенные форматы и длину ключей, если хотите.

Поместите любые запреты или тюрьмы перед sshd, которые хотите. fail2ban, sshguard, denyhosts.

Интеграция с Rack :: Attack позволяет регулировать и блокировать веб-приложение.

И включить многофакторную аутентификацию, всегда хорошая идея для приложений.

Благодаря надежным учетным данным и спискам блокировки пребывание в интрасети не дает вам особой безопасности. Вы можете вернуться к этому, если ваши журналы показывают необоснованные угрозы из Интернета.

Конфигурация sshd имеет этот атрибут

AllowUsers username

Можешь попробовать.