当前位置:   article > 正文

Linux 实用小脚本系列(2)----mysql安全初始化脚本的免交互执行--mysql_secure_installation_mysql_secure_installation 免交互

mysql_secure_installation 免交互

    Linux 实用小脚本系列(2)----mysql安全初始化脚本的免交互执行--     mysql_secure_installation

            通常mysql安装完毕后,都会带有一个增强mysql安全的脚本,并且初始化密码也可以通过该脚本快速实现,但如果是采用自己编写脚本安装mysql(不管是二进制还是编译还是yum安装的方式),安装完毕后,都需要手动执行该脚本--mysql_secure_installation,这未免不太仁杏化了,这样的问题怎么解决呢? expect脚本可以帮助你实现免交互执行该脚本,十分的仁杏化,快速。

         现在就假设安装完毕了mysql。现在开始编写expect脚本快速的执行安全脚本。

yum install -y expect  #安装的是expect脚本解释器

vim mysql_secure.sh  内容如下:(需要什么密码自行在  set passwd 这一行后写入)

  1. #!/usr/bin/expect
  2. set passwd 要设定的密码
  3. spawn mysql_secure_installation
  4. expect {
  5. "Enter current password" { send "\r"; exp_continue }
  6. "Y/n" { send "Y\r"; exp_continue }
  7. "New password" { send "$passwd\r"; exp_continue }
  8. "Re-enter new password" { send "$passwd\r"; exp_continue }
  9. "Remove anonymous users" { send "Y\r"; exp_continue }
  10. "Disallow root login remotely" { send "Y\r"; exp_continue }
  11. "Remove test database and access to it" { send "Y\r"; exp_continue }
  12. "Reload privilege tables now" { send "Y

 执行脚本:expect 脚本名称,或者 ./脚本名称。多说一句,通常shell脚本 执行的一种方式为  bash 脚本名称,现在需要将bash 换成expect ,即可。./脚本名称的方式 同shell脚本,需要给予执行权限,chmod +x 脚本名称。

上面的这个脚本,密码是写死在脚本内的,如果想更灵活,比如通过参数,从而提升安全,可以以带参数方式执行该脚本,仅仅需要一点小小的改动。

  1. #!/usr/bin/expect
  2. set passwd [lindex $argv 0]
  3. spawn mysql_secure_installation
  4. expect {
  5. "Enter current password" { send "\r"; exp_continue }
  6. "Y/n" { send "Y\r"; exp_continue }
  7. "New password" { send "$passwd\r"; exp_continue }
  8. "Re-enter new password" { send "$passwd\r"; exp_continue }
  9. "Remove anonymous users" { send "Y\r"; exp_continue }
  10. "Disallow root login remotely" { send "Y\r"; exp_continue }
  11. "Remove test database and access to it" { send "Y\r"; exp_continue }
  12. "Reload privilege tables now" { send "Y\r" }
  13. }

执行该脚本时带一个参数即可,该参数即为密码。

例如,expect 脚本名称 参数1, 那么,参数1的值就是密码,可通过登录mysql验证哦。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/79321
推荐阅读
相关标签
  

闽ICP备14008679号