Назад | Перейти на главную страницу

Как я могу автоматизировать первоначальную настройку нового Linux-сервера?

Каждый раз, когда я настраиваю новый сервер, я выполняю ряд шагов на каждом сервере, чтобы получать обновления, устанавливать пароль, удалять вход через пользователя root, настраивать знакомую среду (bashrc) и защищать сервер.

Можно ли все это сделать с помощью скрипта? Установка может включать:

  1. обновления и обновления дистрибутива

    apt-get update

    apt-get upgrade

  2. добавление пользователей

    развертыватель аддюсера

    adduser deployer sudo

    mkdir /home/deployer/.ssh

    chmod 700 /home/deployer/.ssh

    коснитесь /home/deployer/.ssh/authorization_keys

    пароль для развертывания

    su deployer ru

    перейдите в /home/deployer/.ssh/

    sudo chown deployer .ssh /

  3. Выполнение команд на локальном компьютере:

    ssh-copy-id root@hostname.com

    ssh-copy-id deployer@hostname.com

  4. вход на сервер:

    chmod 400 /home/deployer/.ssh/authorized_keys

    chown deployer: деплойер / домашний / деплойер -R

5..6 ... 7 .. Настройка bashrc, редактирование sshd_config, установка ufw и logwatch

Используйте кикстарт или аналогичный процесс для управления сборкой. Используйте продукт управления конфигурацией, например Puppet, для развертывания ваших настроек.

Вы также можете использовать немного магии сценариев, чтобы запустить управление конфигурацией в конце сборки, чтобы сделать ее удобной.

Мой сценарий устанавливает статический IP-адрес, настраивает OSSEC и выполняет пару запусков марионеток, чтобы отсортировать все зависимости, а затем запускает обновление yum (в первую очередь я пользователь CentOS).

Можно скомпоновать другие методы для получения тех же результатов, но я обнаружил, что это самый гибкий метод, с которым я работал.

Кикстарт / Джампстарт, Повар (в том числе шеф-соло), Кукольный, Поваренная соль, сценарии оболочки и языки сценариев более высокого уровня могут использоваться для решения этой проблемы.

Честно говоря, похоже, что у вас есть достойное начало сценария оболочки. Начните с этого, и если сложность нарастает, либо дорабатывайте, либо ищите более мощный продукт. Лично у меня был хороший опыт работы с Chef.

Ключ к автоматизации всего - начать с малого; вам не нужно полностью заниматься автоматизацией. Выберите одну болевую точку и исправьте ее. Выбери другой, повтори.