Lưu trữ mật khẩu trong một tệp tùy chọn được bảo vệ
Nếu bạn có thể tin tưởng [*] bảo mật của máy tính từ xa, bạn có thể lưu mật khẩu vào tệp tùy chọn được bảo vệ đúng cách, như được đề xuất trong chương Hướng dẫn người dùng cuối về bảo mật mật khẩu của hướng dẫn, mà không cần phải liên lạc qua ssh
hoặc nhập từng loại thời gian.
Cụ thể, bạn có thể thêm một dòng trong phần [client] của tệp .my.cnf
trong thư mục chính của bạn:
[client]
password=your_pass
Tất nhiên, bạn phải giữ cho tệp đó không thể truy cập được cho bất kỳ ai trừ chính bạn, bằng cách đặt chế độ truy cập tệp thành 400 hoặc 600 với, ví dụ:
chmod 600 ~/.my.cnf
Sau đó, bạn có thể sử dụng một cái gì đó như
ssh user@server 'mysql -u user110971 --defaults-file=/home/user110971/mysql-opts'
nơi user110971
là tên người dùng của tài khoản của bạn.
Buộc ssh phân bổ giả tty ( ssh -t
)
Vấn đề này xảy ra mỗi khi bạn gửi lệnh thông qua ssh
và bạn cần chèn đầu vào vì theo mặc định, ssh
sẽ không cấp phát giả.
Bạn có thể buộc phân bổ tty với tùy chọn -t
, (thậm chí nhiều hơn một nếu cần):
-t
Buộc phân bổ giả. Điều này có thể được sử dụng để thực thi các chương trình dựa trên màn hình tùy ý trên một máy từ xa, có thể rất hữu ích, ví dụ như khi triển khai các dịch vụ menu. Nhiều -t
tùy chọn buộc phân bổ tty, ngay cả khi ssh không có tty cục bộ.
Như bạn có thể đọc trong bài này Debian (Jul_11_2008) về sudo
, nó là một vấn đề cũ mà tình yêu để tái diễn:
ssh user@server "sudo ls"
password: password
Và mật khẩu được hiển thị cho bạn
Giải pháp là buộc ssh phân bổ giả, với cờ -t:
ssh -t user@server sudo ls
Ghi chú:
[*] Nếu bạn có thể dựa vào việc để lại mật khẩu trong một tệp mà bạn chỉ có thể truy cập và root trênmáy khách đang làm việc .
Nếu có thể khởi động lại máy tính từ xa thay đổi HĐH hoặc xóa ổ cứng, máy tính không thể được coi là hoàn toàn an toàn ... nhưng trong trường hợp đó, cơ sở dữ liệu sẽ không được bảo mật.