Lỗi SSH và SCP


0

Tôi đang thực hiện các bước tương tự ( Thực hiện SSH và SCP mà không cần nhập mật khẩu trên openSSH ). Nhưng nó cứ hỏi mật khẩu nhắc trong khi lệnh scp hoặc 'ssh -l' chạy. Các bước tương tự tôi đã làm vài ngày trở lại, nó đã hoạt động tốt, nhưng bây giờ nó không hoạt động.

Những gì tôi đã làm là:

  1. Tôi có hai máy ĐỊA PHƯƠNG và XÓA.
  2. Trong cả hai máy, tôi đăng nhập putty với người dùng root.
  3. Trong cả hai máy, tôi đã kiểm tra 'ssh -V', tôi tìm thấy cùng một phiên bản sản phẩm trong cả hai.
  4. trong cục bộ, tôi chạy từ thư mục /root/.ssh

ssh-keygen

tôi đã đặt tên tệp chính là appkey. 5. nó đã tạo appkey, appkey.pub trong /root/.ssh 6. Trong điều khiển từ xa, tôi đã sao chép nội dung của appkey.pub cục bộ và dán vào cuối tệp ủy quyền từ xa. 7. Ở xa, tôi chạy

chmod 755 ~ / .ssh chmod 644 ~ / .ssh / ủy quyền

  1. Ở địa phương, tôi đã cố chạy các lệnh scp và 'ssh -l', nhưng nó vẫn hỏi mật khẩu.
  2. Tôi cũng đã thử cách khác, thay vì thêm vào tệp ủy quyền, tôi đã sao chép appkey.put vào thư mục romote /root/.ssh

thông báo lỗi là gì bằng cách gõ ssh -vvv
Kit Ho

~ / .ssh phải chmod 700, không phải 755.
Kent

Câu trả lời:


2

Bạn cũng cần kiểm tra sự cho phép của bạn để đảm bảo rằng không ai có thể viết thư cho nó. Nếu không, người lạ có thể đổi tên .ssh của bạn và tạo .ssh của riêng họ. Tôi có thiết lập ssh ban đầu này mà tôi đã tạo ra vài năm trước và đã giúp nhiều người:

#!/bin/csh -fx

chmod go-w ~
if (! -d ~/.ssh) then
   rm -rf ~/.ssh
   mkdir ~/.ssh
endif
chmod 700 ~/.ssh
cd ~/.ssh
touch authorized_keys
chmod 600 authorized_keys
rm -f id_rsa
# generate id_rsa and id_rsa.pub
ssh-keygen -t rsa -f id_rsa -P ""
cat id_rsa.pub >> authorized_keys
# for remote host:
# cat ~/.ssh/id_rsa.pub | ssh HOST 'cat >> ~/.ssh/authorized_keys'
# it is the same as:
# ssh-copy-id -i id_rsa.pub USER@HOST
# it will add mulptiple entries if called multiple times

Tôi không phải là một chuyên gia trong việc này, chỉ thu thập các phần trong Web. Một cái gì đó có thể lỗi thời nhưng hoạt động trong môi trường của chúng tôi.


Những gì tôi đã làm là:
CN

0

Bạn đã thử chỉ định sử dụng keyfile chính xác nào khi bạn đang phát lệnh ssh từ máy chủ cục bộ của mình như sau chưa?

ssh -i /root/.ssh/appkey -l remote_username remote_servername

mặt khác, ssh giả sử tên khóa riêng của bạn như bạn có thể thấy trong đoạn trích sau từ trang ssh man.

 ...
 -i identity_file
     Selects a file from which the identity (private key) for RSA or
     DSA authentication is read.  The default is ~/.ssh/identity for
     protocol version 1, and ~/.ssh/id_rsa and ~/.ssh/id_dsa for pro-
     tocol version 2.  Identity files may also be specified on a per-
     host basis in the configuration file.  It is possible to have
     multiple -i options (and multiple identities specified in config-
     uration files).
  ...

xin lỗi, đã cố gắng không làm việc .........
CN

0

Jackua, bạn đã giải quyết vấn đề của tôi. nó đã giải quyết bằng cách làm như thế này:

  1. Đã xóa thư mục .ssh (đổi tên thành .ssh_bck) hiện có.
  2. Tôi đã làm các bước tương tự như bạn đề cập.
  3. Tôi đã sử dụng ssh-copy-id -i id_rsa.pub USER@HOST
  4. Để xác nhận với lệnh 'ssh' USER @ HOST '' không yêu cầu mật khẩu.
  5. chạy cat .ssh/authorized_keys Để xác minh nhiều thực thể hoặc một thực thể tồn tại trong tệp.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.