วิธีการติดตั้ง Memcached (เซิร์ฟเวอร์แคช) บน CentOS 7
Memcached คือโปรแกรมแคชออบเจ็กต์หน่วยความจำแบบกระจายแบบโอเพ่นซอร์สที่ช่วยให้เราสามารถปรับปรุงและเร่งความเร็วประสิทธิภาพของแอปพลิเคชันเว็บไดนามิกได้โดยการแคชข้อมูลและออบเจ็กต์ในหน่วยความจำ
Memcached ยังใช้เพื่อแคชตารางฐานข้อมูลทั้งหมดและการสืบค้นเพื่อปรับปรุงประสิทธิภาพของฐานข้อมูล มันเป็นระบบแคชเดียวที่ใช้งานได้ฟรีและใช้งานโดยไซต์ใหญ่ๆ มากมาย เช่น YouTube, Facebook, Twitter, Reddit , Drupal, Zynga ฯลฯ
อ่านเพิ่มเติม: วิธีติดตั้งและกำหนดค่า Memcached บน CentOS 8
Memcached สามารถกระทำการปฏิเสธการโจมตีบริการได้หากกำหนดค่าไม่ถูกต้อง ในบทความนี้ เราจะอธิบายวิธีการติดตั้งและรักษาความปลอดภัยเซิร์ฟเวอร์ Memcached ของคุณบนการกระจาย CentOS 7 Linux คำแนะนำที่ให้มาเหล่านี้ใช้ได้กับ RHEL และ Fedora Linux ด้วยเช่นกัน
การติดตั้ง Memcached ใน CentOS 7
ขั้นแรก อัปเดตดัชนีแพ็คเกจซอฟต์แวร์ในเครื่องของคุณ จากนั้นติดตั้ง Memcached จากที่เก็บอย่างเป็นทางการของ CentOS โดยใช้คำสั่ง yum ต่อไปนี้
yum update
yum install memcached
ต่อไป เราจะติดตั้ง libmemcached ซึ่งเป็นไลบรารีไคลเอ็นต์ที่มีเครื่องมือสองสามอย่างในการจัดการเซิร์ฟเวอร์ Memcached ของคุณ
yum install libmemcached
ขณะนี้ควรติดตั้ง Memcached บนระบบ CentOS ของคุณเป็นบริการ พร้อมด้วยเครื่องมือที่ต้องใช้ในการทดสอบการเชื่อมต่อ ตอนนี้เราสามารถดำเนินการเพิ่มเติมเพื่อรักษาความปลอดภัยการตั้งค่าการกำหนดค่าได้
การรักษาความปลอดภัยการตั้งค่าการกำหนดค่า Memcached
เพื่อให้แน่ใจว่าบริการ Memcached ที่ติดตั้งไว้กำลังรับฟังบนอินเทอร์เฟซภายใน 127.0.0.1
เราจะแก้ไขตัวแปร OPTIONS
ใน / ฯลฯ/sysconfig/memcached
ไฟล์การกำหนดค่า
vi /etc/sysconfig/memcached
ค้นหาตัวแปร OPTIONS
และเพิ่ม -l 127.0.0.1 -U 0
ลงในตัวแปร OPTIONS
การตั้งค่าเหล่านี้จะปกป้องเซิร์ฟเวอร์ของเราจากการโจมตีแบบปฏิเสธบริการ
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1 -U 0"
เราจะมาหารือเกี่ยวกับพารามิเตอร์แต่ละข้อข้างต้นโดยละเอียด
- PORT : พอร์ตที่ Memcached ใช้เพื่อเรียกใช้
- USER : daemon เริ่มต้นสำหรับบริการ Memcached
- MAXCONN : ค่าที่ใช้ในการตั้งค่าการเชื่อมต่อพร้อมกันสูงสุดเป็น 1024 สำหรับเว็บเซิร์ฟเวอร์ที่ไม่ว่าง คุณสามารถเพิ่มเป็นจำนวนเท่าใดก็ได้ตามความต้องการของคุณ
- CACHESIZE : ตั้งค่าหน่วยความจำขนาดแคชเป็น 2048 สำหรับเซิร์ฟเวอร์ที่ไม่ว่าง คุณสามารถเพิ่มได้สูงสุด 4GB
- ตัวเลือก : ตั้งค่าที่อยู่ IP ของเซิร์ฟเวอร์ เพื่อให้เว็บเซิร์ฟเวอร์ Apache หรือ Nginx สามารถเชื่อมต่อได้
รีสตาร์ทและเปิดใช้งานบริการ Memcached เพื่อใช้การเปลี่ยนแปลงการกำหนดค่าของคุณ
systemctl restart memcached
systemctl enable memcached
เมื่อเริ่มต้นแล้ว คุณสามารถยืนยันได้ว่าบริการ Memcached ของคุณเชื่อมโยงกับอินเทอร์เฟซภายในเครื่องและรับฟังเฉพาะการเชื่อมต่อ TCP โดยใช้คำสั่ง netstat ต่อไปนี้
netstat -plunt
คุณยังตรวจสอบสถิติของเซิร์ฟเวอร์ได้โดยใช้ memcached-tool ดังที่แสดง
memcached-tool 127.0.0.1 stats
ตอนนี้ตรวจสอบให้แน่ใจว่าได้อนุญาตการเข้าถึงเซิร์ฟเวอร์ Memcached โดยเปิดพอร์ต 11211
บนไฟร์วอลล์ของคุณดังที่แสดง
firewall-cmd --permanent --zone=public --add-port=11211/tcp
ติดตั้งส่วนขยาย Memcached PHP
ตอนนี้ ให้ติดตั้งส่วนขยาย PHP เพื่อทำงานกับ Memcached daemon
yum install php-pecl-memcache
ติดตั้งไลบรารี Memcached Perl
ติดตั้งไลบรารี Perl สำหรับ Memcached
yum install perl-Cache-Memcached
ติดตั้งไลบรารี Memcached Python
ติดตั้งไลบรารีหลามสำหรับ Memcached
yum install python-memcached
รีสตาร์ทเว็บเซิร์ฟเวอร์
เริ่มบริการ Apache หรือ Nginx ใหม่เพื่อให้สอดคล้องกับการเปลี่ยนแปลง
systemctl restart httpd
systemctl restart nginx
แคช MySQL แบบสอบถามด้วย Memcached
ไม่ใช่เรื่องง่ายสำหรับทุกคน คุณต้องใช้ API เพื่อแก้ไขโค้ด PHP ของคุณเพื่อเปิดใช้งานการแคช MySQL คุณสามารถค้นหาโค้ดตัวอย่างได้ที่ Memcache พร้อม MySQL และ PHP
แค่นั้นแหละ! ในบทความนี้ เราได้ขยายวิธีการติดตั้งและรักษาความปลอดภัยเซิร์ฟเวอร์ Memcached ของคุณไปยังอินเทอร์เฟซเครือข่ายท้องถิ่น หากคุณประสบปัญหาใด ๆ ระหว่างการติดตั้ง โปรดขอความช่วยเหลือในส่วนความคิดเห็นด้านล่าง