開発者ドキュメント

Ubuntu12.04にphpPgAdminをインストールして使用する方法

ステータス:非推奨

この記事では、サポートされなくなったバージョンのUbuntuについて説明します。 現在Ubuntu12.04を実行しているサーバーを運用している場合は、サポートされているバージョンのUbuntuにアップグレードまたは移行することを強くお勧めします。

理由:
Ubuntu 12.04は2017年4月28日に保守終了(EOL)に達しました and no longer receives security patches or updates. This guide is no longer maintained.

代わりに参照してください:
このガイドは参照として役立つ場合がありますが、他のUbuntuリリースでは機能しない場合があります。 可能な場合は、使用しているUbuntuのバージョン用に作成されたガイドを使用することを強くお勧めします。 ページ上部の検索機能を使用して、より新しいバージョンを見つけることができます。

phpPgAdminについて

phpPgAdminは、postgresqlシステムにGUIインターフェイスを提供するphpベースのWebアプリケーションです。 phpMyAdminと同様の機能を実行し、ユーザーがMySQLのビジュアルプログラムでデータベース情報を操作できるようにします。

ステップ1-phpPgAdminをインストールします

まず、apt-getリポジトリが最新であることを確認します。

sudo apt-get update

プロセスが完了したら、postgresql、役立つ追加の依存関係、およびphpgadminをインストールします。 インストール中に、phpPgAdminは必要なphpおよびapacheパッケージもインストールします。

sudo apt-get install postgresql postgresql-contrib phppgadmin

Apacheを起動します。

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

ファイル内で次のセクションを見つけて、「すべてから許可」という行のコメントを外します。 セクションは次のようになります。

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

ユーザー認証を設定してフォローアップします。 仮想ホストファイル内に新しいセクションを作成し、次の情報を次の場所に貼り付けます。

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

以下に、各行の簡単な説明を示します

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
EtelSverdlov著
モバイルバージョンを終了