Kết nối qua ssh bằng tệp .pem


100

Tôi muốn biết cách kết nối qua ssh bằng tệp .pem với bất kỳ máy chủ nào.

Hiện tại tôi đang thực hiện lệnh sau:

ssh user@mydomain.com

Tôi nên sử dụng tùy chọn nào?

Câu trả lời:


177

Sử dụng -itùy chọn:

ssh -i mykey.pem user@mydomain.com

Như đã lưu ý trong câu trả lời này , tệp này cần được đặt quyền chính xác. Trang ssh man nói:

ssh sẽ đơn giản bỏ qua tệp khóa riêng nếu người khác có thể truy cập được.

Bạn có thể thay đổi các quyền bằng lệnh này:

chmod go= mykey.pem

Đó là, thiết lập quyền cho g roup và o Thers bằng vào danh sách rỗng các điều khoản.


1
Tôi chỉ chỉ ra rằng nếu bạn không root, bạn nên chmod tệp .pem và bật quyền đọc cho người dùng của bạn.
Ionuț Ciuta

1
Điều này chỉ giải quyết phía máy khách của phương trình. Để thiết lập máy chủ, bạn cần sao chép khóa công khai của mình vào tệp ~ / .ssh / allow_keys. Bạn có thể thực hiện việc này từ máy cục bộ của mình bằng cách: "ssh-copy-id -i ~ / mykey.pub user@mydomain.com".
Todd Walton

44
chmod 400 mykey.pem

ssh -i mykey.pem user@mydomain.com

Sẽ kết nối bạn qua ssh bằng tệp .pem với bất kỳ máy chủ nào.


4
"chmod 400" đã giải quyết được vấn đề này: Quyền 0777 cho 'some_file.pem' quá mở. Yêu cầu rằng các tệp khóa riêng tư của bạn KHÔNG được người khác truy cập. Khóa riêng tư này sẽ bị bỏ qua.
pantos27

16

Đối với AWS nếu người dùng ubuntu, hãy sử dụng phần sau để kết nối với máy chủ từ xa.

chmod 400 mykey.pem

ssh -i mykey.pem ubuntu@your-ip

1

Bạn có thể kết nối với phiên bản AWS ec-2 bằng các lệnh sau.

chmod 400 mykey.pem

ssh -i mykey.pem username@your-ip

theo mặc định, tên máy thường giống ubuntu vì thường máy ubuntu được sử dụng làm máy chủ nên lệnh sau sẽ hoạt động trong trường hợp đó.

ssh -i mykey.pem ubuntu@your-ip

1

Để kết nối từ Terminal tới AWS AMI:

chmod 400 mykey.pem

ssh -i mykey.pem ec2-user@mydomain.com
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.