こんにちは、nicoです。
いやー、ついにやらかしました。クラウドで。
めちゃくちゃ恥ずかしいですが、他の初心者に同じ思いをして欲しくないのでシェアします。
個人勉強用のAWSで起きた出来事です。
IAMアカウントを作っておきながらもその役割を忘れ、rootユーザーでログインして様々なサービスを触ってしまった。
初心者あるあるですが、公式からも御法度と言われている操作です。
乗っ取られるリスクがあるそうなので、絶対にrootユーザーで遊ばないようにしましょう。
何かあっても消せばいいやと考えてしまった。
下記ツイートのように一度に色んなことをやってしまい、過去にも成功体験があったため、「自分一人でもあんなことやこんなことが出来るようになった!」と嬉しさのあまり調子に乗って、よく調べないままふと見かけた「Amazon Managed Blockchain」をクリック。
これが地獄の始まりです。
確かに一見、マニュアルを見なくても出来そうなくらいに簡単に見えました。実際に設定していく中で、正直「まるでレンチン(レンジでチーン!)みたいな感覚でできるやん!」と思いました。
その後、スマホでゆったりと寝転がりながら調べてみたところ、まだまだ細やかな設定が必要であることを知りました。「まぁ、途中までしかやってないし、また今度やろう。」そう思って眠りにつきました。
そうして、静かに地獄の扉が開きました。
アラート通知が来ていたのにスルーした。
500円でアラートを設定していました。
で、ちゃんと通知も来ていて、そのメールを私は直ぐに確認していました。
なのに私は「『Node.js』を立ち上げたやつの課金かな? 3ヶ月は無料じゃなかったっけ? 有料でも確か月に850円くらいだし、まぁいいか。勉強代よね~。」とログインで確認をせず放置しました。
地獄の鬼が腹を抱えて笑っております。
立ち上げから5日後、何となく胸騒ぎがしてログインをしました。
請求額をクリック。
なんと、約7000円もの請求が来ているではありませんか。
おーっと。やっちまった(。・ω・。)
詳細を見ると自分の想定とは異なり、なんとAmazon Managed Blockchainによる課金。
慌てて削除。
しかし、反映の影響か1~2日後も1日約1000円くらいの単位で増えて行きます。
おーっと、こらまいった(。・ω・。)
セキュリティロググループを確認。
ログは2日前(削除当日)の昼間から止まっている。
んーなのに請求が続くのはNAZEDA。
頭を過ぎったこと「rootアカウントの使用によるアカウントの不正乗っ取り」。
思い当たるリソースを片っ端から削除。
同時に、見覚えのない制作物(特にEC2)がないか確認。
この時、デフォルトと思われる2つのKMSが容易に削除できなかったのと、セキュリティロググループは消していいのか迷ったので残しました。
そして同時にAWSへ問い合わせ。深夜に1回と平日昼間に1回。
課金履歴を再度確認。Maneged Blockchainだと記されています。
しかし、合計の金額が合わないのでManeged Blockchain以外の課金の正体がはっきりとしないままなので不安は残ります。
平日の問い合わせをした後、直ぐにAWSから回答が来ないかも知れないと思い上司に相談。
自分が行った対処を伝えた上で他に出来ることはないか聞きました。
リクエスト数などを確認してもらい、多分大丈夫とのこと。
あとは日付が変わる瞬間(深夜0時)を待機。
娘をあやしつつ、「さすがに課金が延々と続くことはないだろう。」と自分に言い聞かせ、「続いたとしたら次はKMSの削除かな。」と考えていました。
KMSも削除して良かったのですが、原因が気になるので敢えて残しました。
個人メールなので仕事が終わるまで確認が出来なかったのですが、昼間の問い合わせから1時間後にはAWSから「Amazon Managed Blockchain、ちゃんと消されとるで。安心せえや。」と回答が来ていました。仕事が終わった後は家事やら寝かしつけやらしていたので実際にメールを確認したのは23時。
そしていよいよやってきた深夜0時。
ドキドキしながらリロード。
予測金額は・・・
増えていない!むしろちょっと減っている!
無事に課金の停止を確認しました。
不幸中の幸いでしょうか、過去にAWSの勉強会に参加した時にもらったボーナスクレジットのおかげで実際の支払額は半額で済みました。
AWSさん、ありがとう。
過去の自分よ、ありがとう。
技術本が買えたよなーとか嫌なことを考えてしまいますが、かなり良い勉強代になりました。
・rootユーザーを使うな。絶対にIAMアカウントを使うべし。
・少々出来たからって調子に乗るな。事前に調べないなど論外。
・焦ってアカウントの解約を行わないこと。
・Amazon Managed Blockchainは設置しただけで高額請求が来るぞ~。
・事が終わっても不正の可能性を考え、しばらくは様子を見ろよ~。
・アラートが来たら必ずログインをしてチェックしておきな。知らないぞ。
・クラウドは一人で操作しないこと。
はい(。・ω・。)
平日のチャットサービス(と言っても実質メール相談)の方が24時間以内に回答が来るためおすすめだと分かりました。
AWS側からリソースの停止や削除を行うことは出来ません。
自力でやるしかありません。
でも、詳細を伝えることでリソースの削除が出来ているかどうかは調べてくれることが分かりました。
つたない英文で詳細を綴り、最後にはHELP MEとまで書いてしまったけど(笑)、回答は日本語で貰えました。もしかしたら、日本語回答を指定していれば日本語での問い合わせでも良かったのかもしれません。
繰り返しですが、焦ってアカウントの解約を行わない方が良いです。
リソースやサブスクが残っている場合は、解約後も請求が来る可能性があります。
また、結果的に確認時の手間にもなると思います。
設定ミスやアカウント乗っ取りによって、数百万円や一千万円の請求が来たといった話も実際にあるようです。
不正の場合はAWS側が負担してくれるケースもありますが、必ずとは言えず、一部は自腹となるケースもあるようです。
とにかく、初心者が個人でやるべきではないと痛感しました。
今回、Amazon Managed Blockchain以外のサービスは事前に勉強してから取り組んでいました。サービスのアップデートにより、実際の設定手順がマニュアルとは違うな~と思いながらもそれなりに動作して嬉しかった。それ故に、Amazon Managed Blockchainも使えるかも!と調子に乗ってしまいました。
確かに使えます。でも、高いです。
置いただけで課金されます。要注意です。
結論:削除すれば数日後に課金が止まるっぽい。
あとでAmazon Managed Blockchainの仕組みを解剖してみようと思っていましたが、スクショを撮る余裕もなく消してしまったのはちょっと後悔。
いやー、楽しい楽しい肝試しでした(。・ω・。)フー
もっと根本を見つめ直すと、優秀な方々に囲まれて、かなり焦っていた自分が居たと思います。指定されたわけでも、これをやれと言われたわけでも、バックエンド専門でもないけど、焦りと好奇心が行きすぎてしまいました。
他にも色々と実験しているのですが、クラウドは本当に気をつけようと思いました。
既出かもしれないけど、皆さんもくれぐれもご注意ください。
ではでは~。