กลับไปหน้าสูตร
#ssh#scp#rsync#cheatsheet
SSH + SCP + rsync Cheatsheet
รวมคำสั่ง SSH, SCP, rsync แบบจัดเต็มสำหรับ remote dev, deploy, file transfer, port forwarding และ hardening
11 มีนาคม 2569อ่านประมาณ 1 นาที
สารบัญสูตร
SSH Basics
| Command | ใช้ทำอะไร |
|---|---|
ssh user@host | เข้าเครื่องปลายทาง |
ssh -p 2222 user@host | ระบุพอร์ต |
ssh -i ~/.ssh/id_ed25519 user@host | ใช้ key เฉพาะ |
ssh -v user@host | debug connection |
SSH Config (~/.ssh/config)
Host prod
HostName 203.0.113.10
User deploy
Port 22
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 30
ServerAliveCountMax 3
SCP
| Command | ใช้ทำอะไร |
|---|---|
scp file.txt user@host:/tmp/ | ส่งไฟล์ขึ้น server |
scp user@host:/tmp/file.txt . | ดึงไฟล์ลงเครื่อง |
scp -r dist/ user@host:/var/www/app/ | ส่งโฟลเดอร์ |
scp -P 2222 file user@host:/tmp/ | SCP ผ่าน port custom |
rsync (Recommended for Deploy)
| Command | ใช้ทำอะไร |
|---|---|
rsync -avz src/ user@host:/dst/ | sync โฟลเดอร์ |
rsync -avz --delete src/ user@host:/dst/ | sync พร้อมลบไฟล์ที่หาย |
rsync -avz -e "ssh -p 2222" src/ user@host:/dst/ | ระบุ ssh port |
rsync -avz --exclude node_modules ./ user@host:/app/ | exclude paths |
Port Forwarding
| Command | ใช้ทำอะไร |
|---|---|
ssh -L 5433:127.0.0.1:5432 user@host | local forward DB |
ssh -R 8080:127.0.0.1:3000 user@host | reverse forward |
ssh -D 1080 user@host | SOCKS proxy |
Key Management
| Command | ใช้ทำอะไร |
|---|---|
ssh-keygen -t ed25519 -C "me@host" | สร้าง key |
ssh-add ~/.ssh/id_ed25519 | เพิ่ม key เข้า agent |
ssh-copy-id user@host | ติดตั้ง public key บน server |
Hardening Tips
| เรื่อง | แนวทาง |
|---|---|
| disable password auth | ใช้ key only |
| limit user login | allow เฉพาะ user deploy |
| fail2ban | กัน brute force |
| key rotation | หมุน keys ตามรอบ |