При создании нового экземпляра на AWS с использованием официального серверного AMI Ubuntu 12.04, какие есть различия по сравнению с тем, если бы я выполнял стандартную установку сервера на моем собственном компьютере?
Например, пользователь по умолчанию - «ubuntu». Открытый ключ SSH добавляется в файл authorized_keys пользователей. Sudo не имеет пароля для этого пользователя. PasswordAuthentication отключен для SSH. и т.д. и т.п.
Конфигурации были изменены по сравнению с их значениями по умолчанию, и я хотел бы знать, есть ли список, или где-нибудь я мог бы узнать сделанные изменения.
Официального списка не существует. Однако они публикуют здесь сценарии сборки, которые они используют: https://code.launchpad.net/~ubuntu-on-ec2/vmbuilder/automated-ec2-builds.
Вы можете проверить их с помощью следующей команды:
bzr branch lp:~ubuntu-on-ec2/vmbuilder/automated-ec2-builds
Большинство изменений происходит из установленных пакетов. Например, используемый метапакет - это ubuntu-cloud вместо ubuntu-server. Сюда входит другое ядро, cloud-init, инструменты aws и, возможно, другие пакеты. Сам Cloud-init делает довольно много, например изменения в apt-get, загрузка ключей ssh и загрузка скриптов из пользовательских данных Amazon. Я не знаю наверняка, но я считаю, что это также делает пользователя ubuntu и изменяет ваш sshd_config, чтобы отключить PasswordAuthentication. Для этого вам нужно будет проверить deb-файл cloud-init.
Суть в том, что вы вряд ли найдете все изменения. Однако, похоже, вы нашли самые важные из них. На самом деле важны изменения в логине. Все остальное - это просто добавление инструментов и пакетов, которых больше нигде нет. Если вы хотите по-настоящему понять AMI и то, как он работает с Amazon, я настоятельно рекомендую изучить cloud-init. Cloud-init - мощный инструмент для выполнения некоторых очень сложных задач с помощью AMI.