SSH (Secure Shell) là một giao thức mạng dùng để thiết lập kết nối giữa Client và Server/VPS, giúp các quản trị viên truy cập máy chủ từ xa một cách an toàn.
Với các bạn mới làm quen với linux thì đấy là sự thay đổi lớn. Trước mình cũng có giai đoạn cài Fedora Desktop nhập user pass xong đơ luôn chẳng biết làm gì nữa, hài nhất khi tìm cách cài office 97 trên fedora ^^.
Hiện nay đa phần người sử dụng VPS đều sử dụng các images có sẵn của nhà cung cấp VPS để cài hệ điều hành, nên SSH Server đã được cài cho bạn rồi. Tuy nhiên nếu bạn dùng một images khác như dùng chức năng cài VPS từ file ISO trên Vultr thì bạn phải tự cài OpenSSH cho mình.
Bạn tham khảo danh sách nhà cung cấp VPS tốt nhất hiện nay:
- Linode: Các bước đăng ký VPS nước ngoài
- DigitalOcean: Hướng dẫn chọn mua VPS Linux
- Vultr: Cách tạo tài khoản mua VPS
Nếu là server mới chưa cài cắm gì bạn làm theo hướng dẫn sau.
1. Cài SSH Server và cấu hình cơ bản
Bài này mình hướng dẫn trên Ubuntu và CentOS còn các distro khác các bạn tự tìm hiểu thêm.
Ubuntu Server 8/10/12/14/16
[root@fw:~]# apt-get install openssh-server openssh-client
CentOS Server 5/6/7
[root@fw:~]# yum -y install openssh-server openssh-clients
Rất đơn giản phải không ?
Tiếp theo chúng ta cần cấu hình SSH Server, bạn mở file config ra thay đổi một chút
vi /etc/ssh/sshd_config
Thêm vào mấy dòng như bên dưới, nếu có # thì bỏ đi nhé.
#Cổng mặc định của SSH Server Port 22 #Cho phép user root đăng nhập qua kết nối SSH PermitRootLogin no #Cho phép đăng nhập bằng password PasswordAuthentication yes
Cấu hình SSH Server cơ bản là xong rồi.
Bước tiếp theo bạn kiểm tra tường lửa đã cho phép từ ngoài truy cập vào hay chưa. Nếu chưa thì chạy cho mình thêm lệnh bên dưới.
Ubuntu
ufw allow 22/tcp
CentOS
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
Tiếp theo khởi động lại dịch vụ SSH Server lưu thay đổi.
systemctl restart sshd
Ngoài ra trong quá trình cài đặt và sử dung có thể gặp những lỗi phát sinh bạn tham khảo thêm bài hướng dẫn những lỗi cơ bản khi cài máy chủ trên thuysys để biết cách fix lỗi .
2. Quản trị Server từ xa
SSH Server đã cài xong, bây giờ bạn cần phần mềm SSH Client tạo kết nối đến SSH Server để bắt đầu làm việc.
Mình đã dùng một số ứng dụng SSH Client như SecureCRT, Bitvise, Mobaxterm nhưng mình vẫn kết nhất PuTTY. Mình đánh giá PuTTY là SSH Client tốt nhất với giao diện rất đơn giản và quan trọng nó chỉ có một file chạy duy nhất, thuộc dạng “nhỏ người nhưng có võ”.
2.1. Sử dụng SSH Clients trên Windows
Link Download PuTTY Client.
Các thông số cần chú ý khi sử dụng Putty.
- Host Name: nhập vào domain hoặc IP Public của Server/VPS, nếu dùng trong nội bộ bạn dùng IP Private (IP LAN)
- Port: 22 để giá trị mặc định.
- Saved Sessions: đặt một tên nào đó cho dễ nhớ, bạn có thể save lại để lần sau dùng đỡ phải nhập thông số.
Cửa sổ Putty Security Alert hiện ra chọn Yes.
Nếu hiện ra màn hình đen xì là bạn đã đăng nhập thành công rồi.
2.2 Sử dụng SSH Client trên Linux.
Ở trên là chúng ta thực hiện truy cập từ Window -> Linux vậy nếu truy cập từ Linux -> Linux thì sao ? Trên Linux Server đâu có chạy được Putty với giao diện đồ họa như ở trên.
Rất may trên Linux mặc định đã được cài sẵn OpenSSH Client rồi.
Giả xử mình đang đứng trên VPS có hostname là srv1 giờ mình muốn ssh đến con VPS có hostname là capital IP là 45.32.248.119 thì mình sẽ làm như sau.
Trên srv1 gõ lệnh
ssh root@45.32.248.119
Phía SSH Server sẽ yêu cầu cung cấp mật khẩu đăng nhập cho user root.
Bạn nhập mật khẩu như bình thường, nhưng chú ý mật khẩu không hiện ra màn hình cho bạn nhìn thấy được bạn cứ nhập vào rồi ấn enter nhé.
Kết quả đăng nhập thành công, bạn sẽ thấy hostname chuyển từ srv1 sang capital.
3. Kết bài
Trên đây là kiến thức cơ bản về cài đặt và dùng SSH giúp truy cập máy chủ từ xa một cách an toàn. Tuy nhiên đây chỉ là cách cấu hình nhanh để dùng được ngay. Những bài tới mình sẽ hướng dẫn các bạn cách bảo mật SSH và các ứng dụng trong thực tế.
Chúc các bạn ngon miệng, hehe viết xong đói quá không biết đã đến giờ ăn chưa ^^