Bài viết này sẽ mô tả các bước thiết lập đăng nhập không cần mật khẩu khi đăng nhập Linux server từ xa. Sử dụng kỹ thuật này cho phép 2 máy Linux có thể giao tiếp với nhau dễ dàng mà vẫn an toàn để đồng bộ hoặc truyền file.
Nếu bạn đang làm việc với các hệ thống Linux tương tác với nhau thì đăng nhập SSH không cần mật khẩu là cách tốt nhất để thực hiện các công việc tự động như backup , đồng bộ hay truyền file.
Dưới đây là các bước thực hiện thiết lập đăng nhập không cần mật khẩu chi tiết từ máy có địa chỉ IP là 192.168.1.1 (test) với user là root tới máy địa chỉ IP là 192.168.1.2 với user là backupuser
Bước 1: tạo chuỗi bảo mật SSH-Kegen trên máy 192.168.1.1
Đăng nhập vào server 192.168.1.1 với user Root và tạo cặp khóa với lệnh sau.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
[root@test ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa already exists. Overwrite (y/n)? y Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: 73:c2:45:5e:4e:6f:0c:29:69:be:11:a2:58:b9:8f:89 root@test The key's randomart image is: +--[ RSA 2048]----+ | . ..+. | | o .o=+.+ | | o o +oo. + | | . o. .o . | | . +S .o | | E o .+. | | | | | | | +-----------------+ |
Bước 2: tạo thư mục .ssh trên máy 192.168.1.2
Kết nối bằng SSH từ server 192.168.1.1 tới server 192.168.1.2 và tạo thư mục .ssh dưới tài khoản backupuser, sử dụng lệnh sau.
1 2 |
[root@test ~]# ssh backupuser@192.168.1.2 mkdir -p .ssh backupuser@192.168.1.2's password: [Enter Your Password Here] |
Bước 3: Đưa Public Keys lên máy 192.168.1.2
Tương tự bước 2, kết nối SSH từ server 192.168.1.1 để upload khóa vừa tạo (id_rsa.pub) tới server 192.168.1.2 trong thư mục .ssh của backupuser với tên file là authorized_keys.
1 2 |
[root@test ~]# cat .ssh/id_rsa.pub | ssh backupuser@192.168.1.2 'cat >> .ssh/authorized_keys' backupuser@192.168.1.2's password: [Enter Your Password Here] |
Bước 4: Thiết lập quyền trên máy 192.168.1.2
Do sự khác biệt giữa các phiên bản SSH giữa các máy nên cần phải thiết lập quyền cho thư mục .ssh và file authorized_keys đã tạo ở trên.
1 2 |
[root@test ~]# ssh backupuser@192.168.1.2 "chmod 700 .ssh; chmod 640 .ssh/authorized_keys" backupuser@192.168.1.2's password: [Enter Your Password Here] |
Bước 5: Đăng nhập từ 192.168.1.1 tới 192.168.1.2 mà không cần mật khẩu
Kết thúc 4 bước ở trên là bạn có thể đăng nhập vào 192.168.1.2 từ 192.168.1.1 mà không cần nhập mật khẩu.
1 |
[root@test ~]# ssh backupuser@192.168.1.2 |