그누보드 DB외부접속허용[서버호스팅] 외부설정방법 정보
그누보드 DB외부접속허용[서버호스팅] 외부설정방법
본문
그누보드를 웹호스팅을 쓸떼는 자동설정이라 몰랐는데
서버호스팅에 nginx와 maria db를 함께 설치하면
db접근을 phpMyAdmin이 아닌 다이렉트 접근을 하게되는데
외부접속이 제대로 되지 않아 막막할때가있어서
확인차 남깁니다.
ubuntu 기준으로 설명
1. my.cnf
또는 50-server.cnf
설정 변경
MariaDB는 기본적으로 localhost
(127.0.0.1)만 수신 대기합니다.
이를 외부에서도 접속할 수 있도록 bind-address
를 수정해야 합니다.
파일 위치 예시:
-
/etc/mysql/my.cnf
-
또는
/etc/mysql/mariadb.conf.d/50-server.cnf
[mysqld]
bind-address = 0.0.0.0
2. MariaDB 사용자에 외부 접속 권한 부여
MySQL 사용자 계정은 IP별로 접근 권한이 제한됩니다. 외부 IP에서 접속하려면 그 IP를 허용한 사용자 계정을 생성하거나 수정해야 합니다.
sql
-- 외부에서 root 계정으로 접속 허용 (보안상 권장되지 않음)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '비밀번호' WITH GRANT OPTION;
-- 또는 특정 사용자에게 외부에서 접속 권한 부여
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY '비밀번호'; -- 권한 적용 FLUSH PRIVILEGES;
3. MariaDB 재시작
설정을 적용하려면 MariaDB를 재시작합니다.
bash
sudo systemctl restart mariadb
!-->!-->
3
댓글 2개

% 말고 localhost 가 보안상 낫다고 하는데요..

@리오닥터
저건 피차 어쩔수 없이 외부접속을 허용해야할때 사용하는 방법입니다.
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '비밀번호' WITH GRANT OPTION;
이러면 보안에 취약해질 수 있어서
GRANT ALL PRIVILEGES ON *.* TO 'root'@'허용아이피' IDENTIFIED BY '비밀번호' WITH GRANT OPTION;
가 훨씬 났긴 합니다.
덤으로 방화벽에서도 3306 포트를 특정아이피만 열면 완벽하겠죠.