Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Linux

คู่มือติดตั้งและทดสอบ SSH บน Linux สำหรับผู้เริ่มต้น

หนึ่งในวิธีสำคัญที่สุดในการใช้ Linux คือผ่าน SSH เครื่องมือ Command Line สำหรับ Remote Access ให้คุณทำทุกอย่าง: ติดตั้งซอฟต์แวร์ ตั้งค่า Web Server SSH ช่วยประหยัดเวลา เพิ่มประสิทธิภาพ และปลดล็อกพลังเต็มของ Linux Distro

แต่ติดตั้ง SSH บนทั้ง Client และ Server ยังไง? เรียนรู้วิธีติดตั้ง ตั้งค่า และควบคุม Linux ระยะไกล

SSH คืออะไร?

SSH ย่อมาจาก Secure Shell ใช้ควบคุม Linux Computer หรือ Server ระยะไกลจากอุปกรณ์อื่น ทำงานได้ทั้ง LAN และ Internet จัดการ Media Server ที่บ้าน หรือ Web Server ต่างทวีปได้

SSH ไม่ให้เข้าถึง Desktop Environment แต่ให้ใช้ Terminal ได้ เหมือนนั่งหน้าเครื่องจริง ๆ ต้องมี Root Access

มี Remote Access อื่นสำหรับ Linux เช่น Ubuntu ใช้ Remmina (VNC-compatible)

ใช้ SSH ต้อง: เครื่อง Remote (Server) ตั้งค่า SSH แล้ว และเครื่อง Local (Client) ติดตั้ง SSH App

ติดตั้งฝั่ง Client

ติดตั้ง SSH บน Client ง่ายมาก บางกรณีไม่ต้องติดตั้งเพิ่ม:

  • Linux: SSH Client มา built-in ใน Terminal
  • macOS: SSH ติดตั้งมาอยู่ใน Terminal
  • Windows: ใช้ PowerShell หรือติดตั้ง PuTTY
คู่มือติดตั้งและทดสอบ SSH บน Linux สำหรับผู้เริ่มต้น
  • iPhone/iPad: ลอง iTerminal ($4.99)
  • Android: ลอง JuiceSSH (Free)
คู่มือติดตั้งและทดสอบ SSH บน Linux สำหรับผู้เริ่มต้น คู่มือติดตั้งและทดสอบ SSH บน Linux สำหรับผู้เริ่มต้น

ถ้า Linux ไม่มี SSH ติดตั้ง:

sudo apt update && sudo apt upgrade
sudo apt install openssh-client

เคยใช้ PuTTY บน Windows แล้วมาหลัก Linux? PuTTY ติดตั้งบน Linux Desktop ได้:

sudo apt install putty

ติดตั้ง Client เสร็จ พร้อมตั้งค่าการเชื่อมต่อไปยังเครื่อง Remote หรือ Server

กฎทั่วไปสำหรับ Client ทุกชนิด: ต้องการ IP Address หรือ Hostname พร้อม Login credentials แอปแต่ละตัว UI ต่างกัน Port อาจต้องใส่เอง แต่การใช้งาน SSH Client คล้ายกันทุกตัว

ติดตั้งและตั้งค่าฝั่ง Server

ก่อนเชื่อมต่อ ติดตั้ง Server-side software ก่อน ต้องมีคนอยู่ที่เครื่อง Server เพื่อติดตั้ง/เปิดใช้งาน SSH คุณอาจอยู่ที่นั่น หรือเพื่อนร่วมงาน/วิศวกรฝั่ง Server ทำให้

หากใช้ Web Hosting Package SSH ควรเปิดอยู่แล้ว ถ้าไม่ได้ ติดต่อ Web Host

ถ้า SSH ยังไม่เปิดบน Remote Computer/Server:

sudo apt install openssh-server

ตรวจสอบว่าทำงาน:

sudo systemctl status ssh

ควรตอบกลับ "active"

คู่มือติดตั้งและทดสอบ SSH บน Linux สำหรับผู้เริ่มต้น

Firewall ufw ของ Ubuntu อาจบล็อก SSH ป้องกันด้วย:

sudo ufw allow ssh

บางกรณีต้อง Enable SSH บน Remote Device (มาตรการความปลอดภัย) ทำได้ด้วย:

sudo systemctl enable ssh

คำสั่งอื่นสำหรับจัดการ Service: stop, start, disable

หา IP Address

เพื่อเชื่อมต่อ SSH ต้องรู้ IP ของเครื่อง Remote มี 2 วิธีง่าย:

  • รันคำสั่ง Terminal
  • เช็คที่ Router

ล็อกอินเครื่อง Remote รัน:

ip address

จะได้ IP Address บันทึกไว้ Linux เวอร์ชันเก่า ifconfig อาจให้ผลดีกว่า

เช็ค Router ดู Connected devices เครื่อง Linux จะแสดงตาม OS หรือชื่อเครื่อง ระบุได้ง่าย

หา Public IP: ล็อกอิน Server เปิด whatsmyip.org

ใช้ IP ที่เหมาะกับการเชื่อมต่อ: เครื่องอยู่ Network เดียวกับ Client ใช้ Local IP เชื่อมข้าม Internet ใช้ Public IP หากเครื่องอยู่ Network ต่างกัน ต้อง Port Forward port 22 ไปที่เครื่องนั้น

เชื่อมต่อ Linux ผ่าน SSH

นอกจาก IP ที่ถูกต้อง ต้องมี Username และ Password เพื่อเข้าถึงเครื่อง Remote

สำหรับ Command Line SSH tools:

ssh username@REMOTE.IP.ADDRESS.HERE

แทนที่ username และ REMOTE.IP.ADDRESS.HERE กด Enter จะถาม Password

Password ถูกต้อง จะได้ Terminal Prompt ทำงานอยู่ — ล็อกอินสำเร็จ

ใช้ Desktop SSH Client เช่น PuTTY?

คู่มือติดตั้งและทดสอบ SSH บน Linux สำหรับผู้เริ่มต้น

ใส่ Host Name หรือ IP address เลือก Connection type SSH กด Open ใส่ Username/Password ในหน้าต่าง Command Line เพื่อเชื่อมต่อและเข้าถึงระยะไกล

เชื่อมต่อไม่ได้? Troubleshooting SSH

สาเหตุที่เป็นไปได้:

  • SSH Software ไม่ได้ติดตั้งทั้งสองเครื่อง
  • Username หรือ Password ผิด
  • IP Address ผิด
  • Firewall บล็อก หรือ Port 22 ไม่ได้ Forward

ตรวจสอบแต่ละจุด ควรเชื่อมต่อได้ หายังไม่ได้ ปัญหาอาจซับซ้อนกว่านี้

ใช้ Linux ระยะไกลด้วย SSH

SSH เป็นเครื่องมือมีประโยชน์สำหรับจัดการ Linux หลายเครื่อง

ทำงานบนเครื่องไหนก็ได้จากเครื่องเดียว รันคำสั่ง Terminal เกือบทุกคำสั่งผ่าน SSH

ตัวอย่างคำสั่งสำคัญ:

  • Update: sudo apt update && sudo apt upgrade
  • เช็คสถานะ: uptime
  • Process ที่ทำงาน: ps
  • Process เรียงตาม CPU: top
คู่มือติดตั้งและทดสอบ SSH บน Linux สำหรับผู้เริ่มต้น

ดูรายการคำสั่ง SSH สำหรับจัดการ Linux Server เพิ่มเติมในบทความของเรา

ตั้งค่า SSH ให้ Linux อันทรงพลังยิ่งขึ้น

ด้วย SSH Linux ยืดหยุ่นและทรงพลังมากขึ้น ควบคุมคอมพิวเตอร์ระยะไกลด้วย Smartphone ได้จริง

หากตั้งค่า SSH ถูกต้อง Client และ Server พร้อมทำงาน Remote Command Line Access ใช้ได้จริง ต้องการมากกว่านี้? ดูวิธีควบคุม Linux Desktop จาก Windows ระยะไกล