Computer >> Máy Tính >  >> Điện thoại thông minh >> Linux

Cách SSH tới máy chủ từ xa mà không cần nhập mật khẩu mọi lúc

Tổng quan này sẽ giải thích cách chuyển ssh tới máy chủ từ xa và tạo kết nối mà không cần nhập mật khẩu.

Tôi cần SSH từ xa vào các máy chủ Linux của mình khá thường xuyên và thật khó chịu khi phải nhớ quá nhiều mật khẩu và nhập chúng mỗi khi tôi muốn đăng nhập. Gần đây, tôi đã phát hiện ra một cách đơn giản để có thể SSH vào máy chủ của mình mà không cần nhập trong một mật khẩu. OpenSSH cũng cho phép bạn thực hiện các lệnh từ xa và không phải nhập mật khẩu trong khi làm như vậy có nghĩa là tôi có thể chạy một số tác vụ tự động từ xa. Một lần nữa, điều này có thể rất hữu ích. Đối với bất kỳ người hoài nghi nào ngoài kia, phương pháp này khá an toàn. Trên thực tế, theo tôi nó có lẽ an toàn hơn là nhập mật khẩu. Hãy bắt đầu với việc thiết lập kết nối không cần mật khẩu với máy chủ từ xa. Lưu ý rằng quá trình này sẽ chỉ hoạt động trên máy Linux hoặc UNIX. Bản thân quá trình này khá đơn giản.

Bước đầu tiên là tạo khóa công khai để xác thực an toàn cho máy chủ. Khởi chạy một thiết bị đầu cuối shell trên màn hình Linux của bạn và chạy lệnh sau:

# ssh-keygen -t rsa
Tạo cặp khóa rsa công khai / riêng tư.
Nhập tệp để lưu khóa (/home/calvin/.ssh/id_rsa):
Nhập cụm mật khẩu (trống không có cụm mật khẩu ):
Nhập lại cùng một cụm mật khẩu:
Thông tin nhận dạng của bạn đã được lưu trong /home/calvin/.ssh/id_rsa.
Khóa công khai của bạn đã được lưu trong /home/calvin/.ssh/ id_rsa.pub.

Bước này tạo khóa công khai và lưu trữ vào tệp /home/calvin/.ssh/id_rsa.pub . Khi được hỏi bạn muốn ghi khóa vào tệp nào, chỉ cần nhấn Enter để chọn tùy chọn được đề xuất. Tương tự, khi được nhắc nhập cụm mật khẩu, chỉ cần nhấn phím Enter hai lần. Tệp này được lưu trữ trong thư mục chính của bạn, trong .ssh thư mục chứa tất cả các tệp cấu hình của máy chủ SSH. Vì vậy, tiếp theo, bạn cần sao chép tệp này vào máy chủ mà bạn muốn để có thể SSH mà không cần mật khẩu.

# scp ~ / .ssh / id_rsa.pub username@remoteserver.com:/ home / username /

Thay thế cả hai trường hợp của tên người dùng trong lệnh trên với tên người dùng bạn sử dụng để đăng nhập vào máy chủ từ xa của mình và remoteserver.com với tên máy chủ hoặc địa chỉ IP của máy chủ từ xa. Bây giờ hãy SSH vào máy chủ đó và thêm khóa công khai của máy tính để bàn của bạn vào cấu hình SSH của máy chủ:

# ssh username@remoteserver.com
# cat ~ / id_rsa.pub>> ~ / .ssh / allow_keys2

Tiếp theo, bạn cần đặt quyền của tệp ~ / .ssh / allow_keys2 một cách chính xác:

# chmod 644 ~ / .ssh / allow_keys2

Điều này không phải lúc nào cũng bắt buộc, nhưng tôi đã nhiều lần gặp phải sự cố do các vấn đề về quyền gây ra, ngoài ra việc đặt quyền cũng không ảnh hưởng gì. Bây giờ bạn đã hoàn tất. Thoát kết nối SSH với máy chủ từ xa của bạn và vào lại. Bây giờ bạn sẽ không được nhắc nhập mật khẩu.

Giờ đây, bạn có thể làm rất nhiều điều thú vị trên máy chủ từ xa của mình. Ví dụ:chạy lệnh:

# ssh username@remoteserver.com “thời gian hoạt động; df -h ”

Lệnh sẽ cung cấp cho bạn đầu ra mong muốn từ máy chủ từ xa của bạn trực tiếp trên trình bao cục bộ của bạn mà không cần nhắc bạn nhập mật khẩu. Bạn cũng có thể sao chép tệp vào hoặc từ máy chủ từ xa của mình mà không phải lo lắng về việc phải nhập mật khẩu. Điều này có nghĩa là bạn có thể thực hiện những việc như tải bản sao lưu hàng ngày từ máy chủ từ xa đến máy tính cục bộ của bạn hàng ngày bằng cách sử dụng một tập lệnh shell đơn giản. Đây là một công cụ khá mạnh mẽ. Sử dụng nó một cách thận trọng.