Thứ Ba, 10 tháng 5, 2011

Login SSH Bằng Chứng Thực Khóa

Trong thực tế quản tri hệ thống Linux, đặc biệt là khi số lượng Server nhiều, các quản trị mạng thường dùng cách chứng thực bằng khóa để giảm việc phải nhập thông tin đăng nhập và thực thi các lệnh từ xa thông qua SSH. Thực hiện:

 1.Cấu hình SSH Server (trên Server cần quản trị)

+ Mở 2 dòng sau trong file
/etc/ssh/sshd_config

AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no


+ Khởi động lại dịch vụ sshd:
service sshd restart

2.Cấu hình SSH client (trên máy trạm)

Trên mỗi máy trạm dùng để đăng nhập sẽ cần phát sinh một cặp khóa. Khóa private giữ lại, khóa public được upload lên Server, thêm vào file /home/<user>/.ssh/authorized_keys
Trong đó: <user> là user đã được tạo từ trước trên Server, đây là user mà client dùng để đăng nhập vào server.
Trong ví dụ sau Server cần kết nối để quản trị là 10.16.8.8, username kết nối là connect

2.1 Máy trạm là Linux


+ Phát sinh cặp khóa:


[nagios@nscentos5-2 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/nagios/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/nagios/.ssh/id_rsa.
Your public key has been saved in /home/nagios/.ssh/id_rsa.pub.
The key fingerprint is:
87:a8:87:8c54:c0:b79e:ac:b662:a4:a5 nagios@nscentos5-2
[nagios@nscentos5-2 ~]$


+ Upload public khóa lên Server:


[nagios@nscentos5 ~]$ cat .ssh/id_rsa.pub | ssh connect@10.16.8.8 'cat >> .ssh/authorized_keys'


+ Kết nối tới Server qua SSH:


ssh connect@10.16.8.8


2.2 Máy trạm là Windows


+ Phát sinh cặp khóa bằng Puttygen:

+ Lưu Private key và Public key:
+ Copy nội dung Public key thêm vào cuối file authorized_keys của user connect . Cần chỉnh sửa một chút trước khi copy:
. Xóa 2 dòng đầu và dòng cuối
. Chỉnh tất cả nội dung khóa nằm trên 1 dòng duy nhất
. Thêm vào đầu dòng chuỗi ssh-rsa + khoảng trắng
+ Kết nối Server bằng Putty, trong phần SSH/Auth chỉ ra Private key tương ứng với Public key đã lưu trên Server

* Có thể phát sinh cặp khóa ngay trên server cần quản trị, chuyển public key thành authorized_keys, còn private key chuyển đến các máy trạm cần kết nối server.

Không có nhận xét nào: