質問するログイン新規登録

回答編集履歴

6

追記

2021/01/14 08:57

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -18,4 +18,32 @@
18
18
  - 頑張ってコマンドラインでMySQLを操作できるようになる(操作する時はEC2にログインして、mysqlコマンドで操作する)
19
19
  - 適当なVPNサービスを使用して固定グローバルIPを取得して、そのIPからのみphpMyAdminにアクセス出来るようにする
20
20
 
21
- 等が考えられます。
21
+ 等が考えられます。
22
+
23
+ 追記
24
+ ---
25
+
26
+ まず、MySQLにはサーバーとクライアントが存在します。
27
+ 実際にデータが蓄積されるのはサーバーの方で、これはRDS上で動作しています。
28
+
29
+ クライアントは色々種類があるのですが、全てEC2上で動作します。
30
+
31
+ EC2上で動くMySQLクライアントがRDS上で動くMySQLサーバーに接続をしに行くという関係です。
32
+
33
+ 現状は、
34
+ [最初に動いていたEC2]上で動くMySQLクライアント(phpMyAdmin)がRDS上で動くMySQLサーバーに接続をしに行く際に、(不正なアクセスと不適切なセキュリティ設定によって)何回も接続に失敗してしまった結果、RDS上で動くMySQLサーバーが[最初に動いていたEC2]からのアクセスを拒否している状態です。
35
+
36
+ これを解決するためには、MySQLサーバーにどうにかしてログインして、RDS上で動くMySQLサーバーに記録されてしまった拒否設定をクリアする必要があります。
37
+
38
+ [最初に動いていたEC2]はRDS上で動くMySQLサーバーに接続拒否されている状態なので、別のEC2を立てて、そこにMySQLクライアントをインストールしてそちらからログインし、拒否設定の削除を行うというのが、質問中の最初のリンク内にある
39
+ `AWSのRDSを使っている場合`
40
+ で提示されているSQL
41
+ `FLUSH HOSTS`
42
+ です。
43
+
44
+ [新しい方のEC2]にMySQLクライアントをインストールすることによって
45
+ `mysql -u(ユーザー名) -p -h(RDSのエンドポイント)`
46
+ というコマンドが実行できるようになり、このコマンドによってRDS上で動くMySQLサーバーにログイン出来ます。
47
+ ログイン出来たら、
48
+ `FLUSH HOSTS;`
49
+ で拒否設定を削除するという流れです。

5

補足

2021/01/14 08:57

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -9,7 +9,7 @@
9
9
 
10
10
  phpMyAdminをインターネットからアクセスできる状態にしておくと、
11
11
  同じ問題が発生すると思われるので、適切なアクセス制限設定が出来るまではphpMyAdminを削除しておくことをお勧めします。
12
- (EC2上で動くphpMyAdminとRDS上で動くMySQLについての区別がまい内容に見受けられます。そのあたりを正確に認識しないととても危険です。
12
+ (EC2上で動くphpMyAdminとRDS上で動くMySQLについての区別が出来て無ように見受けられます。そのあたりを正確に認識しないととても危険です。
13
13
  おそらくは、phpMyAdminの認証にMySQLユーザーを使った結果、不正なアクセスがそのままRDSへ接続を試行してロックされたのだろうと思います)
14
14
 
15
15
  例えば、

4

追記

2021/01/13 09:47

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -16,5 +16,6 @@
16
16
  - localhostからのアクセスのみを許可してsshポートフォワード経由のみでphpMyAdminにアクセス出来るようにする
17
17
  - phpMyAdminは使わず、MySQL Workbench等のクライアントソフトをMacにインストールし、EC2へのSSHを経由して(SSHポートフォワードを使用して)RDSに接続する
18
18
  - 頑張ってコマンドラインでMySQLを操作できるようになる(操作する時はEC2にログインして、mysqlコマンドで操作する)
19
+ - 適当なVPNサービスを使用して固定グローバルIPを取得して、そのIPからのみphpMyAdminにアクセス出来るようにする
19
20
 
20
21
  等が考えられます。

3

補足

2021/01/13 09:46

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -9,7 +9,8 @@
9
9
 
10
10
  phpMyAdminをインターネットからアクセスできる状態にしておくと、
11
11
  同じ問題が発生すると思われるので、適切なアクセス制限設定が出来るまではphpMyAdminを削除しておくことをお勧めします。
12
- (EC2上で動くphpMyAdminとRDS上で動くMySQLについての区別があいまい内容に見受けられます。そのあたりを正確に認識しないととても危険です)
12
+ (EC2上で動くphpMyAdminとRDS上で動くMySQLについての区別があいまい内容に見受けられます。そのあたりを正確に認識しないととても危険です
13
+ おそらくは、phpMyAdminの認証にMySQLユーザーを使った結果、不正なアクセスがそのままRDSへ接続を試行してロックされたのだろうと思います)
13
14
 
14
15
  例えば、
15
16
  - localhostからのアクセスのみを許可してsshポートフォワード経由のみでphpMyAdminにアクセス出来るようにする

2

補足

2021/01/13 09:45

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -2,7 +2,7 @@
2
2
  新しく作ったEC2に`mysql`コマンド(MySQLクライアント)をインストールする必要があります。
3
3
 
4
4
  OSがCentOSやAmazonLinuxであれば
5
- `sudo yum install mysql-devel`
5
+ `sudo yum install mysql`
6
6
  で必要なものはインストール出来るかと思います。
7
7
 
8
8
  ---

1

補足

2021/01/13 09:39

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  OSがCentOSやAmazonLinuxであれば
5
5
  `sudo yum install mysql-devel`
6
- でインストール出来るかと思います。
6
+ 必要なものはインストール出来るかと思います。
7
7
 
8
8
  ---
9
9