aedev.net
  • Trang chủ
  • AI
  • Mobile
  • Flutter
  • React Native
  • Backend
  • DevOps
  • Hướng dẫn
No Result
View All Result
SAVED POSTS
aedev.net
  • Trang chủ
  • AI
  • Mobile
  • Flutter
  • React Native
  • Backend
  • DevOps
  • Hướng dẫn
No Result
View All Result
aedev.net
No Result
View All Result
Minh họa kết nối SSH an toàn giữa máy lập trình viên và server

SSH là gì? Hướng dẫn cơ bản cho lập trình viên

admin by admin
01/07/2026
in Hướng dẫn
0
586
SHARES
3.3k
VIEWS
Summarize with ChatGPTShare to Facebook

SSH là một trong những kỹ năng nền tảng mà lập trình viên, backend engineer hay DevOps engineer đều nên nắm chắc. Chỉ với vài lệnh cơ bản, bạn có thể đăng nhập server, deploy ứng dụng, xem log, copy file và xử lý sự cố từ xa một cách an toàn.

SSH là gì?

SSH, viết tắt của Secure Shell, là giao thức dùng để kết nối tới máy chủ từ xa qua một kênh đã được mã hóa. Thay vì gửi username và password qua mạng theo cách dễ bị nghe lén, SSH giúp bảo vệ phiên làm việc giữa máy của bạn và server.

Trong thực tế, SSH thường được dùng để quản trị VPS, chạy lệnh trên Linux server, cấu hình CI/CD, kết nối Git server hoặc tạo đường hầm an toàn tới một dịch vụ nội bộ.

Kết nối SSH bằng password

Cú pháp đơn giản nhất là:

ssh username@server_ip

Ví dụ:

ssh -l deploy 192.168.1.10

Nếu server dùng port khác port mặc định 22, thêm tham số -p:

ssh -l deploy -p 2222 192.168.1.10

Nên dùng SSH key thay vì password

Đăng nhập bằng password tiện nhưng không phải lựa chọn tốt nhất cho server production. Cách phổ biến hơn là dùng SSH key: máy local giữ private key, server lưu public key. Khi đăng nhập, hai bên xác thực với nhau mà không cần gửi password qua mạng.

Tạo SSH key mới:

ssh-keygen -t ed25519 -C "aedev-ssh-key"

Sau đó copy public key lên server:

ssh-copy-id -o User=deploy 192.168.1.10

Nếu máy bạn không có ssh-copy-id, có thể copy nội dung file ~/.ssh/id_ed25519.pub vào file ~/.ssh/authorized_keys trên server.

Tạo alias để kết nối nhanh hơn

Khi phải làm việc với nhiều server, bạn nên cấu hình file ~/.ssh/config để không phải nhớ IP, port và username mỗi lần kết nối.

Host staging-api
    HostName 192.168.1.10
    User deploy
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

Từ đó, bạn chỉ cần chạy:

ssh staging-api

Copy file qua SSH với scp

SSH thường đi kèm các công cụ hữu ích như scp hoặc rsync. Ví dụ copy file build lên server:

scp ./app.tar.gz staging-api:/var/www/releases/

Với thư mục lớn hoặc deploy lặp lại nhiều lần, rsync thường hiệu quả hơn vì chỉ đồng bộ phần thay đổi.

Một vài thiết lập bảo mật nên có

  • Tạo user deploy riêng, hạn chế đăng nhập bằng user root.
  • Dùng SSH key, tránh phụ thuộc vào password.
  • Tắt password login sau khi đã kiểm tra key hoạt động ổn.
  • Chỉ mở port SSH cần thiết trong firewall.
  • Không commit private key vào Git repository.

Một cấu hình server thường thấy trong file /etc/ssh/sshd_config:

PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes

Sau khi chỉnh cấu hình, reload SSH service:

sudo systemctl reload ssh

Lỗi thường gặp

Permission denied publickey thường xảy ra khi public key chưa được thêm vào server, sai user, sai quyền file trong thư mục ~/.ssh, hoặc client đang dùng nhầm private key.

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Connection timed out thường liên quan tới firewall, security group cloud provider, sai IP hoặc port SSH chưa mở.

Kết luận

SSH không chỉ là một lệnh để vào server. Nó là nền tảng cho rất nhiều workflow trong phát triển phần mềm: deploy, debug, automation, CI/CD và vận hành hệ thống. Nếu mới bắt đầu, hãy tập dùng SSH key, cấu hình alias trong ~/.ssh/config và hiểu rõ các lỗi phổ biến trước khi thao tác trên production.

SummarizeShare234
admin

admin

Related Stories

Minh họa dùng SSH key để kết nối GitHub an toàn

Hướng dẫn dùng SSH với GitHub cho lập trình viên

by admin
01/07/2026
0

Cách tạo SSH key, thêm vào GitHub, test kết nối, clone repository bằng SSH và cấu hình nhiều tài khoản GitHub trên cùng một máy.

Thiết kế backend API gọn gàng cho sản phẩm nhỏ

by admin
30/06/2026
0

Một vài nguyên tắc đơn giản giúp API dễ dùng, dễ debug và dễ mở rộng.

CI/CD cơ bản cho team dev nhỏ

by admin
30/06/2026
0

Bắt đầu CI/CD bằng những bước nhỏ: kiểm tra code, chạy test và deploy có kiểm soát.

Next Post
Minh họa dùng SSH key để kết nối GitHub an toàn

Hướng dẫn dùng SSH với GitHub cho lập trình viên

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

AE Dev

AE Dev mang đến các bài viết về lập trình, mobile app, backend, frontend, WordPress và công nghệ, phù hợp cho developer muốn học hỏi và cập nhật kiến thức thực tế.

Recent Posts

  • Hướng dẫn dùng SSH với GitHub cho lập trình viên
  • SSH là gì? Hướng dẫn cơ bản cho lập trình viên
  • CI/CD cơ bản cho team dev nhỏ

Categories

  • AI
  • Backend
  • Đánh giá
  • DevOps
  • Flutter
  • Hướng dẫn
  • Lập trình Mobile
  • React Native

Weekly Newsletter

  • Buy JNews
  • Support Forum
  • Pre-sale Question
  • Contact Us

© 2026 AE Dev - Blog công nghệ, lập trình và chia sẻ kiến thức IT.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
No Result
View All Result
  • Trang chủ
  • AI
  • Mobile
  • React Native
  • Backend
  • DevOps
  • Hướng dẫn
  • Flutter

© 2026 AE Dev - Blog công nghệ, lập trình và chia sẻ kiến thức IT.