1. 패키지를 설치한다.
#yum -y install phpmyadmin
이제 아무 브라우저로 http://서버IP주소/phpmyadmin 하고 접속해보면 Permission denied 가 발생한다.
환경설정 파일을 수정하자.
2. phpMyAdmin.conf 파일 수정
#cd /etc/httpd/conf.d/
#cp -a phpMyAdmin.conf phpMyAdmin.conf.origin
#vim phpMyAdmin.conf
1 2 3 4 5 | <Directory /usr/share/phpMyAdmin/> AddDefaultCharset UTF-8 Order Allow,Deny Allow from All </Directory> | cs |
Deny from All 이라 되어 있어서 외부 접근자를 차단한 것, 그 부분을 주석처리한 후 외부접근을 허용한다는 문구를 작성하고 저장 후 종료
※ 보안 취약이 걱정되면 특정 IP만 허용하게 하자
#sed -i 's/127.0.0.1/{{특정 IP}}/g' phpMyAdmin.conf
#grep {{특정 IP}} phpMyAdmin.conf
3. httpd.conf 파일 수정
#vim /etc/httpd/conf/httpd.conf
Apache 를 깔고 웹을 구동해봤으면 이 부분을 할 필요가 없을 텐데, 만약 그게 아니라면 Denied 하는 부분을 주석처리하고, 허용하는 문구를 넣어야 한다.
1 2 3 4 | <Directory /> AllowOverride none Require all granted </Directory> | cs |
#systemctl restart httpd
4. 결과 확인
※ 참고 ( 80 포트 말고 다른 포트 사용하기, Alias 사용하기)
1. 환경설정 파일 수정
# vim /etc/httpd/conf.d/phpMyAdmin.conf
1 2 3 4 5 6 7 8 9 10 | Listen 1234 <VirtualHost *:1234> Alias /db /usr/share/phpMyAdmin </VirtualHost> <Directory /usr/share/phpMyAdmin/> AddDefaultCharset UTF-8 Order Allow,Deny Allow from All </Directory> | cs |
2. 확인
# curl -s -I http://192.168.0.104:8000/db/ | head -1
3. 방화벽 포트 허용 설정
# firewall-cmd --permanent --zone=public --add-port=8000/tcp
4. 서비스 재시작
# systemctl restart firewalld
※ 404 not found Error가 발생 한다면?
일단 먼저 PHP가 깔려있는지 확인한다
#rpm -qa | grep php
깔려있지 않다면 PHP 패키지 설치
#yum -y install php
phpmyadmin의 php소스 경로가 제대로 되어있는지 확인
#cd /var/www/html
#ls -al
phpmyadmin 폴더가 없다면 링크 지정
#ln -s /usr/share/phpMyAdmin/ /var/www/html/phpmyadmin/
원래는 httpd.conf 파일을 수정해서 경로를 지정할 수도 있지만, 이 방법이 더욱 간단해보임