Данный список будет актуализироваться — добавляйте статью в закладки!
- Тестовые стенды должны иметь ограниченный доступ. По умолчанию все тестовые стенды должны закрываться паролями или любыми другими способами ограничения доступа (по IP, по ключам, по условиям).
- Тестовый стенд может быть публично доступен только если это обозначено в документации к проекту и каждый участник проекта по этому тестовому стенду понимает необходимость публичного доступа к нему.
- Данные с тестовых стендов не должны быть публично доступны и не должны попадать в индексы поисковых систем.
- Работа по ssh должна происходить через публичные ключи (public key)
Если участнику команды необходимо получить доступ к серверу по ssh протоколу, то необходимо делать это через выдачу публичного ключа. - Необходимо всегда минимизировать передачи паролей через любые средства коммуникации. Преимущество отдавать публичным ключам, токенам, ключам доступа, доступам по IP/VPN и т.д. Всегда стараться минимизировать риск утечки паролей.
- Доступы не должны попадать в git-репозитории и в кодовую базу проекта.
- На серверах заказчика нельзя использовать запросы от root пользователей к нашим внутренним серверам.
Например такое запрещено, или вход под ssh с сервера заказчика на наш внутренний серверscp root@our_server.njsoft.dev:/some_file /home/customer/some_file
- По-умолчанию считать сервера и инфраструктуру заказчиков небезопасными и использовать максимально безопасные методы передачи, получения и исправления информации.
- Доступы, которые не относятся к тестовым стендам не должны публиковаться в документации по проекту.
- Всё прикладное и вспомогательное ПО должно ограничивать доступ к данным по уникальным логинам и паролям. (например: когда используем SQL сервер, то всегда нужно задавать уникальный стойкий к подбору пароль от любого пользователя БД)
- Запрещается публиковать phpmyadmin и другого ПО для работы с данными в публичный доступ без защиты паролем, а также с легко подбираемыми ссылками, а также необходимо исключить попадание ссылок в поисковой индекс. Например если нужно опубликовать phpmyadmin, то надо закрыть его HTTP BASIC авторизацией, а также сделать доступ только по уникальной ссылке (вместо /phpmyadmin/index.php сделать /48vngh8vuh4/sfa/index.php, т.е ссылка которую трудно подобрать).
- Запрещается запускать ПО на серверах заказчика из под root пользователя.Если такое происходит необходимо об этом сообщать и извещать заказчика о проблемах безопасности и необходимости внесения правок в инфраструктуру.