SW/리눅스

CentOS 7 : 아파치를 사용하여 phpMyAdmin 설치, 보호하는 방법, 예제, 명령어

얇은생각 2021. 1. 31. 07:30
반응형

phpMyAdmin은 웹 기반 인터페이스를 통해 MySQL 및 MariaDB 서버를 관리하기 위한 오픈 소스 PHP 기반 도구입니다.

phpMyAdmin을 사용하면 MySQL 데이터베이스와 상호 작용하고, 사용자 계정 및 권한을 관리하며, SQL 문을 실행하고, 다양한 데이터 형식으로 데이터를 가져오고 내보낼 수 있습니다.

CentOS 7에서 phpMyAdmin with Apache를 설치하고 보호하는 데 필요한 단계를 살펴보겠습니다.

 

 

 

전제조건

이 튜토리얼을 계속하기 전에 다음 필수 구성 요소를 충족했는지 확인하십시오. 

- CentOS 서버에 설치된 LAMP(Linux, Apache, MySQL 및 PHP)

- sudo 권한을 가진 사용자로 로그인합니다.

 

필요하지는 않지만 HTTPS를 통해 phpMyAdmin 설치에 액세스하는 것이 좋습니다.

 

 

 

phpMyAdmin 설치

CentOS 7에 phpMyAdmin을 설치하려면 다음 단계를 수행합니다.

phpMyAdmin은 CentOS 7 핵심 리포지토리로 phpMyAdmin을 설치하려면 먼저 EPEL 저장소를 활성화해야 합니다.

sudo yum install epel-release

 

 

 

EPEL 리포지토리를 활성화하면 다음 명령을 사용하여 phpMyAdmin과 해당 리포지토리의 모든 종속성을 설치할 수 있습니다.

sudo yum install phpmyadmin

 

 

 

phpMyAdmin 구성 및 보안

phpMyAdmin에 대한 Apache 구성 파일은 설치 중에 자동으로 생성됩니다. 기본적으로 로컬 호스트의 연결을 제외한 모든 연결이 거부됩니다. 원격 위치에서 phpMyAdmin에 액세스하게 되므로 구성 파일을 수정하고 허용된 IP 주소를 지정해야 합니다.

phpMyAdmin Apache 구성 파일을 엽니다.

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

 

 

홈 연결의 IP 주소로 IP 127.0.0.1이 필요하다고 표시된 두 줄을 변경합니다. 집 IP 주소를 모르면 웹 브라우저에서 구글 검색을 열고 자신의 IP를 입력합니다.

# /etc/httpd/conf.d/phpMyAdmin.conf

# Apache 2.4
<RequireAny>
    Require ip 192.168.42.57
    Require ip ::1
</RequireAny>

 

 

파일을 닫고 저장합니다. 

모든 위치에서 phpMyAdmin 설치에 액세스하려면 Require ip 라인 앞에 Require all granted를 추가하십시오.

추가 보안 계층의 경우 기본 인증을 설정하여 phpMyAdmin 디렉터리를 암호로 보호합니다.

htpasswd 도구를 사용하여 새 인증 파일을 만드는 것부터 시작합니다. .htpasswd 파일을 /etc/phpMyAdmin 디렉터리에 저장합니다.

sudo htpasswd -c /etc/phpMyAdmin/.htpasswd admin

 

 

 

이 예에서는 admin이라는 사용자를 생성합니다. 원하는 사용자 이름을 선택할 수 있습니다.

위 명령은 사용자의 암호를 입력하고 확인하는 메시지를 표시합니다.

New password: 
Re-type new password: 
Adding password for user admin

 

 

나중에 사용자를 추가해야 하는 경우 -c 플래그 없이 동일한 명령을 사용하십시오.

sudo htpasswd /etc/phpMyAdmin/.htpasswd admin2

 

 

 

다음 단계는 phpMyAdmin 디렉터리를 암호로 보호하고 .htpasswd 파일을 사용하도록 Apache를 구성하는 것입니다. 이렇게 하려면 phpMyAdmin 설치 중에 자동으로 생성된 phpMyAdmin.conf 파일을 엽니다.

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

 

 

 

그리고 노란색으로 강조 표시된 다음 줄을 삽입하십시오.

# /etc/httpd/conf.d/phpMyAdmin.conf

<Directory /usr/share/phpMyAdmin/>
    AddDefaultCharset UTF-8

    Options  +FollowSymLinks +Multiviews +Indexes
    AllowOverride None
    AuthType basic
    AuthName "Authentication Required"
    AuthUserFile /etc/phpMyAdmin/.htpasswd
    Require valid-user

   <IfModule mod_authz_core.c>
   ...

 

 

변경 내용을 적용하려면 파일을 저장하고 Apache 서비스를 재시작하십시오.

sudo systemctl restart httpd

 

 

/phmyadmin 별칭을 좀 더 독특하고 안전한 것으로 변경하는 것도 좋습니다.

phpMyAdmin에 액세스할 때 이전에 생성한 사용자의 로그인 자격 증명을 입력하라는 메시지가 표시됩니다.

https://your_domain_or_ip_address/phpmyadmin

 

 

CentOS 7 : 아파치를 사용하여 phpMyAdmin 설치, 보호하는 방법, 예제, 명령어 1

 

기본 인증을 입력하면 phpMyAdmin 로그인 페이지로 이동하여 MySQL 관리 사용자 로그인 자격 증명을 입력해야 합니다.

 

 

 

phpMyAdmin 액세스

phpMyAdmin 인터페이스에 액세스하려면 즐겨찾기 브라우저를 열고 서버의 도메인 이름 또는 공용 IP 주소를 입력한 다음 /phpmyadmin:

https://your_domain_or_ip_address/phpmyadmin

 

 

이전에 만든 관리 사용자 로그인 자격 증명을 입력하고 이동을 클릭합니다.

CentOS 7 : 아파치를 사용하여 phpMyAdmin 설치, 보호하는 방법, 예제, 명령어 2

 

 

로그인하면 다음과 같은 phpMyAdmin 대시보드가 표시됩니다.

CentOS 7 : 아파치를 사용하여 phpMyAdmin 설치, 보호하는 방법, 예제, 명령어 3

반응형