아무리 해도 접근이 안되어 순서대로 정리하려고 합니다.
보안정책에 인바운드 3306을 추가한다.
mysql
/etc/mysql/mysql.conf.d
bind-address 127.0.0.1 을 주석처리 하던가, 0.0.0.0으로 수정한다.
mariadb
/etc/mysql/mariadb.conf.d
port가 3306인지 확인하고 (주석처리 되어있으면 3306이다)
bind-address를 127.0.0.1이 되어 있으면 0.0.0.0으로 전역으로 허용해준다.
전체 확인
SELECT user, host FROM mysql.user;
각 사용자 확인
SHOW GRANTS FOR 'username'@'host';
사용자 추가
INSERT INTO user (Host, User, Password) VALUES ('%', '계정아이디', password('비밀번호'));
모든 권한 허용 (관리자)
grant all privileges on *.* to 'root'@'%' with grant option;
접속 권한 허용 (서브 관리자)
GRANT ALL privileges ON *.* TO 'root'@'%' IDENTIFIED BY '패스워드';
외부접속 허용 제거
DELETE FROM mysql.user WHERE Host='%' AND User='아이디';
적용
FLUSH PRIVILEGES;
포트 허용하기 EC2에서 인스턴스 생성시에는, ufw가 기본적으로 비활성화 되어있다. (비활성화인 경우에는 aws에서만 설정 하면 됨)
sudo ufw allow out 3306/tcp
sudo ufw allow in 3306/tcp
mysql 재시작 하기
sudo service mysql restart