ตั้งค่าให้ GCP รองรับการ Remote connection

Piyanat Nimkhuntod
3 min readMar 23, 2021

--

วิธีการก็เหมือนๆกับที่ค้นเจอใน Net นั่นแหละครับ แค่ต้องไป เพิ่มตรง Firewall นิดๆหน่อยๆ มาเริ่มกันเลย

เข้า Root ด้วยคำสั่ง

sudo -i

ใส่รหัสผ่านเพื่อให้ได้ root permission

sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation

จะต้องใส่รหัสผ่าน root ปัจจุบันก่อน หากไม่ทราบกด enter ครับ

ตอบคำถามครับตามนี้ครับ

1.Change the root password? [Y/n] ให้ตอบ Y
New password: ใส่รหัสผ่าน root ใหม่
re-enter new password: ใส่รหัสให้เหมือนด้านบน
2.Remove anonymous users? [Y/n] ให้ตอบ Y
3.Disallow root login remotely? [Y/n] ให้ตอบ Y
4.Remove test database and access to it? [Y/n] ให้ตอบ Y
5.Reload privilege tables now? [Y/n] ให้ตอบ Y

ทีนี้ให้เข้าไปใช้ MairaDB โดยพิมพ์คำสั่ง

mysql -u root -p

ใส่รหัสผ่าน root กรณี ใส่รหัสที่เปลี่ยนด้านบนไปแล้วไม่ได้ ให้ลอง enter เข้าไปเลย

ถ้าเข้าไปได้ตรงๆเลยให้เราเปลี่ยน รหัส

alter user ‘root’@’localhost’ identified by ‘รหัสผ่านใหม่’;

ลอง exit และ login ด้วยรหัสผ่านใหม่อีกครั้ง

สร้าง user สำหรับ Connect จากภายนอก ใช้ % เป็นความหมายว่าเข้าจากที่ไหนก็ได้

create user ‘admin’@’%’;

Grant สิทธิ ให้เขาหน่อย

grant all PRIVILEGES on *.* to ‘admin’@’%’ identified by ‘รหัสผ่าน่’ with grant option;

เข้าไปแก้ Config ใน

/etc/mysql/mariadb.conf.d/50-server.cnf

โดยเพิ่มชุดคำสั่ง #skip-networking

และตรง bind-address ให้ใส่ # ข้างหน้า

#bind-address=127.0.0.1#skip-networking

เอาละ ในเน็ตก็จะบอกคุณแบบนี้ หรือ คล้ายๆ แบบนี้ แต่พอกด Connect เท่านั้นแหละ

ทีนี้ปัญหาคือ Firewall ของ GCP เอง เราก็ต้อง Add เข้าไปโดยไปเพิ่มที่เมนู VPC network → Firewall

จากนั้นให้เราเพิ่ม Rule โดยการคลิกที่ Create firewall rule

ให้เรากำหนดชื่อ โดยตั้งเป็นอะไรที่สื่อความหมายให้มันหน่อย เช่น mysql-3306

กำหนดให้เก็บ log เป็น On

เลือก Target เป็น All Instances in the network

Source IP Range : 0.0.0.0/0

Protocal and Port เลือก tcp เป็น 3306

แล้วกด ปุ่ม Create

ทีนี้เรามาลอง connect กันอีกที

สำเร็จแล้ววววววววววววววววววววววววว

นี่ก็เป็นอีกเรื่องที่ผมก็ต้องขอบอกไว้ตรงนี้เลยว่า ผมแก้ปัญหาแบบนี้แล้วได้ อาจไม่ใช่วิธ๊ที่ถูกต้อง ไม่ได้ปลอดภัย 100 % ไม่ต้องเชื่อผมก็ได้ครับ แต่ผมลองผิดลองถูกแล้วใช้ได้ก็เลยมา Note ไว้ ขอบคุณครับ

--

--

No responses yet