SSL 개요
Maria DB는 SSL 지원되지만 기본으로는 disable상태. Have_ssl시스템 변수를 검사하여 확인해 볼 수 있습니다.
SHOW VARIABLES LIKE 'have_ssl'; +---------------+----------+ | Variable_name | Value | +---------------+----------+ | have_ssl | DISABLED | +---------------+----------+
서버가 ssl connection을 지원한다면, 값은 YES
. 그렇지 않고 ssl지원이 compile안됐다면 값은 NO
보통 기본적인 상황은 DISABLED
.
DISABLED
은 서버가 SSL compile이 되어있으나 SSL서비스를 시작 하지 않음을 의미
SSL사용하기 위해서는 SSL options옵션을 사용해 서버를 시작
SSL옵션은 여러 가지 있을 수 있습니다. 인증서의 이름, cipher 목록 등 MariaDB는 10.0.15 이후로 TLSv1.2 프로토콜을 지원합니다.
--오직 MariaDB가 제공하는 TLSv1.2cipher 옵션의 ssl-cipher를 사용해서 서버는 거의 항상 동적으로 SSL library에 링크되어있습니다.
윈도우 바이너리들은 yaSSL을 사용하며, 다른 플랫폼들은 OpenSSL을 사용합니다. 서버가 동적으로 링크되어있기 때문에 기본SSL library취약점의 경우(Heartbleed Bug ,2014년4월), 간단하게 ssl library패치를 설치할 필요가 있습니다. 그리고 MariaDB는 재설치할 필요가 없습니다.
SSL library는 동적으로 링크되어있음을 확인할수있다. 예를들어 :
ldd `which mysqld` | grep ssl libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007fd36ba4a000)
GRANT 문은 SSL을 사용하지 않을 시, 계정으로부터 연결을 끊을 수 있습니다. 또한 요구사항들은 해당계정에서 SSL연결에 대해 설정할 수 있습니다. 예를 들어, 특정 인증기관의 유효한 인증서가 요구될 수 있습니다