Мы выполняем развертывание в китайском центре обработки данных, нам потребовалось некоторое время, чтобы одобрить нашу учетную запись в Aliyun (что-то вроде Amazon AWS).
Мы защищаем все входящие и исходящие данные, но что гарантирует, что сама ОС не была взломана? Как мне проверить, что в нашей Ubuntu есть те же ядра и библиотеки, которые были выпущены официальной Ubuntu. Есть ли какой-то sfc /scannow
команда для linux?
Обратите внимание на то, что китайцы используют свои собственные зеркала Ubuntu, и все HTTP-сообщения проходят через правительственные агентства (данные изменяются, заменяются и подвергаются цензуре). Правительство также проводит глубокую проверку пакетов, чтобы заблокировать VPN-соединение. Наш сервер находится в Пекине.
Не существует полностью безопасного способа гарантировать чистоту сервера. Но есть несколько подходов, которые помогут снизить риск.
Вы можете переустановить сервер. Если вы знаете, что делаете, то удаленная переустановка сервера возможна. Компромисс, который выживает после переустановки, добиться гораздо труднее, чем просто установить в основном невидимый руткит. Так что, если вы выполните такую переустановку, ваши шансы увеличатся.
Очевидно, что переустановку необходимо выполнить с помощью чистого установочного носителя. Я бы использовал scp для копирования изображения на сервер. Если вы не можете подключиться к серверу с помощью ssh, вам придется нелегко.
Сравните ключ хоста ssh на сервере с открытым ключом, который вы видите для сервера. Таким образом можно выявить некоторые классы систематических атак mitm.
Замените ключ хоста ssh на тот, который вы сгенерировали (на случай, если у кого-то еще есть копия того, который был на сервере, когда вы его получили).
Используйте логины на основе ключей. Если секретный ключ просочился, или если вы получили неправильный открытый ключ на известных хостах, атаки mitm будут возможны. Но некоторые из атак mitm, которые стали бы возможными благодаря этому, работают только против входа на основе пароля, а не против входа на основе ключа.
Если на сервере есть какое-либо надежное вычислительное оборудование, вы можете использовать его для проверки целостности установленной ОС. Но это, конечно, не может дать вам полную защиту от сценариев, в которых взломано само оборудование.
На что следует обратить внимание, включают возможность того, что кто-то еще имеет консольный доступ к серверу, а также возможность того, что некоторые из путей связи внутри сервера были прослушаны (например, устройство, которое пассивно отслеживает связь SATA и может активно вводить данные во время загрузки было бы возможно для хорошо финансируемого противника, и было бы практически невозможно проверить удаленно.)
Также обратите внимание, что если вы работаете на виртуальном сервере, то хост-сервер имеет полный доступ к вашему хранилищу и памяти. Вы ничего не можете сделать для защиты своего виртуального сервера, если физический сервер, на котором он размещен, был взломан.
Храните наиболее важные части ваших данных вдали от серверов, которым вы не доверяете. Это может означать, что вам нужно сделать это зависимым от серверов, которые у вас есть в других местах для определенных задач. Например, для проверки пароля вы, вероятно, можете терпеть замедление, которое может быть вызвано тем, что сервер не видит пароли и вместо этого откладывает проверку на сервер в надежном месте.