HOME  /Synology
 /phpMyAdminのセキュリティ対策
2020年07月16日

phpMyAdminのセキュリティ対策

下記の作業は「Hyper Backup」で「MariaDB」をバックアップしてない人は絶対に操作しないで下さい。

 

下記ドキュメントで「MariaDB」に「新規管理者の登録」と「不要IDの削除」を行いました。

 ­MariaDBとphpMyAdminのインストールと設定

しかしこれだけではセキュリティ対策としては不十分で下記対策が考えられます。

 

①phpMyAdminを別名にする方法

②phpMyAdminをrootでアクセスできなくする方法

③phpMyAdminアクセスをローカルに限定する方法

下記にその設定方法を解説します。

 

1.phpMyAdminを別名にする方法

ドメイン名はWebサーバで公開しているので、その下に「phpMyAdmin」がある事は容易に想像できます。

この「phpMyAdmin」が別名になっていると、これを知っている人しかアクセスできなくなりますのでセキュリティは更に向上します。

下記にそのやり方を解説します。

 

1-1.「phpMyAdmin」のフォルダ名を変更する

■Webフォルダの下にある「phpMyAdmin」のフォルダ名を変更します。

 メモ

phpMyAdminをコピー&ペーストして改名するとファイル所有者が変わる為に動きません。必ずリネームで実施して下さい。

 

1-2.パッケージセンターから「phpMyAdmin」をアンインストールします。

パッケージセンターのインストール済みをクリックすると「phpMyAdmin」がエラー表示されています。

■「phpMyAdmin」をクリックします。下記画面が出ます。

■アンインストールをクリックします。

以上で「phpMyAdmin」アプリケーションが無くなり、Webフォルダに別名にした「phpMyAdmin」のプログラムだけが残った状態になります。

注意(重要です)

「phpMyAdmin」をエラーの状態のまま放置すると「Hyper Backup」で「MariaDB」をバックアップする段階でエラーになり「MariaDBを壊してしまいます」。

もし「MariaDB」が壊れてしまった場合は、パッケージセンターから「MariaDB」をアンインストールし、「Hyper Backup」で障害の1つ前の「MariaDB」をリストアします。これで復旧できます。

操作方法は下記を参照してください。

­­ ­Synologyのアプリケーション更新で障害が発生した時の対策

 

1-3.「config.inc.php」の修正

今の状態は「phpMyAdmin」を別名にしただけで、まだこのプログラムは動きません。

そこで下記修正を行います。

Web→改名したphpMyAdmin」フォルダの中にある「config.inc.php」をEmEditorで開いてください。

現在のDBサーチ設定は下記になっています。

$i = 0;
$servers_json_str = file_get_contents('/var/packages/phpMyAdmin/target/synology_added/etc/servers.json');
foreach (json_decode($servers_json_str, true) as $server) {
	$i++;
	$cfg['Servers'][$i] = $server;
}

■上記の赤字の所がフォルダ名です。ここを修正したフォルダ名に変更します。

■変更を保存します

 

1-4.改名した「phpMyAdmin」の起動方法

新しい「phpMyAdmin」の起動方法は下記になります。

http(s)://貴方のURL/改名した「phpMyAdmin」名

 

 この方法はインポートのファイルサイズに制限があります。

この方法は32MB以下のSQLファイルのインポートは問題なくできます。

Web Stationの「php.ini」のファイルサイズを変更すると32MB以上のファイルのインポートは可能です。

しかしこの方法はインポート終了後に「504エラー」がでます。

よってエラーを無くしてファイルをインポートしたい場合は、「phpMyAdminパッケージ」を一時的にインストールしてこちらで行ってください。

これを使うと「php.ini」の設定は関係なく「1GB」までのファイルが正常にインポートできます。

詳細は下記ドキュメントを見て下さい。

 phpMyAdminの「Incorrect format parameter」エラーについて

­

2.phpMyAdminをrootでアクセスできなくする方法

rootは誰でも知っているIDなので、これでのアクセスを禁止する設定です。

「config.inc.php」の任意の場所に下記コードを追加します。

/* セキュリティ対策の為にrootを禁止にする設定 */
$cfg['Servers'][$i]['AllowRoot'] = false;

以上でrootではログインできなくなります。

 メモ

上記の設定は「phpMyAdmin」にログインする時に「root」が使えないというだけです。「Hyper Backup」等で「MariaDB」にアクセスする時には使えます。

 

3.phpMyAdminアクセスをローカルに限定する方法

この設定はローカルLANからしかphpMyAdminにアクセスできない設定です。

これは完璧なセキュリティ対策になりますが、外出先からVPN接続でも接続できなくなる事が難点です。

「config.inc.php」の任意の場所に下記コードを追加します。

/* セキュリティ対策の為にphpMyadminはローカルipからのアクセスに限定する。*/
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array('deny % from all','allow % from 192.168.1.0/24');

■上記の赤字のIPアドレスは私の自宅環境です。貴方の自宅環境に合わせて修正して下さい。

 

以上で「phpMyAdmin」のセキュリティ対策は完璧になりました。

以上でこのドキュメントの説明は完了です。

関連ドキュメントはメニュの「Synologyタブ」か下記の関連記事一覧から探して下さい。

又、このサイトには、Google広告が掲載されています。

この記事が貴方の参考になりましたら、広告もご覧頂ければ幸いです。


<関連記事一覧>

「synology」に関連するドキュメントを表示しています。尚、このページネーションはJquryで制御しています。

ここではSynologyのphpMyAdminの「Incorrect format parameter」エラーについて解説します。このエラーは32MB以上のSQLファイルをインポートしようとした為に発生するエラーです。ここではその回避方法を解説しています。

Wordpressのセキュリティ強化の方法として「SiteGuard WP Plugin」と「Google Authenticator」の使い方を解説しています。

WordPressを構築した後、URL変更をしたい等のニーズが発生しますが、この時に重要なのはWordPressの稼働環境を理解する必要があります。ここでは「WordPressの稼働環境」と「MariaDBの中の構造」を解説しています。

Synologyサーバで大量のデータをコピーすると数十分の時間が掛かる事があります。これを数分以内でコピーする方法を解説しています。

「PHP7.0」から「PHP7.3」に変更したや、画面が途中で表示されないという問題が発生しました。この時に対応した内容を紹介しています。

自宅や職場のLANの中に「複数台のSynologyサーバ」があり、且つ、それらをhttpsでアクセスしたい場合に、SSL証明書をどうすれば良いか?を解説しています。

私の自宅は2019年末に「IIJMIO光」から「so-net光プラス」に変更しました。その結果、外部からWebサーバにアクセス出来ないという障害が発生しました。これにどう対応したか?の履歴が記載されています。

SynologyのDSMで80/443以外のポート番号を使ったWebサイトを構築する方法を解説しています。

SynologyでWordPressのURL変更を「Search-Replace-DB」で行う為には、ポート番号指定でDBを見に行く必要があります。ここではこの使い方を解説しています。

アルバムを公開アルバムにするとPhoto Stationで公開写真WEBサイトを構築する事ができます。更に、このサイトを「検索エンジンにインデックスさせる」と更に公開範囲が広がります。ここでは公開アルバムに関連する設定を解説しています。

スマートデバイスの写真を「DS Photo」を使ってPhoto Stationにアップロードする事ができます。アップロード方法には①バックアップコマンド②アップロードコマンドがあります。①を使うと写真を撮った段階で自動的にアップロードすることが可能です。

Photo Stationにはスマートデバイス専用のアプリケーションが用意されています。これがDS Photoです。
ここではこの使い方を解説しています。

Photo Stationは基本のPhoto Station以外にDSMユーザ毎に個人用Photo Stationを作成する事ができます。
ここでは個人用Photo Stationの作成方法と使い方を説明しています。

Photo Stationの基本は「公開写真Webサーバー」です。ここではこれを特定の人達で共有する方法を解説しています。

Synologyの「Photo Station」パッケージを利用するとスマホやデジカメで撮影した写真をNASサーバの中に保管をして色々な人と共有する事が可能になります。ここではこのPhoto Stationの起動方法と「Photo Station」用語を解説しています。

FTPの定番ソフトであるFFFTPを使って、SynologyのNASと接続する方法を解説しています。また対象は暗号化なしではなく、SSL証明書を使ったFTPS接続のケースになります。

iOSデバイスのWi-Fiの設定にDNSサーバを指定する方法を解説しています。

Synologyを使い始めてから何回かアプリケーション更新後に障害が発生しました。その時にはバックアップからアプリケーションを戻しますが、その戻し方を解説しています。

SynologyのPhoto Stationを利用した時に発生したエラーとその対策を解説しています。

AndroidデバイスのWi-Fiの設定にDNSサーバを指定する方法を解説しています。

SynologyのDSMに対するアタックの見方DSMの管理者を2段階認証にする方法を解説しています。

SynoloigyのDSM6.1からMariaDB5とMariaDB10の2つのDBがリリースされました。ここではMariaDB10とこのDBをアクセスするphpMyAdminの設定方法を解説しています。

Synologyサーバに2つ以上のDDNSを使う場合はSynology以外の無償DDNSサイトから取得する必要があります。またDDNSなら何でも良いのではなく、URLで更新できるDDNSでないとSynologyでは利用できません。ここでは『Dynu.com』社のDDNSの取得方法と設定方法を解説しています。

SynologyのDSMではVer6の途中から無償のSSL発行サイトのLet’s Encryptをサポートし始めました。しかし操作はマニュアルを見てもわからないので色々試した結果を解説しています。

Synologyサーバに『NO-IP.com』のDDNSを利用する応報を解説しています。

SynologyのNASにWebサービスを立ち上げると、WordPressを使ったWebサイトや、EC-CUBEを使ったECサイト等を立ち上げる事ができます。本ドキュメントはWebサービスの立ち上げ方、仮想ホスト機能、パーソナルWebの機能について解説しています。

WordPressをインストールするとディフォルトではサイトURLはドメイン名/WordPressフォルダになります。これをドメイン名だけにする為にSynologyの仮想ホスト機能を使います。本ドキュメントはこの使い方を解説しています。

WordPressの動作環境を変更すると、DBをダイレクトに変更しなければならないケースがあります。このドキュメントはphpMyAdminのエクスポートとインポートを使って修正した事例を紹介しています。

無償DDNSのDDNSサイトのmydns.jpからドメイン名を取得する方法を記載しています。このサイトはIPアドレスの通知にクエリーパラメータ方式も利用できる無償のDDNSサイトなので、IPv6にも対応したDDNSサイトです。

Synology のサーバをhttpsでアクセスする為には、サーバ側にSSLサーバ証明書を入れる必要があります。本稿では自証証明書の作成方法からWindowsPCへの証明書の登録方法を解説しています。

synologyにVPNで接続する方法を解説しています。VPNはPPTPとL2TP/IPsecを解説しています。またWindowsでL2TP/IPsecを使う場合はレジストリを変更する必要があります。この辺も解説しています。

QuickConnectは自宅にあるSynologyのNASサーバが常時Synologyのサイトと接続されている環境を使ってインターネットからアクセスする方法です。この方法はルータの設定変更を必要としないのであまりネットワークに詳しくない人でも利用できる特徴がありますが、利用できるのは特定アプリケーションのみです。

SynologyのNASのOSはDSMになります。このドキュメントはDSMの更新方法について解説しています。

ここではSynoligyサーバを「Hyper Backup」アプリケーションで、Googleドライブにバックアップ/リストアする方法を解説しています。

Synologyを複数台持っている場合は、Synology間でバックアップを相互に持たせる事ができます。ここではその方法を解説しています。

SynologyのMariaDBから、mysqldumpを使ってDBを定期的にダンプする方法と、それを利用してWordPressを過去の時点に戻す方法を解説しています。

SynologyのNAS機能に関連するメニューは①ファイルサービス、②共有フォルダ、③グループ、④ユーザがありこれらの関連性を解説しています。また利用権限は各々のメニューの中でも設定できるため誰に何の権限を与えたか?が判りずらい為、権限設定の考え方の例を解説しています。

Synologyの自動セットアップはLAN上のDHCPサーバから割り振らてたIPアドレスが割り振られています。本稿ではこれを固定IPアドレスに変更する方法と、DSM(DiskStation Manager)にアクセスする為のポート番号の設定を解説しています。

DSM(DiskStation Manager)のログイン画面をカスタマイズする方法を解説しています。これを使う事により企業特有のログイン画面が作成できます。

SynologyのDSM6の基本画面とコントロールパネルの基本的な使い方を解説しています。

SynologyのNASは独自のDSM(DiskStation Manager)というOSで動いております。私が経験したのはDSM4、DSM5を経由し、現在はDSM6を利用しています。どのバージョンでも操作は基本的には変わりません。

Synology サーバとWindowsPCをWebDAV接続すると、インターネット環境やローカル環境からアクセス権限を持った総てのフォルダがローカルフォルダと同様に利用できるようになります。ここではこの方法を解説しています。

SynologyのWordpressパッケージをインストールする方法を解説しています。

Synology のNASをインターネットからアクセスする方法としてDDNS(Dynamic DNS)を利用する方法があります。本稿ではDDNSにSynologyのDDNSを利用する方法と、インターネットルータへのポート番号設定事例を紹介しています。

SynologyのNASにWordpressを インストールしてWebサーバを構築する場合、ローカルPCからもURLでアクセスできる必要があります。この解決方法にSynologyのDSM Serverを使う方法を解説しています。

SynologyのNASに日本語版WordPressをインストールするやり方を解説しています。複数のWordPressも同一手法で稼動させることができます。