Cách sử dụng lệnh ssh-copy-id

How Use Ssh Copy Id Command



Lệnh ssh-copy-id là một công cụ đơn giản cho phép bạn cài đặt khóa SSH trên các khóa được ủy quyền của máy chủ từ xa. Lệnh này tạo điều kiện cho đăng nhập bằng khóa SSH, giúp loại bỏ nhu cầu về mật khẩu cho mỗi lần đăng nhập, do đó đảm bảo quá trình đăng nhập tự động, không cần mật khẩu. Lệnh ssh-copy-id là một phần của OpenSSH, một công cụ để thực hiện quản trị hệ thống từ xa bằng các kết nối SSH được mã hóa.

Bài viết này hướng dẫn bạn cách sử dụng công cụ ssh-copy-id để làm cho thông tin đăng nhập SSH của bạn liền mạch và an toàn hơn.







Cách cài đặt lệnh ssh-copy-id

Công cụ ssh-copy-id, một phần của gói OpenSSH, có sẵn trong tất cả các kho lưu trữ phân phối chính của Linux và bạn có thể sử dụng trình quản lý gói của mình để cài đặt lệnh này.



Để cài đặt công cụ ssh-copy-id trên Debian, hãy sử dụng lệnh sau:



sudo apt-get cập nhật && sudo apt-get cài đặtopensh-client

Khi bạn đã cài đặt OpenSSH, bạn có thể sử dụng công cụ ssh-copy-id trong dòng lệnh.





$ ssh-copy-id

Sử dụng:/usr//ssh-copy-id[-NS|-?|-NS|-n] [-tôi[ID_tệp]] [-p cổng] [[-hoặc<ssh -hoặctùy chọn>]...] [người sử dụng@]tên máy chủ-f: chế độ buộc-sao chép chìa khóa mà không cố gắng kiểm tranếu nhưchúng đã được cài đặt -n: chạy khô-không có khóa nào thực sự được sao chép-NS|-?: in cái nàyCứu giúp

Sử dụng ssh-copy-id rất đơn giản vì tập lệnh giúp quá trình xác thực khóa công khai dễ dàng và hiệu quả hơn. Trước khi đi sâu vào cách sử dụng công cụ, trước tiên chúng ta sẽ thảo luận về cách hoạt động của xác thực khóa công khai SSH.

GHI CHÚ : Nếu bạn đã biết cách xác thực khóa công khai SSH hoạt động, vui lòng bỏ qua phần này và đi sâu hơn vào cách sử dụng lệnh ssh-copy-id ngay lập tức.



Xác thực khóa công khai SSH

Xác thực khóa SSH công khai là một phương pháp xác thực SSH cho phép người dùng sử dụng các khóa được tạo bằng mật mã để đăng nhập vào các máy chủ từ xa.

Khóa SSH an toàn hơn mật khẩu thô và cung cấp cách đăng nhập vào SSH hiệu quả hơn nhiều. Khóa SSH được tự động hóa và sau khi được ủy quyền, không yêu cầu mật khẩu mỗi lần đăng nhập.

Để sử dụng khóa SSH, chúng tôi sẽ bắt đầu bằng cách tạo khóa.

Cách tạo khóa SSH

Để tạo khóa SSH, hãy sử dụng công cụ ssh-keygen đi kèm như một phần của OpenSSH. Công cụ này tạo các tệp khóa công khai và riêng tư được lưu trữ trong thư mục ~ / .ssh, như được hiển thị bên dưới.

$ssh-keygen

Tạo công khai/cặp khóa rsa riêng.
Vàotập tin trong cái màđể lưu chìa khóa(/nguồn gốc/.ssh/id_rsa):
Thư mục đã tạo'/root/.ssh'.
Nhập cụm mật khẩu(trốngkhông có mật khẩu):
Nhập lại cùng một cụm mật khẩu:
Giấy tờ tùy thân của bạn đã được lưutrong /nguồn gốc/.ssh/id_rsa.
Khóa công khai của bạn đã được lưutrong /nguồn gốc/.ssh/id_rsa.pub.
Dấu vân tay quan trọng là:
SHA256: ddVOQhS6CGt8Vnertz9aiSnvOUKmSpPrZ + gI24DptsA gốc@người dùng Chìa khóahình ảnh ngẫu nhiên của là:
+ --- [RSA 2048] ---- +
| o = o |
| o. o |
| . . +. +. |
| . + + o .o |
| S +. . |
| o ..o o +. |
| .Và dấu +. +. + + |
| o. = o.o + .o. + .. |
| .o .. oo = + o = o. + |
+ ---- [SHA256] ----- +

Cách sao chép khóa SSH bằng SSH-copy-id

Khi chúng tôi đã tạo khóa SSH, chúng tôi có thể thêm khóa SSH vào tệp ủy quyền của máy từ xa hoặc sử dụng lệnh ssh-copy-id theo cách thủ công.

Chúng tôi sẽ sử dụng lệnh ssh-copy-id để làm cho quá trình này dễ dàng hơn. Chỉ cần gọi lệnh ssh-copy-id và chuyển đường dẫn đến khóa công khai, như sau:

$ssh-copy-id-tôi~/.ssh/người dùng id_rsa.pub@77.134.54.101-P 6576

Sau khi nhập lệnh trên, bạn sẽ nhận được kết quả sau:

/usr//ssh-copy-id: THÔNG TIN: Nguồn khóa(NS)được cài đặt:'/root/.ssh/id_rsa.pub'
/usr//ssh-copy-id: INFO: cố gắng đăng nhậptrongvới chìa khóa mới(NS), để lọc ra mọi thứ đã được cài đặt
/usr//ssh-copy-id: THÔNG TIN:1Chìa khóa(NS)vẫn được cài đặt- nếu nhưbạn được nhắc bây giờ nó phảiTải vềngười dùng chìa khóa mới@Mật khẩu của 77.134.54.101:
Số lượng chìa khóa(NS)thêm:1Bây giờ hãy thử đăng nhập vào máy bằng:'ssh -p' 6576 '' [email được bảo vệ] ''và kiểm trachế tạochắc chắn rằng chỉ có chìa khóa(NS)bạn muốn đã được thêm vào.

GHI CHÚ : Không bao giờ sao chép khóa cá nhân của bạn sang một máy khác.

Khi lệnh đã được thực thi thành công, hãy thử đăng nhập vào máy chủ bằng khóa mà bạn đã tải lên, như sau:

$ssh -P 6576liên kết@77.134.54.101

Lệnh trên sẽ yêu cầu bạn nhập cụm mật khẩu cho khóa công khai của mình, như được hiển thị trong đầu ra bên dưới:

Nhập cụm mật khẩuChìa khóa'/root/.ssh/id_rsa':
Lần đăng nhập cuối cùng: Thứ Sáu tháng Ba5 14: 06:16 Năm 2021từ 173.208.98.186

Lệnh trên sẽ cho phép bạn đăng nhập vào máy chủ từ xa mà không cần hỏi mật khẩu của người dùng. Hệ thống có thể nhắc bạn nhập cụm mật khẩu của khóa mà bạn đã thiết lập trước đó.

Tùy chọn lệnh SSH-copy-id

Bạn có thể sửa đổi cách hoạt động của lệnh ssh-copy-id bằng cách sử dụng các đối số được cung cấp. Để xem trang trợ giúp, hãy sử dụng lệnh ssh-copy-id -h hoặc sử dụng lệnh ssh-copy-id không có đối số.

  1. -i đối số : Đối số này chỉ định tệp danh tính sẽ được sử dụng, tức là được sao chép vào máy chủ từ xa được chỉ định. Nếu bạn không xác định được đối số -i, tất cả các tệp trong thư mục ~ / .ssh có mẫu phù hợp * .pub sẽ được thêm vào.
  2. -f cờ : Cờ này bật chế độ cưỡng bức, không kiểm tra xem khóa có được định cấu hình trước trong các khóa_cấp_cấp trên máy chủ hay không. Cờ -f thêm một khóa, thường dẫn đến nhiều bản sao của cùng một khóa được cài đặt trên máy chủ.
  3. -p cờ : Cờ này chỉ định cổng SSH để kết nối với máy chủ từ xa. Cờ này được sử dụng khi cổng SSH mặc định không được sử dụng.
  4. -n cờ : Cờ này thực hiện chạy khô để in các khóa được thiết kế để cài đặt mà không cần cài đặt chúng trên máy chủ từ xa.

Phần kết luận

Hướng dẫn này đã chỉ cho bạn cách sử dụng lệnh ssh-copy-id để cài đặt khóa SSH trên máy chủ từ xa. Mặc dù đây có thể là một phương pháp đơn giản và hiệu quả để cài đặt khóa, nhưng các khóa được định cấu hình sai có thể dẫn đến các vấn đề bảo mật hoặc bị khóa khỏi hệ thống. Do đó, hãy cực kỳ cẩn thận khi bạn thử nghiệm với quá trình này.