Các tệp SSH được lưu trữ trong .ssh thư mục. Đây là một thư mục ẩn nằm trong thư mục chính. Các .ssh thư mục không được tạo theo mặc định; nó được tạo khi bạn bắt đầu kết nối với máy chủ từ xa hoặc sử dụng ssh-keygen lệnh để tạo các khóa xác thực riêng tư và công khai như khi bạn muốn thiết lập xác thực ssh không cần mật khẩu.
Các .ssh thư mục. chứa các tệp SSH thiết yếu như:
- Khóa Công khai và Riêng tư ( id_rsa và id_rsa.pub ).
- Các known_hosts tệp - Chứa các khóa công khai của tất cả các hệ thống từ xa mà bạn đã kết nối.
- Các cấu hình tệp cấu hình máy khách
Nếu cấu hình tệp không tồn tại, bạn có thể dễ dàng tạo một tệp như minh họa.
$ touch ~ / .ssh / config
Tệp cấu hình máy khách .ssh / config
Mỗi lần bạn bắt đầu kết nối SSH, bạn cần chỉ định các chi tiết như địa chỉ IP hoặc tên miền và cổng mà SSH đang lắng nghe. Ví dụ,
$ ssh [email được bảo vệ] -p 22Có thể rất bận rộn khi phải luôn ghi nhớ những chi tiết như vậy. Và đây là nơi ~ / .ssh / config tệp đi kèm. ~ / .ssh / config tệp là tệp cấu hình cho phép bạn định cấu hình chi tiết cấu hình cho mỗi người dùng của máy chủ từ xa. Nó giúp bạn không phải lo lắng khi luôn phải nhớ lại các chi tiết cần thiết cho mỗi máy chủ để kết nối.
Một tệp cấu hình mẫu xuất hiện như được hiển thị.
Máy chủ dàn máy chủHostName 192.168.2.103
Người dùng james
Cổng 22
Một lệnh SSH đơn giản vào máy chủ từ xa sẽ trông như sau:
$ ssh staging-server
Quyền đối với tệp .ssh / config
Theo mặc định, ~ / .ssh / config tệp cấu hình máy khách sở hữu 644 quyền đối với tệp. Bạn có thể xác minh rằng bằng cách sử dụng ls -la lệnh như sau.
$ ls -la ~ / .ssh / config
Điều này ngụ ý rằng chủ sở hữu và nhóm của tệp đều có quyền đọc và ghi (rw) trong khi những người dùng khác chỉ có quyền đọc (r).
-rw-rw-r--GHI CHÚ:
Theo nguyên tắc chung, không bao giờ chỉ định quyền ghi cho người dùng khác. Điều này gây ra rủi ro bảo mật cho tệp của bạn và những người dùng khác không phải là bạn hoặc trong nhóm của bạn có thể sửa đổi nội dung của tệp. Việc chỉ định quyền ghi sẽ dẫn đến kết quả là ‘ Chủ sở hữu hoặc quyền không hợp lệ Lỗi 'như được chỉ ra bên dưới.
Ở đây, tệp cấu hình đã được gán quyền 666. Điều này ngụ ý rằng mọi người đều có thể đọc và ghi tệp.
Tương tự, trường hợp tương tự cũng áp dụng ở đây khi tệp đã được gán 777 quyền. Điều này ngụ ý rằng mọi người đều có thể đọc, ghi và thực thi tệp. Nói một cách đơn giản, bất kỳ ai cũng có tất cả các quyền đối với tệp nguy hiểm tiềm tàng.
Phương pháp hay nhất khuyên bạn nên để các quyền mặc định tại 664 hoặc 600, trong đó chỉ chủ sở hữu mới có quyền đọc và ghi (rw). Bằng cách này, tệp vẫn an toàn không bị sửa đổi bởi những người dùng trái phép.
Ngoài ra, hãy đảm bảo rằng bạn sở hữu tệp. Nếu tệp được thay đổi thành người dùng khác, SSH sẽ không thể phân giải tên máy chủ được cung cấp trong tệp cấu hình.
Trong ví dụ dưới đây, ~ / .ssh / config quyền sở hữu đã được đặt thành bob: bob.
Để giải quyết vấn đề này, tôi đã hoàn nguyên về quyền sở hữu tệp ban đầu bằng cách sử dụng băm nhỏ chỉ huy.
$ sudo chown james: james ~ / .ssh / configVới các quyền đối với tệp đã được hoàn nguyên, bây giờ tôi có thể có quyền truy cập bằng cách gọi lệnh SSH theo sau là tên máy chủ được chỉ định trong tệp cấu hình.
$ ssh staging-server
Và đó là tất cả những gì bạn cần biết về cách đặt quyền trên ~ / .ssh / config tập tin. Đảm bảo bạn không đặt quyền đọc cho những người dùng còn lại và đảm bảo rằng bạn sở hữu tệp.