Установить пакет openssh-server из файла preseed
Таким образом, мне удалось создать собственный ISO-файл, используя preseed-файл, который автоматически не вызывает ОС, все работает нормально, НО isntallation пакета openssh-server... Я не то, что еще нужно делать.
В моем предварительном файле у меня есть следующие строки:
#Add package
d-i pkgsel/include string openssh-server build-essential
однако, когда я вхожу, пакет не был установлен. Мне также нужно разрешить вход в систему с правами root, для других целей, поэтому мне нужно изменить файл sshd_config, я также попробовал следующие два варианта, но я думаю, они не работают, потому что пакет openssh-server не устанавливается в первую очередь:
ubiquity ubiquity/success_command string sed -i '/PermitRootLogin/c\PermitRootLogin yes' /etc/ssh/sshd_config
а также
d-i preseed/late_command string sed -i '/PermitRootLogin/c\PermitRootLogin yes' /etc/ssh/sshd_config
Как лучше всего сначала добавить пакет ssh-сервера? а затем изменить файл sshd_config? поэтому при загрузке ОС служба ssh запускается и работает
1 ответ
Мы использовали и протестировали следующий подход вместе с образом сетевой загрузки Ubuntu.
d-i passwd/root-login boolean true
d-i passwd/root-password-crypted password <password>
d-i passwd/make-user boolean false
d-i pkgsel/include string openssh-server
d-i preseed/late_command string \
in-target sh -c 'sed -i "s/^#PermitRootLogin.*\$/PermitRootLogin yes/g" /etc/ssh/sshd_config';
Используйте следующую команду для генерации пароля:
printf "please-change-password" | mkpasswd -s -m sha-512
Здесь вы найдете более сложный подход с использованием открытых ключей ssh по умолчанию. Он по-прежнему содержит все подсказки в файле preseed, касающиеся ввода пароля.