Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tạo một đường hầm SSH để truy cập từ xa MySQL

Hướng dẫn này sẽ chỉ cho bạn cách tạo kết nối an toàn với máy chủ MySQL hoặc MariaDB từ xa từ máy tính cục bộ của bạn bằng cách sử dụng đường hầm SSH . Điều này rất hữu ích nếu bạn muốn sử dụng các công cụ quản trị trên máy tính cục bộ để thực hiện công việc trên máy chủ của mình.

Đường hầm SSH là một đường hầm được mã hóa được thực hiện thông qua kết nối giao thức SSH. Bạn có thể sử dụng đường hầm SSH để giao tiếp từ xa với cơ sở dữ liệu MySQL. Sau khi làm theo các hướng dẫn này, bạn sẽ có thể kết nối với localhost trên máy trạm của bạn bằng công cụ quản lý MySQL yêu thích của bạn. Kết nối sẽ được chuyển tiếp an toàn tới Linode của bạn qua Internet.

Lưu ý MariaDB là một nhánh của MySQL và được coi là sự thay thế adrop-in. Mặc dù hướng dẫn này đề cập đến MySQL, nhưng nó cũng áp dụng cho MariaDB.

Điều kiện tiên quyết

  • MySQL đã được cài đặt.
  • MySQL được định cấu hình để lắng nghe trên localhost (127.0.0.1). Tính năng này được bật theo mặc định.

Cách truy cập MySQL Từ xa bằng cách Tạo Đường hầm SSH với PuTTY

Phần này sẽ hướng dẫn bạn cách tạo đường hầm SSH tới MySQL trên Windows bằng công cụ PuTTY.

Thiết lập đường hầm

Trước tiên, bạn cần thiết lập một kết nối cơ bản với Linode của mình:

  1. Tải xuốngPuTTY.

  2. Lưu PuTTY vào màn hình của bạn.

  3. Nhấp đúp vào tệp PuTTY để bắt đầu - không cần cài đặt. Bạn sẽ thấy cửa sổ sau:

  4. Nhập tên máy chủ hoặc địa chỉ IP của Linode của bạn trong Tên máy chủ (hoặc địa chỉ IP) trường.

  5. Trong trình đơn bên trái, đi tới Kết nối -> SSH -> Đường hầm .

  6. Trong Cổng nguồn trường, nhập 3306 .

  7. Trong Điểm đến trường, nhập 127.0.0.1:3306 . Xem cấu hình cuối cùng bên dưới:

  8. Nhấp vào Mở để bắt đầu phiên SSH.

  9. Nếu trước đây bạn chưa đăng nhập vào hệ thống này bằng PuTTY, bạn sẽ nhận được một cảnh báo tương tự như sau. Xác minh rằng máy chủ này là máy chủ mà bạn muốn kết nối, sau đó nhấp vào :

    Lưu ý

    Cảnh báo này xuất hiện vì PuTTY muốn bạn xác minh rằng máy chủ mà bạn đang đăng nhập có đúng là máy chủ mà nó cho biết hay không. Khó có thể xảy ra, nhưng có thể, ai đó có thể đang nghe trộm kết nối của bạn và giả danh Linode của bạn. Để xác minh máy chủ, hãy so sánh vân tay chính được hiển thị trong cảnh báo PuTTY - chuỗi số và chữ cái bắt đầu bằng ssh-rsa trong hình trên - bằng vân tay khóa công khai của Linode của bạn. Để nhận vân tay của Linode, hãy đăng nhập vào Linode của bạn qua bảng điều khiển Lish (xem Bảng điều khiển trong Trình quản lý Linode) và thực hiện lệnh sau:

    ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub
    

    Các dấu vân tay chính phải khớp. Sau khi bạn nhấp vào , bạn sẽ không nhận được thêm cảnh báo trừ khi khóa được trình bày cho PuTTY thay đổi vì lý do nào đó; thông thường, điều này sẽ chỉ xảy ra nếu bạn cài đặt lại hệ điều hành của máy chủ từ xa. Nếu bạn nhận được cảnh báo này một lần nữa cho cùng một Linode sau khi khóa đã được lưu vào bộ nhớ đệm, bạn không nên tin tưởng vào kết nối và điều tra thêm vấn đề.

  10. Hướng ứng dụng MySQL cục bộ của bạn đến localhost:3306 . Kết nối của bạn với máy chủ MySQL từ xa sẽ được mã hóa thông qua SSH, cho phép bạn truy cập cơ sở dữ liệu của mình mà không cần chạy MySQL trên IP công cộng.

Tạo Đường hầm SSH trên Mac OS X hoặc Linux

Phần này sẽ hướng dẫn bạn cách tạo đường hầm SSH tới MySQL trên Mac OS X hoặc Linux.

  1. Cài đặt máy khách MySQL. Cài đặt máy chủ MySQL được đóng gói sẵn với cài đặt của máy khách. Để chỉ cài đặt ứng dụng khách:

    MacOS

    brew install --cask mysql-shell
    

    Ubuntu / Debian

    sudo apt install mysql-client
    
  2. Mở dấu nhắc lệnh và chạy lệnh sau để mở đường hầm SSH.

    ssh [email protected] -L 3306:127.0.0.1:3306 -N
    

    Thay thế < [email protected] > bằng tên người dùng SSH và tên máy chủ hoặc địa chỉ IP của máy chủ. Chuỗi số dài trong lệnh liệt kê IP cục bộ, cổng cục bộ, IP từ xa và cổng từ xa, được phân tách bằng dấu hai chấm (: ).

    -L - liên kết một cổng cục bộ với bài đăng trên máy chủ từ xa. -N - nghĩa là các cổng chuyển tiếp.

    Lưu ý

    Nếu bạn đang chạy một máy chủ MySQL cục bộ trên máy trạm của mình, hãy sử dụng một cổng cục bộ khác (3307 là một lựa chọn phổ biến). Lệnh mới của bạn sẽ giống như sau:

    ssh [email protected] -L 3307:127.0.0.1:3306 -N
    
  3. Mở một cửa sổ đầu cuối mới. Hướng ứng dụng MySQL cục bộ của bạn đến 127.0.0.1:3306 với tên người dùng và mật khẩu máy chủ MySQL.

    MacOS

    mysqlsh --host=127.0.0.1 --port=3306 -u user -p
    

    Ubuntu / Debian

    mysql --host=127.0.0.1 --port=3306 -u user -p
    

    Kết nối của bạn với máy chủ MySQL từ xa sẽ được mã hóa thông qua SSH, cho phép bạn truy cập cơ sở dữ liệu của mình mà không cần chạy MySQL trên IP công cộng.

  4. Khi bạn đã sẵn sàng đóng kết nối, hãy phát hành CTRL-C lệnh hoặc đóng cửa sổ nhắc lệnh. Thao tác này sẽ đóng đường hầm SSH.

Kết nối SSH ổn định

Nếu bạn cần một đường hầm SSH liên tục, hãy xem xét sử dụngautossh. autossh khởi động và giám sát kết nối SSH và khởi động lại nó nếu cần.

Thông tin khác

Bạn có thể tham khảo các nguồn sau đây để biết thêm thông tin về chủ đề này. Mặc dù những điều này được cung cấp với hy vọng rằng chúng sẽ hữu ích, xin lưu ý rằng chúng tôi không thể đảm bảo tính chính xác hoặc kịp thời của các tài liệu được lưu trữ bên ngoài.

  • Sử dụng PuTTY
  • Tài liệu MySQL
  • Tài liệu MariaDB
  • autossh

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sao chép / nhân bản cơ sở dữ liệu mà không cần sử dụng mysqldump

  2. Lệnh thực thi mệnh đề / truy vấn MySQL

  3. lỗi thời gian chạy:java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

  4. Xóa nhiều hàng bằng cách chọn hộp kiểm sử dụng PHP

  5. Kiểm tra sức khỏe quan trọng cho máy chủ bản sao nguồn MySQL của bạn