投稿者: manualmaton Page 74 of 256

Redmineの不正アクセス対策。(ufwと二段階認証)

概要

AWS Lightsailに構築しているRedmine。 不審なアクセスがあったので対応を行いました。

アクセスの内容

とてもシンプルに、チケットの新規発行画面に何回もアクセスしているというもの。

正規のリクエストなのでWAFでブロックされません。(解析システム:matomoで検知した次第です)

そもそも自分しかアカウントを用意していないため、この時点で不正アクセスの兆候だと判断。以下、対処を行います。

ufwでの処理

  • ufwによるブロック
sudo ufw deny from IPアドレス
# より確実を期すためにIPアドレスのネットワークアドレスを指定しました (xxx.xxx.xxx.0/24)
  • 設定確認
sudo ufw status numbered
# Anywhere DENY IN 上記で指定したIP/ネットワークアドレスを確認します
  • 設定反映
sudo ufw reload
# ファイアウォールを再読込しましたと出れば反映完了です

これでひとまず不審なアクセス元は遮断。

Redmineログイン強化

筆者が用いているRedmine4.2は二段階認証が標準で備わっていますので、それを有効化します。

  1. Redmineに管理者権限でログインします。
  2. 万一に備えて別のブラウザでもログインしっぱなしにします。
  3. 管理>設定>認証に移動します。
  4. 二段階認証を「必須」にして保存します。

その後、(別ブラウザでログインしたまま)Redmineにログイン。

後は二段階認証プロセス(Google認証システムを用いました)で指示に従ってQRコードを読み込み、生成されたコードを読み込むだけ。

ひとまず、これでID/PWによるログインに加えて認証システムの二段階で不正アクセスの被害を抑えます。

視認性、携帯性。(百均グッズによる医薬部外品の携帯)

話はこの写真を撮りに自転車に乗ったところから遡ります。

木々が茂るところに居たせいで蚊の餌食となりました。これに関しては予想し得たことへの備えがないと言うことで

  • 虫除けスプレー
  • 虫刺されの薬

などを次から携帯しようという方針になったものの、

  • 一つ一つがバッグに紛れてしまう
  • 他の荷物などで圧迫された場合に破損して薬剤が漏れる

等の懸念事項がありました。

そこで用意したのがこの、百均で売られているドリンクボトル。ネットの記事で、これに災害用品を入れるというのが脳裏をよぎったので試してみます。

まずはこれに入りそうな虫除け対策を選びます。

後は詰めていくだけ。

結果、こうなりました。

一番使うであろう虫除けスプレーはすぐに取り出せるようにして 処置ができるかゆみ対策は奥(底)の方に。

これなら、携帯性もバッチリですし、何が入っているかすぐに分かります。構造上(ある程度の)防水性も確保できるのもポイント。

何よりもパッケージ化されていることで準備の手間を大きく省けます。

growi v6.0.15 → v6.1.0へのバージョンアップ後の処理。

結論から始まる概要

「リリースノートはよく読んでおくこと」

です。

Growi v6.1.0の変更点

バージョンアップ後、今まで表示されていた画像がうまく表示されない問題点がありました。

どうしたものかと更新情報を読み返したら

https://docs.growi.org/ja/admin-guide/upgrading/61x.html#%E7%AE%A1%E7%90%86%E8%80%85%E5%90%91%E3%81%91

と思いっきり書かれておりました。

では、GrowiをインストールしたLinuxサーバで対処を行います。

前提

  • Growi v6.1.0にバージョンアップした
  • 添付ファイルをローカルに保存

が作業の前提です。また、

  • Ubuntu 20.04
  • ディレクトリは'/opt/growi'

となっています。

実施した手順

Growiインストールディレクトリに移動

cd /opt/growi/packages/app/public/uploads && pwd
# 上記ディレクトリにいることを確認します。

添付ファイルディレクトリを移動

sudo mv attachment /opt/growi/apps/app/public/uploads/
sudo mv user /opt/growi/apps/app/public/uploads/

移動確認

cd /opt/growi/apps/app/public/uploads/ && pwd
# 上記ディレクトリにいることを確認します。

ls -l attachment
ls -l user
# 移動したディレクトリがあることを確認します。

作業後の確認

バージョンアップ前に投稿した添付ファイルがある記事で、ファイルが表示されていることを確認しました。

視点の違い、視線の違い。

3年ぶりの一人旅は、様々な気づきがありました。

まず、一人旅かつ室内で過ごすということで

figmaライザを持っていったのがきっかけ。

この時に

  • 屋外で撮影するのもあり
  • そうすると構図が面白くなりそうだ

と気づき、室外撮りのいわゆる「オモ写」を試してみました。

結果はまずまず。

  • シチュエーションに合わせた背景は探せば見つかる。
  • やはり屋外は強力な光源「太陽」の恩恵に与れる。

の2点が収穫。

そこで、このチャレンジを水平思考してみました。「普段のフィギュア撮影、始点を更に下げてみて視線を変えたらどうなるか?」

の試しがこちら。

撮影スペースを低い位置に設置したことも功を奏し、新たに「見下ろす」構図ができあがりました。

スマートウォッチ、バンドの交換。

この記事から10日ほど――

装着して問題が発覚しました。

装着後の異変

まず、本体のシリコンバンドに汚れが目立つようになったこと。何よりもかぶれが発生してしまいました。

同じような悩みを持っている方は結構いらっしゃるようで(現に「シリコンバンド かぶれ」でGarminがトップに躍り出るほどです)

解決策:ナイロンバンド

そこで急遽注文したのはこのナイロンバンド。Instinct 2sのバンド幅「20mm」に沿ったものを購入しました。

バンドの取り外しは広げたクリップの先を用いました。

そして、先のバンドと付け替え。

付け替えは割とスムーズに行うことができました。

  • シリコンと違って伸びないので調節に難あり
  • その分、ベルクロによる無段階の微調整が可能
  • 軽い

のが最初の印象。

生活習慣を改めるため購入を決意したスマートウォッチ。長く使い続けるための工夫を行いました。

ペンケース、パンケース。

かなり「刺さる」グッズを入手です。

見た目はコッペパン。パッケージもそれっぽいのですが

よく見ると「消費期限」ではなく「使用期限」と書かれています。

封を開けるとファスナーであり、

このように、ペンケースとなっている次第。

尤も、パンの見た目やふわっと感を強調しているためにあまりペンを入れることができません。容量を増やすには中を切って詰め物を抜く作業が別途必要でしょう。

とはいえ、いちごジャムのチャームなどの心憎い演出もありますので、

室内撮りの背景として使うのが良さそうです。

Redmineによる旅の準備とフィードバック。

Redmineコメントのテンプレート

個人的に用いているRedmine。一つのチケットにコメントを連ねていくことで、準備や事前情報などを系統立てて表示させることができます。

そこで「携行品はある程度傾向があるから、テンプレートプラグインで管理できそうだ」

と、こういう風にコメントテンプレートで管理。

しかし、ここに落とし穴がありました。

想定の漏れ

これは家族に言われて気づいたことです。

  • 東京都心と山間は気温がまるで違うこと
  • 温泉の湯冷め

などを全く考慮していませんでした。思い直してリパッキング。

この状況もチケットに書き足していきます。

そうして、旅の途上での出来事も次々に書いていき、

デブリーフィング

もチケット自体に記載。

こうして、旅自体を振り返りながら

  • 何をミスっていたか
  • 次はどうすれば良いか
  • 印象に残っていたことは

なども気軽に書けるので、そこは、Redmineを運用して良かったと思ったわけで。

growi v6.0.15 → v6.1.0へのバージョンアップでハマったこと。

概要

日々の記録に、ブログ/redmineの下書きに、思考の整理にと役立っているgrowi。

https://github.com/weseek/growi/releases/tag/v6.1.0

で、growiの新しいバージョンを確認したので実施しましたが、ハマりましたのでメモとして残します。

アップデートした環境

  • growi 6.0.15
  • Ubuntu 20.04
  • mongodb 4.4.13
  • node 14.21.3 (後述するバージョンアップによりv18.16.0)

また、以下を実施済みです。

実施手順

https://atelier.reisalin.com/projects/zettel/knowledgebase/articles/28

こちらに沿って実施しました。

  1. growiのサービスを停止します。
  2. gitコマンドで最新版を引っ張ります。
  3. アップグレードを行います。
  4. growiのサービスを再開します。
  5. アップグレードされたことを確認します。

ハマったこと1:nodeのバージョンが合わない

  • 実行コマンド
sudo yarn
  • エラー
[1/5] Validating package.json...
error growi@6.1.0: The engine "node" is incompatible with this module. Expected version "^16 || ^18". Got "14.21.3"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

とあったので、nodeのバージョンアップが必要でした。

ハマったこと1への対処

以下の記事で、最新安定版のnode.jsに差し替えました。

https://manualmaton.com/2023/03/15/

nodeのアップデート後、正常にyarnを行うことができました。

ハマったこと2: 起動スクリプトが動作しない。

sudo systemctl start growi.service

を実行しても起動せず。

systemctl status growi.service

で状況を確認します。

/bin/sh: 1: turbo: not found

というエラーが出ました。

ハマったこと2への対処

1への対処時、付随するnpmパッケージを削除したことが原因です。

sudo npm install -g turbo

として、再度

sudo systemctl start growi.service

を実行。

systemctl status growi.service

起動を確認しました。

実行後

このバージョンアップは是が非でも行いたいものでした。

なぜなら、念願のmermaid.jsが実装されたからです。

これで、別のアプリを起動せず、growiのみでのmermaid記法が楽になりました。

mermaid.jsによる『ライザのアトリエ3』シーケンス図。(序盤のネタバレあり)

概要

2021年から愛用しているmermaid.js。

  • 可読性が高く
  • markdownとの親和性が高く
  • 再利用もしやすい

ため、ゲーム『ライザのアトリエ3』の序盤をシーケンス図にしてみました。

凡例

  • 【】内:メインクエスト
  • 〔〕内:ランドマーク名
  • “”内:素材
  • 《》内:調合アイテム

としています。

シーケンス図

sequenceDiagram participant mq as メインクエスト participant lm as ランドマーク/アトリエ participant sy as 調合 note over mq: In: ライザ/ボオス/タオ note over mq: チュートリアル戦闘 mq->>+lm:【錬金術士ライザの日々】開始 note over lm: 〔隠れ家前〕<br>via クーケン港 note over mq,lm: 探索チュートリアル note over lm: 〔彩花の円環〕 note over lm: 〔隠れ家のアトリエ〕 lm->>+sy: 調合開始 note over mq,sy: チュートリアル調合 note over sy: 《グラスビーンズ》調合 sy-->>-lm: 調合完了 note over lm:〔尖塔の貯水池〕 lm-->>-mq: 【錬金術士ライザの日々】完了 note over mq,lm: ファストトラベル解放 opt note over lm: 〔(クーケン島各所)〕解放 end par 【アガーテの依頼】 note over lm:クーケン港<br>via〔魔石の灯台〕 mq->>+lm:【アガーテの依頼】受諾 note over mq: チュートリアル<br>スキルツリー opt 材料が足りない場合 note over lm: 〔彩花の円環〕 end note over lm: 〔隠れ家のアトリエ〕 lm->>+sy: 調合開始 note over sy:《インゴット》調合<br>《オニキスブレード》調合 sy-->>-lm: 調合完了 note over lm:<br>〔魔石の灯台〕 lm-->>-mq: 【アガーテの依頼】完了 and 【古老の苦労】 note over lm:〔尖塔の貯水池〕 mq->>+lm:【古老の苦労】受諾 note over mq: 超特性解放 note over lm:〔彩花の円環〕 note over mq,lm: チュートリアル<br>メンバー切り替え note over lm:〔尖塔の貯水池〕 lm-->>-mq: 【古老の苦労】完了 end mq->>+lm: 【島の異変】開始 note over lm:〔ライザの家〕 note over mq, lm: ライザの家で休息 lm->>+sy: 調合開始 note over lm: 〔隠れ家のアトリエ〕 note over sy: 《薪割り斧》調合 sy-->>-lm: 調合完了 note over mq, lm: 斧で採取<br>“丈夫な丸太”<br>〔彩花の円環〕 note over lm: 〔隠れ家のアトリエ〕 lm->>+sy: 調合開始 note over sy:《軽くて丈夫なクワ》調合 sy-->>-lm: 調合完了 note over lm:〔ライザの家〕 lm-->>-mq: 【島の異変】完了 mq->>+lm: 【母の憂い】開始 note over lm:〔ライザの家〕 lm-->>-mq: 【母の憂い】完了 mq->>+lm: 【久々の再会】開始 note over lm: クーケン港<br>via〔魔石の灯台〕 note over mq: In: クラウディア/レント note over lm: 〔浮上装置の動力炉〕 note over mq: Out: ボオス note over lm: 〔隠れ家のアトリエ〕 lm->>+sy: 調合開始 note over sy: 《フラム》調合 sy-->>-lm: 調合完了 note over mq: コアアイテム解放 lm-->>-mq: 【久々の再会】完了

今後の展望

こちらのシーケンス図、『ライザのアトリエ3』4周目の課題として都度、別サイトに起こしていきます。

https://atelier.reisalin.com/versions/23

開封&装着。(熊の爪キーホルダー)

今回の旅行での収穫です。

こちらの道の駅でお土産を物色中に見つけました。

「熊の爪」キーホルダー

熊の爪キーホルダー。

3080円と思ったよりも高かったものの、

  • 地元のハンターが実際に仕留め
  • キーホルダーとして加工

という希少性や見た目に惹かれて購入。帰宅して、早速の開封です。

開封

毛先はかなり鋭く、多少の水は軽く弾くという印象。(生来のものか加工によるものかは不明)

爪先は鋭く、引っかけやすい形状をしているのために、獲物を引き裂くのは容易いだろうなと想像です。

装着

そんなキーホルダー、ペンケースに取り付けました。ペンケースの革やキャンバス地に結構合います。また、このペンケースを取り出す度に今回の温泉やらを思い出せるので記憶のトリガーとしてもナイス。

Page 74 of 256

Powered by WordPress & Theme by Anders Norén