如何自动化新的Linux服务器初始设置?

Modified on: Fri, 20 Sep 2019 16:20:02 +0800

每次我设置新服务器时,我都会在每台服务器上执行一系列步骤以获取更新,设置passwd,通过root用户删除登录,自定义熟悉的环境(bashrc)并保护服务器。

是否可以使用脚本完成所有操作?设置可能包括:

  1. 发布升级和更新

    apt-get update

    apt-get upgrade

  2. 添加用户

    adduser deployer

    adduser deployer sudo

    mkdir /home/deployer/.ssh

    chmod 700 /home/deployer/.ssh

    触摸/home/deployer/.ssh/authorization_keys

    deployer passwd

    su deployer

    cd到/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:deployer / home / deployer -R

  5. 醇>

    5..6 ... 7 ..自定义bashrc,编辑sshd_config,安装ufw& logwatch

最佳答案

使用Kickstart或等效流程来管理构建。使用Puppet等配置管理产品来部署您的设置。

您还可以使用一些脚本魔术在构建结束时启动配置管理,以使其成为无缝体验。

我的脚本设置静态IP,配置OSSEC并执行几个木偶运行来整理所有依赖项然后运行yum更新(我主要是CentOS用户)。

可以将其他获得相同结果的方法拼凑在一起,但我发现这是我使用过的最灵活的方法。


相关问答

添加新评论