OpenVPN 서버에서 MySQL 서버에 연결

OpenVPN 서버에서 MySQL 서버에 연결

서버에 OpenVPN 서버를 설치했습니다. OpenVPN 서버에 연결하기 위해 클라이언트를 사용하는 대신 mysql 클라이언트를 사용하여 OpenVPN 서버에서 MySQL 서버로 연결하려고 합니다. 문제 없이 서버 간에 핑을 주고받을 수 있습니다. 그러나 OpenVPN 서버에서 MySQL 클라이언트를 사용하여 MySQL 서버에 연결하려고 하면 다음과 같은 메시지가 나타납니다.

ERROR 2003 (HY000): Can't connect to MySQL server on '10.8.0.6' (111)

10.8.0.6은 10.8.0.1에 있는 OpenVPN 서버에 연결됩니다.

IPTable일 수도 있다고 생각했지만 클라이언트와 서버 모두에 명시적인 INPUT 및 OUTPUT을 추가해도 아무 것도 변경되지 않았습니다. Telnet 10.8.0.6 3306도 작동하지 않습니다. MySQL이 3306에서 실행되고 있음을 확인했습니다.

me@db:~# lsof -i4 -P | grep -i mysql
mysqld  6192 mysql   10u  IPv4  40596      0t0  TCP localhost:3306 (LISTEN)

그럼 내가 뭘 잘못하고 있는 걸까요? Google은 별로 도움이 되지 않았으며 내가 아는 한 작동해야 합니다.

답변1

MySQL 서버는 localhost(127.0.0.1)만 수신하므로 다른 서버에서는 연결할 수 없습니다. 이는 명시적으로 허용하지 않는 한 다른 컴퓨터가 MySQL에 연결하는 것을 방지하는 기본 "보안" 설정입니다.

my.cnf 파일(아마도 /etc/my.cnf에 있음)을 편집하고 바인드 주소를 127.0.0.1에서 다음 중 하나로 변경합니다.

  • MySQL 서버의 IP 주소
  • 0.0.0.0서버에 구성된 모든 IPv4 주소를 수신합니다.
  • ::모든 IPv4 및 IPv6 주소를 수신합니다.

http://dev.mysql.com/doc/refman/5.5/en/server-options.html#option_mysqld_bind-address

관련 정보