mysql เป็น 5.7.34 อูบุนตู 18.04
สคริปต์ที่ฉันเขียน my.sh
#!/usr/bin/คาดหวัง
วางไข่ mysql_secure_installation
คาดหวัง {
"กด y|Y สำหรับใช่ ปุ่มอื่นๆ สำหรับไม่ใช่" { send "n\r"; exp_ดำเนินการต่อ }
"รหัสผ่านใหม่" { ส่ง "123456\r"; exp_ดำเนินการต่อ }
"ป้อนรหัสผ่านใหม่อีกครั้ง" { ส่ง "123456\r"; exp_ดำเนินการต่อ }
"ลบผู้ใช้ที่ไม่ระบุตัวตน?" { ส่ง "y\r"; exp_ดำเนินการต่อ }
"ไม่อนุญาตให้รูทเข้าสู่ระบบจากระยะไกล" { ส่ง "n\r"; exp_ดำเนินการต่อ }
"ลบฐานข้อมูลทดสอบและเข้าถึง" { send "Y\r"; exp_ดำเนินการต่อ }
"โหลดตารางสิทธิ์ทันที" { ส่ง "Y\r"; exp_ดำเนินการต่อ }
}
./my.sh
ผลการดำเนินงานมีดังนี้
ทำไมสคริปต์ไม่ทำงานตามที่คาดไว้
root@fa244a50dc06:/# ./my.sh
วางไข่ mysql_secure_installation
การรักษาความปลอดภัยการปรับใช้เซิร์ฟเวอร์ MySQL
การเชื่อมต่อกับ MySQL โดยใช้รหัสผ่านเปล่า
VALIDATE PASSWORD PLUGIN สามารถใช้ทดสอบรหัสผ่านได้
และปรับปรุงความปลอดภัย ตรวจสอบความแข็งแกร่งของรหัสผ่าน
และอนุญาตให้ผู้ใช้ตั้งเฉพาะรหัสผ่านที่เป็น
ปลอดภัยเพียงพอ คุณต้องการตั้งค่าปลั๊กอิน VALIDATE PASSWORD หรือไม่
กด y|Y สำหรับใช่ ปุ่มอื่นๆ สำหรับไม่ใช่: n
โปรดตั้งรหัสผ่านสำหรับรูทที่นี่
รหัสผ่านใหม่:
ป้อนรหัสผ่านใหม่:
ตามค่าเริ่มต้น การติดตั้ง MySQL จะมีผู้ใช้ที่ไม่ระบุตัวตน
อนุญาตให้ทุกคนเข้าสู่ระบบ MySQL โดยไม่ต้องมี
บัญชีผู้ใช้ที่สร้างขึ้นสำหรับพวกเขา สิ่งนี้มีไว้สำหรับ
การทดสอบและเพื่อให้การติดตั้งราบรื่นขึ้นเล็กน้อย
คุณควรลบออกก่อนที่จะย้ายเข้าสู่การผลิต
สิ่งแวดล้อม.
นำผู้ใช้ที่ไม่ระบุชื่อออกไหม (กด y|Y สำหรับใช่ ปุ่มอื่นๆ สำหรับไม่ใช่) : n
...ข้ามไป.
โดยปกติแล้วรูทควรได้รับอนุญาตให้เชื่อมต่อเท่านั้น
'โลคัลโฮสต์' สิ่งนี้ทำให้มั่นใจได้ว่าไม่มีใครคาดเดาได้
รหัสผ่านรูทจากเครือข่าย
ไม่อนุญาตให้รูทเข้าสู่ระบบจากระยะไกล? (กด y|Y สำหรับใช่ ปุ่มอื่นๆ สำหรับไม่ใช่) : n
...ข้ามไป.
ตามค่าเริ่มต้น MySQL จะมาพร้อมกับฐานข้อมูลชื่อ 'ทดสอบ'
ทุกคนสามารถเข้าถึงได้ สิ่งนี้มีไว้สำหรับการทดสอบเท่านั้น
และควรกำจัดออกก่อนที่จะเข้าสู่การผลิต
สิ่งแวดล้อม.
ลบฐานข้อมูลทดสอบและเข้าถึงได้หรือไม่ (กด y|Y สำหรับใช่ ปุ่มอื่นๆ สำหรับไม่ใช่) : n
...ข้ามไป.
การโหลดตารางสิทธิ์ซ้ำจะทำให้แน่ใจได้ว่ามีการเปลี่ยนแปลงทั้งหมด
ที่ทำไปแล้วจะมีผลทันที
โหลดตารางสิทธิ์ใหม่เลยไหม (กด y|Y สำหรับใช่ ปุ่มอื่นๆ สำหรับไม่ใช่) : n
...ข้ามไป.
เสร็จเรียบร้อย!