OS를 버전업하려면 응용 프로그램들을 모두 다시 설치해야 하는데, 이전과는 설치 방법이 달라지거나 번거로운 오류들이 발생한다. 그래서, OS 버전업을 잘 하지 않게 되는데, 걱정하지 말고 내 블로그의 Centos Stream 9 설치 시리즈들을 보고 그냥 따라하면 잘 설치가 될 것이다. 고마우신 분들은 커피 한잔씩 사주시면 감사히 먹겠습니다 :)
자 그럼 이 글에서는 MySQL을 편리하게 웹으로 관리할 수 있는 phpmyadmin 을 설치해 보겠다. phpmyadmin 은 php 언어 기반이며, Apache 에 컨텍스트로 올라가서 동작하게 된다.
Apache 가 안깔려 있다면 설치하고 오자.
https://ryans-note.tistory.com/3
Linux CentOS Stream 9 - Apache Setup
CentOS 8 부터 yum 대신 dnf 가 도입되었다. Dandified YUM (멋부린 YUM) 의 약자라고 하는걸 보면 YUM 을 기반으로 확장된 설치 명령어인 듯하다. 추후 설치는 dnf 로 한다. dnf -y install httpd httpd -version Server ve
ryans-note.tistory.com
# dnf -y install phpmyadmin
# vi /etc/httpd/conf.d/phpMyAdmin.conf
<Directory /usr/share/phpMyAdmin/> 부분을 찾아서 아래와 같이 내용을 추가해준다.
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
#Require ip 127.0.0.1
#Require ip ::1
Require all granted
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
# systemctl restart httpd
# systemctl status httpd
브라우저에서 접속해서 확인해본다. (위에 phpMyAdmin.conf 내용 추가가 제대로 안되었다면 403에러가 뜬다.)
http://192.168.0.2/phpmyadmin
mysql의 root 비밀번호를 입력하고 로그인한다.
비밀번호를 설정안했다면 해야 로그인이 된다.
성공.
테스트로 test 데이터베이스를 생성해본다.
참고로, phpmyadmin 은 내부망에서만 뜨도록 하는 것이 좋다.
인터넷을 통해 원격지에서 관리하겠다는 생각은 안하는 것이 해킹으로 DB가 모두 유출되는 피해를 예방하는 길이다.
특정 IP만 (내부망) 접속 허용하게 하는 방법1
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
Require ip 192.168.0.6
#Require all granted
</RequireAny>
</IfModule>
/phpmyadmin 과 같이 널리 알려진 uri 는 해커들의 공격 표적이 되기 때문에 ip 를 특정하지 않는다면 apache 에 설정한 모든 도메인에서 /phpmyadmin 이 동작하는 문제가 발생할 것이다. 이렇게 되면 브루투스 공격에 의해 DB가 뚫리게 된다.
그래서, 내부망 특정 ip 에서만 phpmyadmin 을 접속할 수 있드록 위와 같이 Require all granted 를 주석하고 Require ip 를 추가한다. * 과 같이 범위는 줄 수 없기 때문에, 접속을 허용을 내부망 ip 를 하나하나 입력해 주어야 한다.
특정 IP만 (내부망) 접속 허용하게 하는 방법2
https://ryans-note.tistory.com/15
Linux CentOS Stream 9 - phpmyadmin 다른 포트로 변경하기 (apache 2.4)
phpmyadmin 을 디폴트로 설치하면 모든 URL의 URI /phpmyadmin 에서 phpmyadmin 이 불러와지는 문제가 있다. 그래서 phpmyadmin 서비스용 포트를 별도로 따고 내부망의 그 포트에서만 불러오도록 하겠다. # mv /et
ryans-note.tistory.com
방법2가 더 좋은것 같다. 방법2를 권장한다.
도움이 되었다면 공감과 댓글 부탁드립니다.
'Linux > CentOS Stream 9' 카테고리의 다른 글
Linux Centos Stream 9 - Apache Tomcat 연동 (mod_jk) - Selinux 문제해결 (0) | 2023.02.16 |
---|---|
Linux CentOS Stream 9 - Tomcat 설치 (0) | 2023.02.16 |
Linux CentOS - 해외 IP 차단하기 (중국 등) (0) | 2023.02.10 |
Linux Centos Stream 9 - MySQL 설치 (0) | 2023.02.09 |
Linux CentOS Stream 9 - Apache (httpd) 설치 (0) | 2023.02.07 |