>  기사  >  데이터 베이스  >  MySQL 클라이언트에 대해 TLS 활성화

MySQL 클라이언트에 대해 TLS 활성화

王林
王林앞으로
2023-08-23 14:07:401633검색

MySQL 클라이언트에 대해 TLS 활성화

TLS는 SSL(Secure Socket Layer)이라고도 합니다. 전송 계층 보안을 나타냅니다.

MySQL 클라이언트와 서버 사이에 암호화되지 않은 연결이 있는 경우 네트워크 액세스 권한이 있는 누군가가 모든 트래픽을 관찰하고 클라이언트와 서버 간에 주고받는 데이터를 검사할 수 있습니다. 사용자가 안전한 방식으로 네트워크를 통해 정보를 전송하려는 경우 암호화되지 않은 연결은 허용되지 않습니다.

모든 유형의 데이터를 읽을 수 없게 하려면 암호화를 사용해야 합니다. 암호화 알고리즘에는 알려진 많은 공격에 저항하는 데 도움이 되는 보안 요소가 포함되어 있는 경우가 많습니다. 그 중 일부에는 암호화된 메시지의 순서 변경이나 데이터 두 번 재생이 포함됩니다. MySQL은 TLS 프로토콜을 사용하는 클라이언트와 서버 사이에서 발생하는 암호화된 연결을 지원합니다. 그러나 MySQL은 암호화가 약하기 때문에 암호화된 연결에 SSL 프로토콜을 사용하지 않습니다.

TLS는 암호화 알고리즘을 사용하여 공용 네트워크에서 수신된 데이터가 신뢰할 수 있는 데이터인지 확인합니다. 데이터의 변경, 손실 또는 재생을 감지하는 다양한 방법이 있습니다. TLS는 또한 X.509 표준과 함께 인증 알고리즘을 사용합니다.

연결당 TLS

MySQL 암호화를 활성화하는 단계입니다. 특정 사용자에 대한 암호화는 선택 사항이거나 필수일 수 있습니다. 이를 통해 사용자는 애플리케이션 요구 사항에 따라 암호화되거나 암호화되지 않은 연결을 선택할 수 있습니다.

MySQL 클라이언트에 대해 TLS를 활성화하는 방법을 이해해 보겠습니다.

  • 서버를 시작하는 동안 ssl-cert 및 ssl-key 매개변수를 구성 파일에 지정해야 합니다.
  • 인증서 또는 키는 OpenSSL을 사용하여 서명되고 생성됩니다.
  • 이 키는 MySQL의 mysql_ssl_rsa_setup 도구를 사용하여 생성할 수도 있습니다.
  • mysql_ssl_rsa_setup --datadir=./certs
    매개변수가 올바른 경우 보안 연결이 출력으로 전달되며 시작 시 활성화됩니다.
  • 인증서, 키 및 CA 다시 로드 - 서버 인스턴스에서 ALTER INSTANCE RELOAD TLS 문을 실행합니다. 이렇게 하면 서버 인스턴스를 다시 로드할 필요가 없습니다.
  • 설정된 연결이 성공적으로 실행되면 새로 로드된 인증서, 키 및 CA가 적용됩니다.
  • 암호화된 연결을 사용하도록 MySQL 클라이언트 구성 - 기본적으로 암호화된 연결 설정을 시도합니다. 서버가 암호화된 연결을 지원하지 않으면 암호화되지 않은 연결이 자동으로 반환됩니다.
  • 클라이언트의 연결 동작은 --ssl-mode 매개변수를 사용하여 변경할 수 있습니다:
    --ssl-mode=REQUIRED- Tells that en encrypted connection is needed.

인증 활성화 필요: ssl-ca 매개변수가 지정되지 않으면 클라이언트 또는 서버는 기본적으로 인증하지 않습니다.

  • ssl-cert 및 ssl-key 매개변수는 서버에서 지정되어야 합니다.
  • MySQL 클라이언트에서 --ssl-ca 매개변수를 지정하세요.
  • MySQL 클라이언트에서 --ssl-mode를 VERIFY_CA로 지정합니다.
  • 서버에서 구성한 인증서(ssl-cert)는 클라이언트의 --ssl-ca 매개변수에 지정된 CA에서 서명됩니다.
  • 그렇지 않으면 인증이 실패합니다.

서버에서 MySQL 클라이언트를 인증하려면:

  • 서버에서 ssl-cert, ssl-key 및 ssl-ca 매개변수를 지정합니다.
  • 클라이언트에서 --ssl-cert 및 --ssl-key 매개변수를 지정하세요.
  • 서버에서 구성한 인증서와 클라이언트에서 구성한 인증서는 서버에서 지정한 SSL-CA로 서명됩니다.
  • 서버-클라이언트 인증은 선택 사항입니다. 클라이언트가 TLS 핸드셰이크 중에 증명 인증서를 제시하지 않으면 TLS 연결이 계속 설정됩니다.
  • 현재 연결이 암호화를 사용하는지 확인하세요.

위 내용은 MySQL 클라이언트에 대해 TLS 활성화의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제