на вновь созданных экземплярах gce, которые я нахожу действительно беспорядочная папка / home /
, содержащая по одному домашнему каталогу для каждого пользователя GCP с достаточными разрешениями (пока не слишком безумным), но также для любого пользователя, которому когда-либо удавалось войти в систему по ssh через gcloud на любой gce тот же проект (даже если тот самый пользователь на самом деле никогда не пробовал использовать ssh-ing для этого экземпляра gce)
gcloud compute ssh username@gce-instance --project project-name
Последнее кажется мне необъяснимым, но в любом случае я решил удалить всех этих пользователей Linux на недавно созданном Ubuntu 18.04 gce, с помощью команды deluser --remove-all-files
, как показано здесь:
CURRENT_USER=username
for USER in `ls /home`
do
if [ $CURRENT_USER -neq $USER ]
then
deluser --remove-all-files $USER
fi
done
Все пользователи, кроме curr Ent, таким образом, удаляются, а их домашние папки не появляются в ls / home /
, но это только временно, потому что они снова появляются после следующей перезагрузки gce, все они.
Я взял взглянув на journalctl
, я заметил, что это связано с демоном google-accounts
, который создает всех этих пользователей при запуске. Я обнаружил код, который делает это, в /usr/lib/python3/dist-packages/google_compute_engine/accounts/accounts_daemon.py
, я даже попытался создать экземпляр google_compute_engine.accmonAccounts.accmonAccounts_dae ()
из интерфейса командной строки python и запустите его метод HandleAccounts (res)
, и journalctl
выглядели очень многообещающими:
Feb 27 15:32:57 gce-name google-accounts[1922]: WARNING Exception locking /var/lock/google_accounts.lock. File already locked.
Feb 27 15:33:18 gce-name google-accounts[1935]: WARNING Exception locking /var/lock/google_accounts.lock. File already locked.
Feb 27 15:33:35 gce-name google-accounts[1935]: WARNING Instance attributes were not found.
Feb 27 15:33:35 gce-name google-accounts[1935]: WARNING Project attributes were not found.
Feb 27 15:33:35 gce-name google-accounts[1935]: WARNING Instance attributes were not found.
Feb 27 15:33:35 gce-name google-accounts[1935]: WARNING Project attributes were not found.
Feb 27 15:33:36 gce-name google-accounts[1935]: INFO Removing user username_1.
Feb 27 15:33:36 gce-name google-accounts[1935]: INFO Removing user username_2.
### etc ###
Feb 27 15:33:36 gce-name google-accounts[1935]: INFO Removing user username_last.
К сожалению, после последнего очень уверенного sudo перезагрузите сейчас
К своему ужасу я обнаружил, что все папки снова оказались внутри / home /
.
У меня закончились идеи, может ли кто-нибудь мне помочь?
Перейдите в консоль GCP и в Compute Engine перейдите к метаданным. вы найдете все SSH-KEY, которые были добавлены в качестве рычага проекта. Каждый раз, когда создается новая виртуальная машина, все пользователи с SSH-ключом на уровне проекта будут иметь доступ к виртуальной машине.
для получения дополнительной информации см. Эту ссылку: https://cloud.google.com/compute/docs/storing-retrieving-metadata