每次我设置新服务器时,我都会在每个服务器上执行一系列步骤以获取更新、设置密码、通过 root 用户删除登录、定制熟悉的环境(bashrc)并保护服务器安全。
是否可以使用脚本完成所有这些操作?设置可能包括:
发行版升级和更新
apt-get 更新
apt-get 升级
添加用户
添加用户部署器
添加用户部署 sudo
mkdir /home/deployer/.ssh
chmod 700 /home/deployer/.ssh
触摸/home/deployer/.ssh/authorization_keys
部署者密码
su 部署程序
到 /home/deployer/.ssh/
sudo chown deployer.ssh/
在本地机器上执行命令:
ssh-复制-id[电子邮件保护]
ssh-复制-id[电子邮件保护]
重新登录服务器:
chmod 400 /home/deployer/.ssh/authorized_keys
chown deployer:部署者/home/部署者-R
5..6...7.. 自定义 bashrc,编辑 sshd_config,安装 ufw 和 logwatch
答案1
使用 Kickstart 或同等流程来管理构建。使用 Puppet 等配置管理产品来部署您的设置。
您还可以使用一些脚本魔法在构建结束时启动配置管理,使其成为无缝体验。
我的脚本设置了一个静态 IP,配置了 OSSEC 并执行了几次 puppet 运行来理清所有依赖关系,然后运行 yum 更新(我主要是 CentOS 用户)。
可以拼凑其他方法来获得相同的结果,但我发现这是我用过的最灵活的方法。