웹사이트 검색

Ubuntu 12.04에서 phpPgAdmin을 설치하고 사용하는 방법


상태: 더 이상 사용되지 않음

이 문서에서는 더 이상 지원되지 않는 Ubuntu 버전에 대해 설명합니다. 현재 Ubuntu 12.04를 실행하는 서버를 운영 중인 경우 지원되는 Ubuntu 버전으로 업그레이드하거나 마이그레이션하는 것이 좋습니다.

  • Ubuntu 14.04로 업그레이드합니다.
  • Ubuntu 14.04에서 Ubuntu 16.04로 업그레이드
  • 서버 데이터를 지원되는 버전으로 마이그레이션

이유:

대신 참조:

phpPgAdmin 정보

phpPgAdmin은 postgresql 시스템에 GUI 인터페이스를 제공하는 php 기반 웹 애플리케이션입니다. 사용자가 MySQL의 시각적 프로그램에서 데이터베이스 정보를 조작할 수 있도록 하는 phpMyAdmin과 유사한 기능을 수행합니다.

1단계 - phpPgAdmin 설치

apt-get 저장소가 최신인지 확인하여 시작하세요.

sudo apt-get update

프로세스가 완료되면 계속해서 postgresql, 유용한 추가 종속성 및 phpgadmin을 설치하십시오. 설치하는 동안 phpPgAdmin은 필요한 php 및 apache 패키지도 설치합니다.

sudo apt-get install postgresql postgresql-contrib phppgadmin

아파치를 시작합니다:

sudo service apache2 start

2단계 - 보안 설정 조정

phpgadmin이 설치되면 youripaddress/phpPgAdmin으로 이동하여 액세스할 수 있습니다.

다음 명령을 실행하여 서버의 IP 주소를 표시할 수 있습니다.

ifconfig eth0 | grep inet | awk '{ print $2 }'

그러나 phpPgAdmin 페이지에 접근하려고 하면 금지된 403 오류가 발생할 수 있습니다.

이 페이지에 액세스할 수 있도록 하려면 모든 방문자가 사용할 수 있도록 해야 합니다(걱정하지 마십시오. 다음 단계에서 잠글 것입니다).

sudo nano /etc/apache2/conf.d/phppgadmin

파일 내에서 다음 섹션을 찾아 "allow from all\ 줄의 주석 처리를 제거합니다. 섹션은 다음과 같아야 합니다.

order deny,allow
deny from all
allow from 127.0.0.0/255.0.0.0 ::1/128
allow from all

.htaccess 인증 구성

.htaccess 파일이 허용되면 phpPgAdmin 로그인 페이지에 액세스하기 위해 로그인이 필요한 기본 사용자 설정을 진행할 수 있습니다.

사이트 구성 파일의 .htaccess 인증 섹션을 생성하여 시작하십시오. 예를 들어 기본 사이트를 사용하겠습니다.

sudo nano /etc/apache2/sites-enabled/000-default

사용자 인증을 설정하여 후속 조치를 취하십시오. 가상 호스트 파일 내에 새 섹션을 만들고 다음 정보를 붙여넣습니다.

<Directory "/usr/share/phpPgAdmin">
        AuthUserFile /etc/phpPgAdmin/.htpasswd
        AuthName "Restricted Area"
        AuthType Basic
        require valid-user
</Directory>

아래에서 각 줄에 대한 간단한 설명을 볼 수 있습니다.

  • AuthUserFile: 이 줄은 비밀번호 파일(다음 단계에서 만들 것)의 서버 경로를 지정합니다.
  • AuthType: 비밀번호 확인에 사용되는 인증 유형을 나타냅니다. 비밀번호는 HTTP를 통해 확인되며 Basic 키워드는 변경하면 안 됩니다.
  • AuthName: 암호 프롬프트에 표시될 텍스트입니다. 여기에 무엇이든 넣을 수 있습니다.
  • Require valid-user: 이 줄은 암호 파일에 정의된 사용자만 phpPgAdmin 로그인 화면에 액세스할 수 있음을 .htaccess 파일에 알려줍니다.

htpasswd 파일 생성

이제 유효한 사용자 정보를 생성하겠습니다.

htpasswd 파일을 생성하여 시작합니다. htpasswd 명령을 사용하고 브라우저에서 액세스할 수 없는 한 원하는 디렉토리에 파일을 저장합니다. 암호 파일의 이름은 원하는 대로 지정할 수 있지만 일반적으로 이름은 .htpasswd입니다.

sudo htpasswd -c /etc/phpPgAdmin/.htpasswd username

암호를 제공하고 확인하라는 프롬프트가 표시됩니다.

사용자 이름과 암호 쌍이 저장되면 파일에서 암호가 암호화된 것을 볼 수 있습니다.

Apache를 다시 시작하여 완료하십시오.

sudo service apache2 restart

phpPgAdmin 액세스

phpPgAdmin은 이제 승인된 사용자만 로그인 페이지에 접근할 수 있으므로 훨씬 더 안전합니다. youripaddress/phpPgAdmin에 액세스하면 다음과 같은 화면이 표시되어야 합니다.

생성한 사용자 이름과 비밀번호를 입력합니다. 로그인 후 Postgres 사용자 이름과 암호를 사용하여 phpPgAdmin에 액세스할 수 있습니다.

Postscript - Postgres 사용자 생성 방법

인증 구성 파일에서 인증 방법을 변경합니다.

sudo nano /etc/postgresql/9.1/main/pg_hba.conf

다음 줄에서 변경할 수 있습니다.

# "local" is for Unix domain socket connections only
local   all             all                                    md5

사용자 생성을 시작하려면 먼저 기본 수퍼유저로 전환하고 사용자가 로그인할 데이터베이스를 생성합니다.

sudo su - postgres

그런 다음 테이블을 저장할 새 데이터베이스를 만듭니다.

createdb newdb

데이터베이스가 생성되었지만 액세스 권한이 있는 유일한 사용자는 기본 postgres 사용자입니다. 새 사용자를 생성하여 다른 사용자가 이 데이터베이스에 액세스하고 조작하도록 허용할 수 있습니다.

기본 수퍼유저로 로그인하면 PostgreSQL 시스템에서 더 많은 역할을 생성할 수 있습니다.

사용자에게 암호를 설정하려면 createuser 명령에 -P 옵션을 추가할 수 있습니다.

createuser -P
Enter name of role to add: newuser
Enter password for new role: 
Enter it again: 
Shall the new role be a superuser? (y/n) y
Password:  enter the superuser’s password here

그런 다음 여러 방법 중 하나로 postgres에 로그인할 수 있습니다.

피어 ID를 사용하여 로그인하는 경우 로그인할 데이터베이스를 지정하여 다음 명령을 입력하기만 하면 됩니다.

psql newdb

md5 ID를 사용하여 로그인하는 경우 로그인하려는 사용자를 포함할 수 있습니다.

psql –U newuser  -W newdb