Apache를 사용하여 Ubuntu 18.04에서 phpMyAdmin 설치 및 보호 방법

Apache를 사용하여 Ubuntu 18.04에서 phpMyAdmin 설치 및 보호 방법

2022-05-17 last update

7 minutes reading phpmyadmin php mariadb mysql apache ubuntu
phpMyAdmin은 웹 기반 인터페이스를 통해 MySQL과MariaDB 서버의 관리를 처리하기 위한 오픈 PHP 응용 프로그램입니다.phpMyAdmin은 MySQL 데이터베이스, 사용자 계정과 권한 관리, SQL 문장 실행, 각종 데이터 형식으로 데이터 가져오기, 내보내기 등을 허용합니다.이 자습서는 Ubuntu 18.04에서 Apache를 사용하여 phpMyAdmin을 설치하고 보호하는 데 필요한 단계를 설명합니다.

선결 조건

본 강좌를 계속하기 전에 귀하가 다음과 같은 선결 조건을 만족하는지 확인하십시오.
  • haveLAMP (Linux, Apache, MySQL, and PHP) installed on your Ubuntu server
  • user with sudo privileges로 로그인
  • 필요하지 않지만 HTTPS를 통해 phpMyAdmin 설치에 접근하는 것을 권장합니다.도메인이 SSL로 보호되지 않은 경우 이 설명서에 따라 도메인을 보호할 수 있습니다Apache with Let’s Encrypt on Ubuntu 18.04.

    phpMyAdmin 설치

    Ubuntu 18.04 서버에 phpMyAdmin을 설치합니다.다음 절차에 따라
  • 패키지 인덱스를 업데이트하고 시스템 패키지를 최신 버전으로 업그레이드합니다.
    sudo apt update && sudo apt upgrade
  • 다음 명령을 사용하여 기본 Ubuntu 저장소에서 phpMyAdmin 패키지를 설치합니다.
    sudo apt install phpmyadmin
    설치 프로그램은 phpMyAdmin을 실행하는 웹 서버로 자동으로 설정해야 한다는 것을 알립니다.Space를 누르고apache를 선택한 다음Enter를 누르세요. 다음에 시스템은 dbconfig-common를 사용하여 데이터베이스를 설정하는지 물어보고 Yes를 선택하고 Enter를 클릭한다. phpMyAdmin이 데이터베이스에 등록한 비밀번호를 입력하고 OK를 선택하고 Enter를 누르세요. 시스템에서 비밀번호를 확인하고 같은 비밀번호를 입력하고 OK를 선택하고 Enter를 누르라고 알려 줍니다.
  • 설치 과정이 끝난 후 Apache를 다시 시작하여 변경 사항을 적용합니다.
    sudo systemctl restart apache2
  • 관리 MySQL 사용자 만들기

    MySQL 5.7(이상 버전)을 실행하는 Ubuntu 시스템에서 루트 사용자는 기본적으로 auth_socket 인증 방법을 사용합니다.auth_socket 플러그인은 Unix 소켓 파일을 통해 로컬 호스트에서 연결된 사용자를 인증합니다.이것은 암호를 제공하여 루트 사용자로 인증할 수 없다는 것을 의미합니다.MySQL 사용자 루트의 인증 방법을 변경하는 대신 MySQL 사용자를 관리하는 새로운 방법을 만들 것입니다.이 사용자는 루트 사용자와 같은 권한을 가지고 mysql_native_password 인증 방법을 사용하도록 설정합니다.이 사용자를 사용하여 phpMyAdmin 계기판에 로그인하고 MySQL이나MariaDB 서버에서 관리 작업을 수행할 것입니다.우선, 루트 사용자로 MySQL 서버에 로그인합니다.
    sudo mysql
    MySQL 셸에서 다음 명령을 실행하면 새로운 관리 사용자를 만들고 해당하는 권한을 부여합니다.
    CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'super-strong-password';GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;
    우리의 예시에서 관리 사용자를 padmin로 명명합니다.원하는 이름을 사용할 수 있습니다. 강력한 비밀번호를 설정하기만 하면 됩니다.

    phpMyAdmin 액세스

    phpMyAdmin 인터페이스에 방문하려면 가장 좋아하는 브라우저를 열고 서버의 도메인 이름이나 공공 IP 주소를 입력한 다음 /phpmyadmin:
    https://your_domain_or_ip_address/phpmyadmin
    
    이전에 만든 관리 사용자 로그인 증명서를 입력하고 Go를 누르십시오.에 로그인하면 phpMyAdmin 계기판을 볼 수 있습니다. 그 외관은 다음과 같습니다.

    phpMyAdmin 보호

    에 추가 안전층을 추가하려면 기본 인증을 설정하여 phpMyAdmin 디렉터리에 비밀번호를 보호합니다.우선, Apache 패키지와 함께 제공된htpasswd 도구를 사용하여 암호 파일을 생성합니다.우리는 .htpasswd 파일을 /etc/phpmyadmin 디렉터리에 저장할 것이다.
    sudo htpasswd -c /etc/phpmyadmin/.htpasswd padmin
    이 예에서 우리는 padmin라는 사용자를 만들었다.MySQL 사용자를 관리하는 것과 같은 사용자 이름을 선택할 수 있습니다.(adsbygoogle=window.adsbygoogle | |[]).추진({});위의 명령은 사용자 비밀번호를 입력하고 확인하는 것을 알려 줍니다.
    New password:
    Re-type new password:
    Adding password for user padmin
    
    로고를 사용하지 않고 다른 사용자를 추가하려면 같은 명령을 사용할 수 있습니다. -c 로고는 사용하지 않습니다.
    sudo htpasswd /etc/phpmyadmin/.htpasswd padmin2
    다음 단계는 아파치가 phpMyAdmin 디렉터리를 암호로 보호하고 .htpasswd 파일을 사용하도록 설정하는 것입니다.이를 위해 phpMyAdmin 설치 과정에서 자동으로 만들어진 phpmyadmin.conf 파일을 엽니다.
    sudo nano /etc/apache2/conf-available/phpmyadmin.conf
    노란색으로 강조 표시된 줄을 편집/삽입합니다./etc/apache2/conf available/phpMyAdmin.conf
    <Directory /usr/share/phpmyadmin>
        Options  +FollowSymLinks +Multiviews +Indexes  # edit this line
        DirectoryIndex index.php
    
        AllowOverride None
        AuthType basic
        AuthName "Authentication Required"
        AuthUserFile /etc/phpmyadmin/.htpasswd
        Require valid-user
    
        <IfModule mod_php5.c>
        ...
    에서 파일을 저장하고 닫고 Apache를 다시 시작하여 변경 사항을 적용합니다:
    sudo systemctl restart apache2
    현재 phpMyAdmin에 접근할 때 기본 인증을 입력한 후 이전에 만든 사용자의 로그인 증명서를 입력하라고 알립니다:
    https://your_domain_or_ip_address/phpmyadmin
    
    ,phpMyAdmin 로그인 페이지에 들어갈 것입니다. MySQL 관리 사용자 로그인 증명서를 입력해야 합니다./phpmyadmin 별명을 더욱 독특하고 안전한 별명으로 바꾸는 것도 좋은 생각이다.

    결론

    축하합니다. Ubuntu 18.04 서버에 phpMyAdmin을 성공적으로 설치했습니다.이제 시작해도 돼요creating MySQL databases, users and tables
    다양한 MySQL 쿼리 및 작업을 수행합니다.