Giả sử Mysql -dbs và quản trị viên có dấu hiệu xấu để quên mật khẩu (hoặc đủ hoang tưởng muốn xác thực quảng cáo hơn, không chỉ mật khẩu). Có thể truy cập vào Mysql -root shell ví dụ theo cách mà Ssh-agent lưu trữ các khóa riêng và sau đó tôi chỉ có thể đăng nhập bằng "mysql -u root"
(mà không cần nhập mật khẩu hoặc kết hợp khóa cá nhân và mật khẩu)?MySQL root-login với khóa riêng SSH?
8
A
Trả lời
7
Bạn chắc chắn có thể sử dụng xác thực khóa SSH thông thường để đăng nhập vào tài khoản shell của bạn và sau đó sử dụng tệp ~/.my.cnf
với mật khẩu của bạn bên trong. Điều này sẽ được sử dụng theo mặc định bởi ứng dụng dòng lệnh mysql
.
nội dung của nó nên là:
[client]
user=the_user_name
password=the_password
Ghi chú rằng bất cứ ai có thể đọc tập tin này sẽ có thể sử dụng những thông tin quan trọng. Bảo vệ nó để chỉ có chủ sở hữu có thể đọc nó (và khóa thiết bị đầu cuối của bạn nếu bạn đi từ bàn phím của bạn).
Nếu bạn muốn xác thực dựa trên khóa trực tiếp, bạn cũng có thể sử dụng SSL client-certificate authentication. Bạn có thể tạo CA nhỏ của riêng mình và tự phát hành với các chứng chỉ ứng dụng khách này. Một số công cụ hỗ trợ điều này nếu bạn yêu cầu truy cập từ xa trực tiếp.
Các vấn đề liên quan
- 1. Tạo một chìa khóa SSH với ssh-keygen không tạo ra các thư mục .ssh
- 2. Khóa SSH trên dreamhost
- 3. Net :: SSH :: Perl sử dụng khóa SSH được chuyển tiếp
- 4. Jenkins & Github không sử dụng Khóa SSH
- 5. Tạo khóa SSH cho Gerrit và Hudson
- 6. Khóa mysql bảng với php
- 7. Tại sao PuTTY sử dụng định dạng khóa riêng của riêng mình khi đăng nhập vào máy chủ SSH?
- 8. Làm thế nào để trích xuất các khóa riêng từ một tác nhân ssh?
- 9. Kết nối với máy chủ MySQL qua SSH trong PHP
- 10. RSACryptoServiceProvider khởi tạo với khóa công khai và khóa riêng
- 11. Mở khóa riêng RSA từ Ruby
- 12. từ khóa riêng tư không có từ khóa riêng tư
- 13. Khóa SSH trong biến môi trường
- 14. Git và GitHub di động: Khóa SSH
- 15. Tiết kiệm khóa ssh không thành công
- 16. Cách tạo cặp khóa SSH bằng Python
- 17. Đặt vị trí khóa ssh mặc định
- 18. Git SSH khóa công khai từ chối
- 19. Sử dụng Github cho Windows để làm việc với Git riêng tư thông qua SSH
- 20. Có thể mã hóa với nhiều khóa riêng (PHP) không?
- 21. Mysql chọn riêng biệt
- 22. Tệp khóa không chính xác với MySQL
- 23. Sử dụng Khóa SSH để xác minh người dùng http
- 24. X.509: Khóa riêng/khóa công khai
- 25. Lập kịch bản MySQL từ BASH qua SSH
- 26. Có thể sử dụng các tệp khóa riêng tư linux ssh không thay đổi trong putty trên Windows không?
- 27. SmartGit sẽ không xác thực với ssh
- 28. KHÔNG khóa trong mysql
- 29. Kết hợp khóa riêng với lớp X509Certificate2 trong .net
- 30. NGit tạo kết nối với một tệp khóa riêng
+1. Tôi đã tự mình viết câu trả lời này. –
..precisely, cảm ơn! Bên cạnh đó, tôi có một số ý tưởng như thiết lập những thứ ssh-fs với gpg, phải suy nghĩ cách bảo vệ tập tin cẩn thận (tôi đang sử dụng hệ thống chia sẻ) - có thể sử dụng nhiều cách xác thực để không thực sự quan trọng nếu mất mật khẩu , ý tưởng? Có lẽ đã quá tải, điều tra. – hhh
Đó không nhất thiết phải làm việc với ssh-fs. Tệp này sẽ được máy khách 'mysql' sử dụng nếu chạy trên máy thực tế (và chỉ ở dạng không được mã hóa). (Bạn có thể tất nhiên gắn kết thư mục chủ từ xa với ssh-fs và sau đó chỉ định tệp cấu hình này với máy khách 'mysql' cục bộ của bạn, nhưng điều này có vẻ phức tạp). Giữ mật khẩu gốc mysql trong tệp này trong tài khoản gốc nếu bạn cần. Để truy cập từ xa, client-certs có thể là một lựa chọn tốt hơn (mặc dù nó có liên quan nhiều hơn về mặt quản lý). – Bruno