CloudFront+S3構成だった自分のサイトをCloudflare+R2に移行した

CloudFront+S3構成だった自分のサイトをCloudflare+R2に移行した

少し前にCloudflareを導入しました。 元々AWS一本でやったほうが管理しやすいよね、という思想でまとめて運用していたのですが、ここ最近独自ドメインの更新料の値上がりがひどく、個人でやっていくうえで大きな死活問題でした。 (べつにNoteとかQiitaとか無料で技術ブログ投稿できる媒体はいくらでもありますが、ひっそりとやりたいので笑) Route53で2025年7月1日から.netや.comの価格が変わるよ! - Qiitaこんばんは。 この記事は約1年前に書いたこちらの記事のリメイク版(?)です。 なので本文も大体同じです。 [Notification] Route 53 Domain Pricing Changes [AWS Account: xxxxxxxxxxxx] というメー…Qiitahollage0214Route 53 ドメイン費用の変更(2024年4月8日) を調べてみた。

· 6 min read
Terraform CloudのAPI tokenの自動ローテーションの仕組みを作ってみた

Terraform CloudのAPI tokenの自動ローテーションの仕組みを作ってみた

はじめに 仕事でTerraform Cloudを触る機会が多くなって来たのですが、主にVScodeなどからHCP Terraformに接続して操作することが多いです。 https://www.hashicorp.com/ja/products/terraform 接続にはAPI tokenを利用していますが、セキュリティライフサイクル管理の観点からキーローテーションをしたほうがよいかと思ったので、自動でAPI tokenをローテーションする仕組みを作ってみました。 実行環境と必要なもの * Linux(bash) * 原田はMacOS 15.6.1の環境を使ってます * シェルはzshからbashに変更してます * jq * 既にHCP terraform tokenの作成しており、利用できる状態であること

· 3 min read
有料のSSLサーバ証明書を買ってみた

有料のSSLサーバ証明書を買ってみた

今回は感想だけの日記で、技術的なものはほとんどないです。 このブログのような個人サイトや開発・検証環境で利用するSSL証明書は、だいたい無料のSSL証明書(特にLet's encrypt)が使われることがほぼほぼだと思います。 Let’s EncryptLet’s Encrypt は、非営利団体の Internet Security Research Group (ISRG) が提供する自動化された無料でオープンな認証局です。今年の非営利活動のすべてについては、2024年 年間報告書を読んでください。Let's Encrypt

· 6 min read
このブログのサーバ証明書をECDSA証明書にした

このブログのサーバ証明書をECDSA証明書にした

タイトルの通り、このブログのサーバ証明書をRSA証明書からECDSA証明書に置換しました。 今更...って感じですが、意外と対応状況は半々って感じでした。 なんで更新した? 基本は以下記事を読了してもらえたらと思います。100%思いつきです。 ぶっちゃけ零細個人ブログなんて対応してなくて全然いいですが、まぁ面白そうなので試してみました そろそろECDSAサーバ証明書を導入してもいいかもしれないZennYosuke m 更新方法について このブログはCloudfrontでデプロイしており、証明書の管理はACMを利用しています。 ACMで発行できるキーアルゴリズムは以下の3つですが、Cloudfront側で対応しているのはRSA 2048とECDSA P 256のみです。 ※最初何も考えずECDSA P 384で発行したら使えなく詰みました RSA 2048 ECDSA P 256 ECDSA

· 3 min read
存在しないサブドメインにアクセスしたら問答無用で404ページを返すページをAWS amplifyで作る

存在しないサブドメインにアクセスしたら問答無用で404ページを返すページをAWS amplifyで作る

いきなりですが、適当なサブドメにアクセスすると404ページを返すようにしました。 特に理由や意味はありません。 https://hogehoge.hdserver.info/ https://higehige.hdserver.info/ 構成図 404ページ自体は静的ページなので、AWS amplifyでホスティングするようにしました。 コード成果物はcodecommitに格納していて、変更が入ったら自動でデプロイする仕組み(そうそう変更は入りませんが...) ちなcodecommit はメンテナンスモードに入っているので、今はじめるならGithubとかGitlabがええでしょうな。(Bitbucketはしらん) 作り方 1.適当な404ページを作成します。今回はcodepenからよさげなデザインのページを拝借してきました。 https://codepen.io/tag/404-page

· 3 min read
まともなリニューアルが終わった

まともなリニューアルが終わった

前回の記事「wordpressからghostに移行しました」と言いつつ、まともなレイアウトになってなかったので更新しました。 まーめんどかったね。しばらく触らん。とかいってもう1年前だけど。 最近あったことでも書きますかね。 わたくしYoutube Premiumというものに入っているのですが、いわゆるVPNを使ってインド人になりすまし、格安で契約するという悪用手法を使っておりまして。 【格安にする】インドVPNでYouTube Premiumに登録する手順を解説VPNでYoutube Premiumを格安で契約する手順 ExpressVPNなどのVPNサービスでインドのサーバーに接続 Youtubeにアクセスし、アカウント情報を設定 希望する料金プランを選択VPN BOXVPN GUIDE サービス規約的にかなりグレーな行為なのであまり声を大にして言えないのですが、結論インド人になると月額が以下の通りとなります。 プラン 日本 インド 差額 通常プラン 月額1,

· 7 min read
wordpressからghostに移行しました

wordpressからghostに移行しました

お久しぶりです。何百年ぶりでしょうか・・・w 直近の更新がサイトリニューアルでしたが、今回の記事もサイトリニューアルですw 変わったことといえば、今年で30歳を迎えたことでしょうか。。 このblogを始めたのが2016年なので7年くらい経ってるんですね 。早いものです。 Ghost: Independent technology for modern publishingBeautiful, modern publishing with newsletters and premium subscriptions built-in. Used by Sky, 404Media, Lever News, Tangle,

· 1 min read
[WIP]Seleniumを使って遷移監視ができるか検証してみた

[WIP]Seleniumを使って遷移監視ができるか検証してみた

Seleniumとは Webアプリケーション用テストツール。 ブラウザの操作をシミュレート(自動化)して、Webアプリケーションの画面周りの再帰試験(リグレッションテス> ト)を実施することができる。 Selenium2.0以降より、WebDriverというAPI、実装を使った実装に変わった。 WebDriver API を使うようになったので、テストのスクリプトコードも大きく変更された。 例えば、ブラウザからGoogleを開いて「Twitter」と検索。 検索結果からTwitterのサイトを開いてログインする…といったWEBの遷移を自動化できます。 Badboyよりメジャーかつ広く使われているツールですね。 検証内容 Badboyの代わりに監視に組み込めたら色々できるかもという発想の元、以下の流れで進めました。 1. 検証機にSeleniumをインストールする

· 1 min read
[WIP]Windows Server 2016を使ってHyper-Vレプリケーション設定

[WIP]Windows Server 2016を使ってHyper-Vレプリケーション設定

前回の投稿からおよそ1年空いてしまいましたが…。 自己学習回りをサボりまくっていたので久々に課題あげます。 仮想化ホストを冗長化してみようというテスト。 まずはHyper-Vのレプリケーション機能を使って最低限の冗長性を。 最低限なのでADとか使いません。 テスト環境 Windows Server 2016 + Hyper-Vを導入したサーバーを2台用意。 最低限のネットワークとしてHyperVで使用するホスト用と、サーバー間データ転送に使うストレージ用の2つのネットワークを作成。 今回の検証に当たりAWS Lightsail を利用しました。 Hyper-V1 Hyper-V2 ホスト名 harada satou FQDN harada.hyperv.local satou.hyperv.local eth0 192.168.

· 1 min read
サイトリニューアルしました

サイトリニューアルしました

もはや存在自体忘れてました。haradaです。 最後の投稿が2020年なので約2年ぶりの更新です。 仕事が忙しく更新が止まってしまってますが、なんとか生きております。 新しく投稿する課題がないので、とりあえずサイトリニューアルしておきます。 困ったらリニューアルしとけばいいんです。 次の更新はいつになるかなぁ、、

· 1 min read
AWS WAFを利用してCloudFrontのELBオリジンへ直接アクセスを制限してみた

AWS WAFを利用してCloudFrontのELBオリジンへ直接アクセスを制限してみた

こんぬつわ。だいぶ久しぶりの更新となります。 ELBの前段にCloudFrontを設置した環境では、CloudFrontとオリジンのELB間の通信はインターネット経由で行われます。 ELBのIPやDNS名を知った利用者による、CloudFrontを経由しないELBへの直接アクセスが望ましくない場合には、 CloudFrontのカスタムヘッダを利用したアクセス制限が可能です。 環境 * CloudFrontはカスタムオリジンとしてAWS東京リージョンのELBを指定 * ELBはALB(アプリケーションロードバランサ)を利用 * ALB配下のEC2、OSはAmazonLinux、Webサーバとして、httpd(Apache)をデフォルト状態で利用 * ALBの前段にAWS WAFを設置し、特定のCloudFrontを経由しないアクセスを禁止 やってみた ▼EC2つくる 今回はEC2のインスタンスタイプをt4g.nanoにしました。 最近リリースされたばっかなのでちょっと使いたかったのです。 検証で使うだけなのでスペックは最低限でOK

· 5 min read
Minecraft PE版のサーバを建てた話

Minecraft PE版のサーバを建てた話

今、夜勤の間で密かなブームとなっているMinecraft 一部界隈では「既にオワコン」と噂が流れている様ですが、私自体既にオワコンなので気にしません。 とりあえずMinecraftについての説明はここでは省きます。 サーバを建てて皆でプレイできたらいいね、という趣旨の元、覚書として残しておきます。 サーバーについて そもそもどうやってサーバを立てるの? サーバーを立てるといっても立て方はたくさんあります。 実際にどんなものがあるかあげてみます。 * PCとサーバーソフトを使ったサーバー(pmmpやNukkit、Jupiter、MiNETなど)を使ったもの * Androidのアプリ(BlueLight Appなど)を使ったもの * 代行 * MiRm * InstantMCPE * LEET うーん、さっぱりよくわからんけど 職業柄、

· 7 min read
StaticPressでhtmlが出力できない問題

StaticPressでhtmlが出力できない問題

WordPressを静的webサイトに変換してS3でホストする ちょっと前にアップしたWordpressをS3で運用する方法。 このまえ記事更新したらStaticpressがうまく動いてくれなかったのでその覚書。 事象 Staticpressから再構築をかけたところ、jsやcss、imgファイルなどはS3に転送されたものの htmlなどの記事ファイルが転送されなくなった。 原因 Staticpressはjsやcssなどのファイルは別フォルダにコピーしてS3にアップされるものの htmlなどの静的ファイルはPHPでクローリングしてからS3にアップされる仕様らしい。 Harada’s DiaryはApacheのバーチャルホスト上で稼働させているので LAN内から処理を実行すると、名前解決した時にGIP経由でループバックしてしまい うまくクローリングができず、htmlが生成されなかった模様。 ※EC2やVPS等、WANアクセスするものについては発生しない。 解決方法 サーバのhostsにドメインを記載しておけば、ループバックしてもア

· 1 min read
【3】プログラミング問題を予備知識なしで解いてみる企画

【3】プログラミング問題を予備知識なしで解いてみる企画

問題:Leet文字列 Leet と呼ばれるインターネットスラングがあります。 Leet ではいくつかのアルファベットをよく似た形の他の文字に置き換えて表記します。 Leet の置き換え規則はたくさんありますが、ここでは次の置き換え規則のみを考えましょう。 置き換え前 置き換え後 A 4 E 3 G 6 I 1 O 0 S 5 Z 2 文字列が入力されるので、これを Leet に変換して出力するプログラムを書いてください。 入力例1

· 1 min read