การบริหารจัดการเครื่องแม่ข่าย
1. พื้นฐาน Server และ Client
Server คือเครื่องคอมพิวเตอร์ที่ให้บริการทรัพยากรหรือบริการต่างๆ แก่เครื่องอื่นในเครือข่าย ส่วน Client คือเครื่องที่ร้องขอบริการจาก Server
| รายการ | Server | Client |
|---|---|---|
| หน้าที่ | ให้บริการ (Service Provider) | รับบริการ (Service Consumer) |
| ทรัพยากร | CPU, RAM, Storage สูง | ตามความต้องการใช้งาน |
| ความพร้อมใช้งาน | ต้องทำงาน 24/7 | เปิด-ปิดได้ตามต้องการ |
| ตำแหน่ง | Data Center / Server Room | โต๊ะทำงานทั่วไป |
| ตัวอย่าง | Web Server, Mail Server | PC, Laptop, Smartphone |
2. ประเภทของ Server ที่สำคัญ
Server แต่ละประเภทมีหน้าที่เฉพาะทาง เป็นหัวข้อที่ออกสอบบ่อยมาก
| ประเภท Server | หน้าที่หลัก | ตัวอย่าง Software | Port ที่ใช้ |
|---|---|---|---|
| File Server | เก็บและแชร์ไฟล์ในเครือข่าย | Samba, Windows File Share | 445 (SMB) |
| Web Server | ให้บริการเว็บไซต์ (HTTP/HTTPS) | Apache, Nginx, IIS | 80, 443 |
| Database Server | จัดเก็บและจัดการฐานข้อมูล | MySQL, PostgreSQL, Oracle | 3306, 5432, 1521 |
| Mail Server | รับ-ส่งอีเมล | Microsoft Exchange, Postfix | 25, 110, 143 |
| DNS Server | แปลงชื่อโดเมนเป็น IP | BIND, Windows DNS | 53 |
| DHCP Server | แจก IP Address อัตโนมัติ | ISC DHCP, Windows DHCP | 67, 68 |
| Proxy Server | ตัวกลางเชื่อมต่ออินเทอร์เน็ต | Squid, HAProxy | 3128, 8080 |
| FTP Server | บริการโอนถ่ายไฟล์ | vsftpd, ProFTPD | 20, 21 |
3. ระบบปฏิบัติการสำหรับ Server
ระบบปฏิบัติการ (Operating System) สำหรับ Server มีคุณสมบัติพิเศษที่ต่างจาก Desktop เช่น ความเสถียร ความปลอดภัย และการจัดการทรัพยากร
| OS | ข้อดี | ข้อจำกัด | เหมาะกับ |
|---|---|---|---|
| Windows Server | ใช้งานง่าย GUI สวย, Active Directory, รองรับ .NET | ค่าลิขสิทธิ์สูง, ใช้ทรัพยากรมาก | องค์กรใช้ Microsoft Stack |
| Linux (Ubuntu Server) | ฟรี Open Source, เบา, เสถียร, ปลอดภัย | ต้องเรียนรู้ Command Line | Web Server, Container |
| Linux (CentOS/Rocky) | เสถียรมาก, เหมาะ Production, RHEL Compatible | Update ช้า, CentOS หยุดพัฒนาแล้ว | Enterprise, Database Server |
| Linux (Debian) | เสถียรสุดๆ, Package ผ่านการทดสอบ | Software เวอร์ชันเก่า | Server ที่ต้องการความเสถียร |
- Windows Server Editions: Standard, Datacenter (Unlimited VM), Essentials (ธุรกิจเล็ก)
- Linux Distributions สำหรับ Server: Ubuntu Server, CentOS, Rocky Linux, Debian, RHEL
- Active Directory (AD): ระบบจัดการ User/Group/Policy แบบรวมศูนย์ใน Windows Server
- SSH (Secure Shell): โปรโตคอลสำหรับ Remote Access ไปยัง Linux Server ผ่าน Port 22
4. การจัดการ User และ Group
การจัดการผู้ใช้และกลุ่มเป็นพื้นฐานสำคัญของการรักษาความปลอดภัย Server
- User Account: บัญชีผู้ใช้แต่ละคน มี Username, Password, UID (Linux) หรือ SID (Windows)
- Group: รวมกลุ่ม User ที่มีสิทธิ์เหมือนกัน ช่วยจัดการง่ายขึ้น
- Root/Administrator: บัญชีที่มีสิทธิ์สูงสุด ทำได้ทุกอย่าง (ต้องระวังการใช้งาน!)
- Principle of Least Privilege: ให้สิทธิ์เท่าที่จำเป็นเท่านั้น
| คำสั่ง | Linux | Windows |
|---|---|---|
| เพิ่ม User | useradd / adduser | net user /add |
| ลบ User | userdel | net user /delete |
| เปลี่ยนรหัส | passwd username | net user username * |
| เพิ่ม Group | groupadd | net localgroup /add |
| ดู User ทั้งหมด | cat /etc/passwd | net user |
5. สิทธิ์การเข้าถึง (Permission)
ระบบสิทธิ์ใน Linux ใช้ตัวเลข 3 หลัก (rwx) สำหรับ Owner, Group, Others
| สิทธิ์ | ตัวอักษร | ตัวเลข | ความหมาย |
|---|---|---|---|
| Read | r | 4 | อ่านไฟล์/ดูรายการใน Directory |
| Write | w | 2 | แก้ไข/ลบไฟล์ |
| Execute | x | 1 | รันไฟล์/เข้า Directory |
- ตัวอย่าง: chmod 755 file.sh หมายถึง Owner=rwx(7), Group=r-x(5), Others=r-x(5)
- 755: เจ้าของทำได้ทุกอย่าง คนอื่นอ่านและรันได้
- 644: เจ้าของอ่านเขียน คนอื่นอ่านอย่างเดียว (ไฟล์ทั่วไป)
- 600: เจ้าของอ่านเขียน คนอื่นทำอะไรไม่ได้เลย (ไฟล์ลับ)
- chown: เปลี่ยนเจ้าของไฟล์, chgrp: เปลี่ยน Group
6. Backup และ Restore
การสำรองข้อมูลเป็นสิ่งจำเป็นสำหรับทุก Server เพื่อป้องกันข้อมูลสูญหาย
| ประเภท Backup | คำอธิบาย | ข้อดี | ข้อเสีย |
|---|---|---|---|
| Full Backup | สำรองทุกอย่าง 100% | Restore ง่าย เร็ว | ใช้พื้นที่และเวลามาก |
| Incremental | สำรองเฉพาะที่เปลี่ยนจากครั้งก่อน | เร็ว ประหยัดพื้นที่ | Restore ต้องใช้หลายไฟล์ |
| Differential | สำรองเฉพาะที่เปลี่ยนจาก Full ล่าสุด | Restore เร็วกว่า Incremental | ไฟล์ใหญ่ขึ้นเรื่อยๆ |
- 3-2-1 Rule: เก็บ 3 ชุด, ใน 2 สื่อที่ต่างกัน, 1 ชุดเก็บนอกสถานที่
- RPO (Recovery Point Objective): ข้อมูลย้อนหลังได้ไกลแค่ไหน
- RTO (Recovery Time Objective): ต้องกู้คืนเสร็จภายในกี่ชั่วโมง
- Offsite Backup: เก็บ Backup ไว้ที่อื่น เช่น Cloud, Data Center สำรอง
7. RAID (Redundant Array of Independent Disks)
RAID คือเทคนิคการรวม Hard Disk หลายตัวเข้าด้วยกันเพื่อเพิ่มความเร็วหรือความปลอดภัยของข้อมูล
| RAID Level | HDD ขั้นต่ำ | หลักการ | ข้อดี | ข้อเสีย |
|---|---|---|---|---|
| RAID 0 | 2 | Striping (กระจายข้อมูล) | เร็วมาก | ไม่มี Redundancy HDD 1 ตัวเสีย = ข้อมูลหายหมด |
| RAID 1 | 2 | Mirroring (สำเนาข้อมูล) | ปลอดภัย | ได้พื้นที่ 50% ของทั้งหมด |
| RAID 5 | 3 | Striping + Parity | ปลอดภัย เสีย 1 ตัวได้ | เขียนช้า ต้องคำนวณ Parity |
| RAID 6 | 4 | Striping + 2 Parity | เสียได้ 2 ตัว | เขียนช้ากว่า RAID 5 |
| RAID 10 | 4 | Striping + Mirroring | เร็วและปลอดภัย | ได้พื้นที่ 50% |
8. System Monitoring และ Availability
การตรวจสอบสถานะ Server อย่างต่อเนื่องเพื่อให้มั่นใจว่าระบบทำงานได้ตลอดเวลา
- Uptime: เวลาที่ Server ทำงานต่อเนื่อง (99.9% = downtime 8.76 ชม./ปี)
- Load Average: ค่าเฉลี่ยของ Process ที่รอใช้ CPU (ใน Linux)
- Memory Usage: การใช้ RAM ถ้าเต็มจะ Swap ไป Disk (ช้ามาก)
- Disk I/O: การอ่านเขียน Disk ถ้ามากเกินอาจเป็น Bottleneck
- Network Traffic: ปริมาณข้อมูลที่ผ่านเข้าออก
| Tools | แพลตฟอร์ม | ใช้สำหรับ |
|---|---|---|
| top / htop | Linux | ดู Process และ Resource แบบ Real-time |
| Task Manager | Windows | ดู Process, CPU, Memory |
| Nagios / Zabbix | ทุก OS | Monitoring แบบ Enterprise |
| Prometheus + Grafana | ทุก OS | Monitoring และ Visualization |
| ping / traceroute | ทุก OS | ทดสอบ Network |
9. พรบ.คอมฯ และความปลอดภัย (เสริม)
เบื้องต้นเกี่ยวกับกฎหมายและความปลอดภัยที่ Admin ต้องรู้
- พ.ร.บ.คอมฯ 2560 ม.26: ผู้ให้บริการต้องเก็บ Log อย่างน้อย 90 วัน
- PDPA: ต้องมีมาตรการรักษาความปลอดภัยข้อมูลส่วนบุคคล
- Firewall: ควรเปิดเฉพาะ Port ที่ใช้งาน (Deny All by Default)
10. Virtualization vs Containerization
เทคโนโลยีการจำลองเครื่อง Server ที่ปฏิวัติวงการไอที:
| หัวข้อ | Virtual Machine (VM) | Container (Docker) |
|---|---|---|
| หลักการ | จำลอง Hardware (มี OS ของตัวเอง) | จำลอง OS (แชร์ OS กับ Host) |
| ขนาด | ใหญ่ (GB) เพราะมี OS เต็ม | เล็ก (MB) มีแค่ App กับ Lib |
| ความเร็ว Boot | ช้า (เป็นนาที) | เร็วมาก (วินาที) |
| การแยกตัว | สมบูรณ์ (ปลอดภัยกว่า) | ระดับ Process (เบากว่า) |
| ตัวอย่าง | VMware, VirtualBox, Hyper-V | Docker, Kubernetes, Podman |
11. Cloud Computing Models
รูปแบบการให้บริการบน Cloud:
| Model | ชื่อเต็ม | เราดูแลอะไร | ตัวอย่าง |
|---|---|---|---|
| On-Premise | ใช้เครื่องตัวเอง | ทุกอย่าง (แอร์, ไฟ, Server, OS, App) | Data Center บริษัท |
| IaaS | Infrastructure as a Service | OS, Runtime, Data, App | AWS EC2, Google Compute Engine |
| PaaS | Platform as a Service | Data, App | Google App Engine, Heroku |
| SaaS | Software as a Service | ใช้แม่งอย่างเดียว | Gmail, Google Drive, Office 365 |
12. Web Server Hardening (การทำ Server ให้แข็ง)
รายการตรวจสอบความปลอดภัยก่อนนำ Server ขึ้นใช้งานจริง (Production):
- 1. Update Patch OS และ Software ให้ล่าสุดเสมอ
- 2. ปิด Port ที่ไม่ใช้ (ใช้ Firewall ช่วย)
- 3. ลบ Default User/Password และปิด Root Login ใน SSH
- 4. เปิดใช้งาน HTTPS (SSL/TLS Certificate)
- 5. ซ่อน Version ของ Web Server (Security by Obscurity)
- 6. ติดตั้ง Fail2Ban (ป้องกันการเดารหัสผ่านรัวๆ)
13. Scripting for Admins (Bash & PowerShell)
Admin ที่เก่งต้องไม่ใช่แค่คลิก แต่ต้องเขียน Script เพื่อ Automate งานซ้ำๆ ได้:
| คำสั่ง | Bash (Linux) | PowerShell (Windows) |
|---|---|---|
| แสดงไฟล์ | ls | Get-ChildItem (ls/dir) |
| อ่านไฟล์ | cat file.txt | Get-Content file.txt (cat) |
| ค้นหาคำ | grep 'word' file | Select-String 'word' file |
| Loop | for i in {1..5}; do ... done | for ($i=1; $i -le 5; $i++) { ... } |
| Process | ps aux | Get-Process |
14. Log Management
Log คือกล่องดำของระบบ ต้องเก็บและวิเคราะห์ให้เป็น:
- Syslog: มาตรฐานการส่ง Log ใน Linux (เก็บที่ /var/log/)
- Event Viewer: เครื่องมือดู Log ใน Windows (Application, Security, System)
- Centralized Logging: ส่ง Log จากทุกเครื่องมารวมที่เดียว (เช่น ELK Stack: Elasticsearch, Logstash, Kibana) เพื่อความปลอดภัยและวิเคราะห์ง่าย
- Log Rotation: การตัดแบ่งไฟล์ Log เก่าและลบทิ้งเมื่อถึงเวลา เพื่อไม่ให้ Disk เต็ม
15. Load Balancing Basics
การกระจายงานให้ Server หลายเครื่องช่วยกันทำ:
| Algorithm | การทำงาน | ข้อดี |
|---|---|---|
| Round Robin | วนส่งทีละเครื่องตามลำดับ 1->2->3->1 | ง่าย ไม่ต้องคิดมาก |
| Least Connections | ส่งให้เครื่องที่มีงานค้างน้อยสุด | เหมาะกับงานที่ใช้เวลาต่างกัน |
| IP Hash | คำนวณจาก IP ลูกค้า (IP เดิมไปเครื่องเดิม) | เหมาะกับเว็บที่ต้องจำ Session Login |