MySQL강좌13편: MYSQL 보안을 위한 전용관리계정으로 MYSQL 시작하기
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,844 조회
- 0 추천
- 목록
본문
MySQL강좌13편: MYSQL 보안을 위한 전용관리계정으로 MYSQL 시작하기
MYSQL을 시스템의 root권한으로 실행시키게 되면 시스템보안에 좋지않다. MYSQL의 root암호가 알려질 경우 시스템에 큰 위험이 생길 수 있기 때문이다. 따라서 MYSQL을 root로 실행하는 것 보다는 MYSQL전용 관리계정(예 : mysql)을 만들어서 그 계정으로 MYSQL을 실행시키는 것이 좋다.
필자의 경우에는 mysql이라는 계정으로 MYSQL을 실행하여 관리하고있다. 여기서 의미하는 mysql이라는 계정은 MYSQL의 계정이 아니라 MYSQL자체를 관리하기 위한 리눅스 시스템계정이라는 점을 명심하기 바란다. MYSQL의 현재버전에서는 mysql이라는 계정으로만 실행되도록 되어 있으므로 이제는 이것이 기본설정사항이 되었다.
이와같이 mysql이라는 MYSQL 관리 시스템계정으로 MYSQL을 시작하려면 최소한 MYSQL 의 데이터디렉토리(/usr/local/mysql/data)와 그안에 존재하는 모든 파일들이 mysql의 소유로 되어있어야 한다. MYSQL데이터베이스의 데이터들이 생성/삭제/수정되는 위치가 바로 /usr/local/mysql/data이기 때문에 mysql이 이디렉토리이하의 모든 파일과 디렉토리들에 대한 수정과 삭제권한이 있어야하기 때문이다.
따라서 mysql이라는 시스템계정을 useradd명령어로 생성하신 다음 아래와 같이 /usr/local/mysql/data디렉토리 이하의 모든 파일들을 mysql계정 소유로 변경하기 바란다.
[root@sulinux bin]#chown -R mysql:mysql /usr/local/mysql/data [root@sulinux bin]# [root@sulinux bin]#ls -l /usr/local/mysql/data/ 합계 40 drwx------ 2 mysql mysql 4096 4월 15 2011 mysql srwxrwxrwx 1 mysql mysql 0 4월 28 07:18 mysql.sock drwx------ 2 mysql mysql 4096 4월 28 06:32 picasso_db drwx------ 2 mysql mysql 4096 4월 28 06:46 sspark_db -rw-rw---- 1 mysql mysql 3811 4월 29 00:47 sulinux.net.err -rw-rw---- 1 mysql mysql 8704 4월 28 07:53 sulinux.net.err-old drwx------ 2 mysql mysql 4096 4월 28 07:33 temp_db drwx------ 2 mysql mysql 4096 4월 28 07:40 temp_db2 drwx------ 2 mysql mysql 4096 4월 15 2011 test [root@sulinux bin]# |
이렇게 설정한 후에 mysql 이라는 계정으로 MYSQL을 시작한 예이다.
[mysql@sulinux ~]#id uid=507(mysql) gid=508(mysql) groups=508(mysql) [mysql@sulinux ~]# [mysql@sulinux ~]#/usr/local/mysql/bin/mysqld_safe & [1] 3718 [mysql@sulinux ~]#090429 00:52:52 mysqld_safe Logging to '/usr/local/mysql/data/sulinux.net.err'. 090429 00:52:52 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
[mysql@sulinux ~]# |
이상과 같이 root가 아닌 MYSQL전용 관리계정으로 MYSQL을 시작하고 관리한다면 서버보안을 위한 훌륭한 선택이 될 수 있을 것이다.
관련자료
-
이전
-
다음