Security

MySQL 5.x 외부 접속 허용하기

김모작자 2016. 3. 7. 01:14

MySQL 5.5 기준.


1) MySQL 설정 변경

MySQL 설치 후

netstat -anlp | grep 3306

으로 LISTEN 중인 MySQL Instance 를 보면 127.0.0.1 에 Bind 를 하고 있다.

이 상태에서 외부에선 접속을 못한다.

/etc/mysql/my.cnf

위 파일을 vi, nano 로 열어보면

bind-address 에 127.0.0.1 가 설정돼 있다.

이 줄을 앞에 # 을 붙여 주석 처리한 후에

service mysql restart

로 MySQL 서비스를 재시작 하도록 한다.


2) 계정 설정

보통 검색해 보면

GRANT ALL PRIVILEGES ON *.* to 'LoginID'@'%' IDENTIFIED BY 'password';

이렇게 계정에 모든 권한을 주고 있으나

정확히는 뒤에 % 가 핵심이다.

any 로 접속하는 LoginID 에 모든 권한을 주라는건데, 모든 권한을 줄 필요는 없다. !!!


3) 고려할 부분

실제 DB 를 외부에서 접속되게 할 필요는 없다고 본다.

bind address 를 private ip 나 아예 127.0.0.1 로 바꿔서 접속을 차단하도록 한다.