Ubuntu24.04で、ワイルドカードSSL証明書をLet’s Encrypt(certbot)で発行する手順メモ。

筆者にとってこの作業は当たり前すぎていたため、メモを残すのを失念していました。

概要

Webサイトを公開する際に必須と言っていいSSL証明書を、Let's Encrypt(certbot)を用いて無料で発行する手順です。

今回用意するのはワイルドカード証明書です。

「*.example.com」という証明書を取得することで、

  • aaa.example.com
  • bbb.example.com
  • supercalifragilisticexpialidocious.example.com

など、サブドメインすべてに有効な証明書を1回で発行できます。

実施環境

  • Ubuntu 24.04

前提条件

  • ワイルドカー証明書を発行したいドメインに対してDNSの操作が行えること
    • できない場合は本手順そのものを無視してください。
  • 備考として、別サーバでも配布しやすいように、オリジナルの/etc/letsencrypt/live/ではなく、任意の作業ディレクトリに証明書一式を保存する運用を行っています。
  • 別サーバへの配布の際は注意してください。

さっくりとした手順

  1. certbotをインストールします。
  2. certbotでワイルドカード証明書を発行します。
  3. 証明書を発行します。
  4. 所定の位置に格納します。

certbotインストール

※すでにcertbotがインストール済の場合は、この手順はスキップして構いません。

  • snapによるインストール
sudo snap install --classic certbot
  • コマンド化
sudo ln -s /snap/bin/certbot /usr/bin/certbot
  • コマンド確認
which certbot

/usr/bin/certbotを確認します。

root昇格

性質上、rootで実行します。操作は慎重に行ってください。

sudo su -

作業ディレクトリ作成

  • ディレクトリ作成
mkdir /hoge/example.com_ssl$(date +%Y%m)

任意のディレクトリを指定します。$(date +%Y%m)オプションをつけているのは、Let's Encryptの有効期限が90日間と短いため、定期的に更新するためです。

  • ディレクトリ移動
cd /hoge/example.com_ssl$(date +%Y%m) && pwd

指定したディレクトリにいることを確認します。

ワイルドカード証明書の手動発行

※ ドメイン名やメールアドレスの打ち間違いは特に注意してください。このコマンドをコピー&ペーストし、自分のドメインやメールアドレスで間違いないように確認後に発行してください。

certbot certonly --manual \
    --preferred-challenges dns \
    --server https://acme-v02.api.letsencrypt.org/directory \
    -m あなたの有効なメールアドレス@example.com \
    -d "*.example.com" \
    -d "example.com"
  • --manualモードは非自動化のため、証明書更新のたびに手動でTXTレコード登録が必要です。自動化したい場合はDNS API対応のプラグインを検討してください(例:certbot-dns-cloudflare)。
  • certonly は証明書の取得だけを行い、Webサーバ設定などには手を加えないモードです。

以下のように実施します。

  1. コマンド発行後、TXTレコードの登録指示があります。
  2. 管理しているDNSサーバにて、指示があったTXTレコードを登録します。
  3. 以下のコマンドで結果が返ってくるまでしばらく待ちます。
nslookup -type=TXT _acme-challenge.example.com

→ 結果が返ってきたらEnter。証明書が作成されます。

証明書一式を作業ディレクトリにコピー

  • 証明書を作業ディレクトリにコピー
cp -pi /etc/letsencrypt/live/example.com/fullchain.pem ./example.com.crt.$(date +%Y%m)

※root権限のためsudoを用いないことに注意

  • 秘密鍵を作業ディレクトリにコピー
cp -pi /etc/letsencrypt/live/example.com/privkey.pem ./example.com.key.$(date +%Y%m)

(通例、証明書はroot権限でしか読めないように制限されています。読み取り時は注意してください)

証明書の整合性を確認

  • 90日の有効期限であることを確認します。

以下、自分が発行したドメインに基づく証明書や秘密鍵に読み替えます。

openssl x509 -noout -dates -subject -in example.com.crt.$(date +%Y%m)
notBefore=May 17 04:35:55 2025 GMT
notAfter=Aug 15 04:35:54 2025 GMT

のように90日間であることを確認します。

  • 確認1. 証明書から公開鍵データを確認
openssl x509 -pubkey -in example.com.crt.$(date +%Y%m) -noout | openssl md5
  • 確認2. 秘密鍵から公開鍵を取得
openssl pkey -pubout -in example.com.key.$(date +%Y%m) | openssl md5

→ 確認1/確認2で出てきた公開鍵のハッシュ値が一致していればOKです。

  • 証明書のチェーンを確認
openssl crl2pkcs7 -nocrl -certfile example.com.crt.$(date +%Y%m) | openssl pkcs7 -print_certs -outform PEM | awk 'BEGIN {c=0;} /BEGIN CERTIFICATE/ {c++} { print > "cert" c ".pem"}' && openssl verify -CAfile cert2.pem cert1.pem
openssl verify -CAfile cert2.pem cert1.pem
cert1.pem: OK

となることを確認します。

確認後、

exit

でrootから抜けます。

証明書の配置

※Let's Encryptは3ヶ月(90日)しか有効期限がありません。

そこで、証明書更新の際にApacheの設定ファイルを修正することなく行えるように、証明書/秘密鍵ファイルにシンボリックリンクを張り、ファイル名.202507等とすることで「最後に発行したのはいつか」を確認します。

ディレクトリを作成します。

sudo mkdir /etc/certs

証明書を格納するディレクトリです

sudo mkdir /etc/private

秘密鍵を格納するディレクトリです

ディレクトリに証明書と秘密鍵を格納します。

  • SCPやSFTPでアップロードして対象ディレクトリに配置する
  • Let's Encryptなどで作成したファイルをそれぞれ対象ディレクトリにコピー/移動する

など、適当な方法を用います。(割と効率的なのがcatでファイル内容を開き、それを別サーバに貼り付ける方法です)

秘密鍵格納後、

sudo chmod 600 /etc/private/hoge.sample.com.key.202507

として、アクセス権を厳密にします。

上記、取得した*.example.comの証明書と秘密鍵を

  • /etc/certs (証明書)
  • /etc/private (秘密鍵)

に格納したとして手順を進めます。

証明書のシンボリックファイルを作成します。

cd /etc/certs && pwd

/etc/certsにいることを確認

sudo ln -sf hoge.sample.com.crt.202507 hoge.sample.com.crt
ls -l hoge.sample.com.crt

リンクの向き先がhoge.sample.com.crt.202507であることを確認します。

lrwxrwxrwx 1 root root     31  7月  2 14:35 hoge.sample.com.crt -> hoge.sample.com.crt.202507

秘密鍵のシンボリックファイルを作成します。

cd /etc/private && pwd

/etc/privateにいることを確認

sudo ln -sf hoge.sample.com.key.202507 hoge.sample.com.key
ls -l hoge.sample.com.key

リンクの向き先がhoge.sample.com.crt.202507であることを確認します。

後は、お使いのWebサーバに適用していきます。この方式であれば、

SSLCertificateFile 【/etc/certs/hoge.example.com.crt】
# SSL証明書を指定します
SSLCertificateKeyFile 【/etc/private/hoge.example.com.key】
# 秘密鍵を指定します

とすることで、.confファイルをいじることなく更新作業を行えます。

以下、Redmineでの設定例です。

https://atelier.ryza.jp/projects/zettel/knowledgebase/articles/20

Ubuntu 24.04にMatomoをインストール

概要

オープンソースの解析システムであるMatomoをインストールしたときのメモです。

  • Google Analysticにお金を払う余裕がない
  • WordPressのアクセス解析Jetpackは重い

ということで運用しました。

以前のメモがUbuntu 20.04のインストールだったので、こちらを改めて書き起こしています。

参考としたURL

注意点

リアルタイムでアクセスする性質上、PVが非常に多いWebサイトではサーバ自体の冗長化構成が必要です。(上記URL参照)

筆者のサイトは10万ページ/月に満たないので、そこそこのスペックで運用できています。

前提

既に以下のシステムがWAN環境に揃っていること。

  • Ubuntu 24.04
  • Apache 2.4
    • mod_ssl
    • mod_rewrite
    • mod_header
    • ※実行ユーザーはwww-dataです。
  • mysql 8.3
  • PHP 8.3 → インストール方法
    • 必須の拡張機能(curl, gd, mbstring, mysql等)が有効になっていること。
  • ドメインで名前解決できること。
  • ドメインに沿った証明書があること。

さっくりとした手順

  1. MySQLのDBとユーザを作成します。
  2. ディレクトリにmatomoプログラムを配置します。
  3. Apache設定ファイルを作成します。
  4. matomoサイトにログインできることを確認します。
  5. matomo Web画面で初期設定をおこないます。

データベースを作成します。

  • MySQLログイン
sudo mysql -u root -p
  • DB作成
CREATE DATABASE IF NOT EXISTS matomo CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

DB名は自分の環境に合わせます。

  • DBユーザー、パスワード設定
CREATE USER 'matomo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YOUR_STRONG_PASSWORD';

DBユーザーは自身の環境に合わせます。パスワードはポリシーに沿って強固なものを設定してください。

  • DBユーザーに作成したDBへの権限を付与
GRANT ALL PRIVILEGES ON matomo.* TO 'matomo'@'localhost';
  • DB作成確認
mysql -u matomo -p

DB名・ユーザー名は適宜自分が設定したものに読み替えてください。

  • DB確認
SHOW DATABASES;

作成したDBがあることを確認します。

EXIT

MySQLコンソールから抜けます。

matomoプログラムをディレクトリに配置します。

  • 保存用ディレクトリに移動
cd /hoge &&pwd

自分の環境に合わせます。

  • プログラムダウンロード
wget https://builds.matomo.org/matomo-latest.zip
  • ZIP展開
unzip matomo-latest.zip
  • ディレクトリの所有者変更
sudo chown -R www-data:www-data matomo

ディレクトリ一式をApache実行ユーザー(www-data)に修正します。

  • プログラム実行権に移動
sudo mv matomo /home/www-data/

自分の環境に合わせます。(筆者環境は/home/www-data/matomo で動かします)

ls -ld /home/www-data/matomo

該当ディレクトリにファイル一式があることを確認します。

Apache設定ファイルを作成します。

【】内を自分の環境に合わせます。
コマンド一式をコピー → 別のエディタにペースト
その後、【】内を自分の環境に修正してコピー
コマンド一式をSSHクライアントに貼り付ける

cat <<- __EOF__ | sudo tee  /etc/apache2/sites-available/matomo.conf > /dev/null
<VirtualHost _default_:80>
ServerName 【設定したドメイン名】
 RewriteEngine On
        RewriteCond %{HTTPS} off
        RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>

<VirtualHost *:443>
    ServerName 【設定したドメイン名】
    CustomLog 【/var/log/matomo/matomo_access.log combined】
    ErrorLog 【/var/log/matomo/matomo_error.log】
    # アクセスログとエラーログは自分の環境に合わせて設定します。

    DocumentRoot 【/home/www-data/matomo】
    <Directory 【/home/www-data/matomo】>
    # DcoumentRootとDirectoryは自分の環境に合わせて設定します
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>

#SSL設定
  SSLEngine on
    Protocols h2 http/1.1
  # SSLを有効化します

SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1 -TLSv1.2
#TLS1.3に対応していないクライアントがアクセスする場合は以下を用います
#SSLProtocol -ALL +TLSv1.2 +TLSv1.3
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
SSLHonorCipherOrder     off
SSLSessionTickets       off

SSLUseStapling On
SSLStaplingCache "shmcb:/var/run/apache2/ssl_stapling(32768)"
# 2025年5月よりLet's EncryptはSSL Staplingに伴うOCSPを廃止しました。そのため、証明書をLet's Encryptにしている場合は上記2行をコメントアウトし、代わりにこちらを用いてください。
# SSLUseStapling Off

SSLCertificateFile 【/etc/certs/example.com.crt】
# SSL証明書を指定します
SSLCertificateKeyFile 【/etc/private/example.com.key】
# 秘密鍵を指定します

# SSLCACertificateFile 【/etc/certs/example.com.CA.crt】
# 中間証明書が発行元から別ファイルで提供されている場合は、この直上をコメントアウトして中間証明書を指定します

#セキュリティヘッダー付与

    Header always set Strict-Transport-Security "max-age=63072000"
    Header always set X-Content-Type-Options "nosniff"
    Header always set X-Frame-Options "SAMEORIGIN"
    Header always set X-XSS-Protection "1; mode=block"

    # Matomo: 機密情報が含まれるディレクトリへの直接アクセスを禁止
    <DirectoryMatch "/(config|core|lang|tmp|vendor)">
        Require all denied
    </DirectoryMatch>

    # Matomo: .ini や .json といった設定ファイルへの直接アクセスを禁止
    <FilesMatch "\.(ini|json)$">
        Require all denied
    </FilesMatch>

</VirtualHost>
__EOF__
  • ファイル作成確認
ls -l /etc/apache2/sites-available/matomo.conf

ファイルがあることを確認します。

Apache設定を反映します。

  • .conf読み込み
sudo a2ensite matomo.conf
  • 設定確認
sudo apache2ctl configtest

Syntax OKを確認します

  • Webサービス再起動
sudo systemctl restart apache2.service
  • Webサービス再起動確認
sudo systemctl status apache2.service
  • ブラウザ表示確認。

ブラウザで

https://【matomoを設定したドメイン名】

にアクセスし、初期画面が出ることを確認します。

初期インストール画面の設定

  1. 初期インストール画面が出たら「次へ」をクリックします。
  2. 全てチェックされていることを確認して「次へ」をクリックします。
◎データベースを設定します。
  • ログイン: MySQLのユーザー(matomo)
  • パスワード: 設定したパスワード
  • データベース名:作成したDB (matomo)

をそれぞれ入力し、「次へ」をクリックします。正常に入力されれば「テーブルを作成されました」と出るので「次へ」をクリックします。

◎スーパーユーザーを設定します。
  • スーパーユーザーログイン:ログインするユーザー名
  • パスワード:ログイン時のパスワード
  • パスワード(再入力)
  • メールアドレス

をそれぞれ入力して「次へ」をクリックします。

◎アクセス解析を行うウェブサイトを設定します。
  • アクセス解析対象のウェブサイトの名前
  • ウェブサイトのURL (このmatomoサイトではなく、アクセス解析を行いたいWebサイト)
  • ウェブサイトのタイムゾーン
  • eコマースか否か

を設定して「次へ」をクリックします。

これらを設定後、トラッキングタグが表示されます。これらを控えて「次へ」をクリックします。

「おめでとうございます!」と表示されればインストールの一連の作業は完了します。

Ubuntu24.04にGrowi2.7.8をインストール。(2025年7月版)

何度か書いているGrowiのインストール(Docker不使用)。

手順を色々見直して2025年7月版としました。

概要

Growi v7.2.8のインストールメモです。

MongoDBの関係もあり、インストールするCPUを選びます。

環境

  • Ubuntu 24.04
  • Apache 2.4

の基本的な設定が済んだという状況です。

前提

  • 名前解決できるドメインが用意されている。
  • そのドメインに応じた証明書が用意されている。

さっくりとはならない手順

  1. 必要なパッケージをインストールします。
  2. nvmをインストールします。
    • nvm経由でnode,npm,pnpmをインストールします。
  3. Redis-serverをインストールします。
  4. Javaをインストールします。
  5. ElasticSearch 8をインストールします。
    • ElasticSearchの設定変更を行います。
    • ElasticSearchのプラグインをインストールします。
    • ElasticSearchの設定変更を反映します。
  6. MongoDBをインストールします。
    • MongoDBのデータ格納先を変更します。(オプション)
    • MongoDBの設定変更を反映します。(オプション)
  7. Growiのインストールを行います。
    • pnpmを用いてインストールします。
    • アプリのビルドを行います。
  8. 自動起動のスクリプトを作成します。
  9. Apacheのリバースプロキシの設定を行います。
  10. ブラウザで初期インストールを行います。

手順

筆者の好みでaptitudeを用いています。適宜、aptに読み替えてください。

必要なパッケージのインストールを行います。

  • git, buildツールなど
sudo aptitude install build-essential git git-lfs apt-transport-https

v7.1系で`git-lfsを入れないとgit-cloneでビルドが行えなかったので、その名残です。

nvmインストール

  • root昇格

※growiをroot権限で実行するため

sudo su -
  • nvmインストールスクリプトの実行
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
  • nvm環境の有効化と確認
export NVM_DIR="$HOME/.nvm" 
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" 

一度セッションを切り、再度sudoを行いました。

nvm --version

0.39.7と表示されることを確認。

(まだrootです)

  • nvm経由でNode.jsをインストール

npm@11.4.0と互換性があるNode.jsをインストールします。

nvm install v20.19.2
  • Node.jsバージョンの使用とデフォルト設定
nvm use v20.19.2
nvm alias default v20.19.2
  • Node.jsバージョン確認
node -v

v20.19.2を確認

npm -v

10.7.0を確認

  • npmのインストール
npm install -g npm@11.4.0
  • npmバージョン確認
npm -v

11.4.0を確認

  • pnpmインストール
npm install -g pnpm
  • pnpmバージョン確認
pnpm -v

10.11.0を確認

  • rootから抜ける
exit

redis-serverをインストールします。

  • インストール
sudo  aptitude install redis-server
  • 起動確認
systemctl status redis-server

active(running)を確認します。

  • 自動起動有効化
sudo systemctl enable redis-server

Javaをインストールします。

  • インストール
sudo aptitude install openjdk-17-jdk

Elasticsearchをインストールします。

  • gpg追加
sudo wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
  • レポジトリ追加
sudo echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
  • パッケージのアップグレード
sudo aptitude update
  • ElasticSearchインストール
sudo aptitude install elasticsearch

※この後、デフォルトパスワードが表示されますが、控えておく程度にしましょう。

JVM設定変更
  • バックアップディレクトリ作成
sudo mkdir /etc/elasticsearch/old

※任意のバックアップディレクトリを指定します。

  • 設定ファイルバックアップ
sudo cp -pi /etc/elasticsearch/jvm.options /etc/elasticsearch/old/jvm.options.$(date +%Y%m%d)
  • 設定ファイル書き換え
echo -e "-Xms256m\n-Xmx256m" | sudo tee -a /etc/elasticsearch/jvm.options
  • 書き換え確認
sudo diff -u /etc/elasticsearch/old/jvm.options.$(date +%Y%m%d) /etc/elasticsearch/jvm.options
  • 差分
+-Xms256m
+-Xmx256m
ElasticSearchの設定変更

※この作業も管理者権限で実行します。

  • root昇格
sudo su -
  • 設定ファイルバックアップ
cp -pi /etc/elasticsearch/elasticsearch.yml /path/to/backup/elasticsearch.yml.$(date +%Y%m%d)

任意のバックアップディレクトリを指定します。

  • ファイル書き換え
sed -i -e 's/xpack.security.enabled: true/xpack.security.enabled: false/' \
       -e '/xpack.security.http.ssl:/{n; s/  enabled: true/  enabled: false/}' \
       -e '/xpack.security.transport.ssl:/{n; s/  enabled: true/  enabled: false/}' /etc/elasticsearch/elasticsearch.yml
  • 差分確認
diff -u /path/to/backup/elasticsearch.yml.$(date +%Y%m%d) /etc/elasticsearch/elasticsearch.yml
  • 差分
 # Enable security features
-xpack.security.enabled: true
+xpack.security.enabled: false

 xpack.security.enrollment.enabled: true

 # Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
 xpack.security.http.ssl:
-  enabled: true
+  enabled: false
   keystore.path: certs/http.p12

 # Enable encryption and mutual authentication between cluster nodes
 xpack.security.transport.ssl:
-  enabled: true
+  enabled: false
  • rootから抜ける
exit
ElasticSearchのプラグインを追加
  • analysis-kuromoji インストール
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-kuromoji
  • analysis-isu インストール
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-icu
自動起動設定反映
  • 起動
sudo systemctl start elasticsearch
  • 起動確認
systemctl status elasticsearch

active(running)を確認します。

  • 自動起動有効化
sudo systemctl enable elasticsearch

MongoDBインストール

レポジトリ追加

  • 必要パッケージインストール
sudo aptitude install gnupg
  • gpg追加
curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc | \
   sudo gpg -o /usr/share/keyrings/mongodb-server-6.0.gpg \
   --dearmor
  • レポジトリ追加
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-6.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
MongoDBインストール
  • パッケージのアップグレード
sudo aptitude update
  • MongoDBインストール
sudo aptitude install mongodb-org
保存先変更(オプション)

MongoDBの格納先を、冗長化構成されているパーティションにするため対応しました。

本設定の要注意点

MongoDBは、その性質上、頻繁にファイルの書き換えを行います。そのため、ブロックストレージのような「データ削除ポリシー」が明記されているネットワークストレージに、保存パーティションを指定してはいけません。(筆者はそれで痛い目に遭いました)

本設定が必要な場合は、同じサーバ上の、SSDで行いましょう。

  • 格納ディレクトリ作成
sudo mkdir /home/mongodb

保存先を変えたいところにします

  • 所有者変更
sudo chown -R mongodb:mongodb /home/mongodb
  • 所有者変更確認
ls -ld /home/mongodb
  • 設定ファイルのバックアップ取得
sudo cp -pi /etc/mongod.conf /path/to/backup/mongod.conf.$(date +%Y%m%d)

任意のバックアップディレクトリを指定します。

  • バックアップ確認
sudo diff -u /etc/mongod.conf /path/to/backup/mongod.conf.$(date +%Y%m%d)

バックアップが保存されたか、差分がないことで確認します。

  • ファイル書き換え
sudo sed -i 's/dbPath: \/var\/lib\/mongodb/dbPath: \/home\/mongodb/' /etc/mongod.conf
  • 差分確認
sudo diff -u /path/to/backup/mongod.conf.$(date +%Y%m%d) /etc/mongodb.conf
  • 差分
-  dbPath: /var/lib/mongodb
+  dbPath: /home/mongodb
自動起動有効
  • mongodサービス起動
sudo systemctl start mongod
  • サービス起動確認
systemctl status mongod

active (running)を確認します

  • 自動起動有効化
sudo systemctl enable mongod

Growiインストール

  • git clone
sudo git clone https://github.com/weseek/growi /home/www-data/growi

※任意のディレクトリを指定します。

  • ディレクトリ移動
cd /home/www-data/growi && pwd

先ほどcloneしたディレクトリです。

  • チェックアウト
sudo git checkout -b v7.2.8 refs/tags/v7.2.8

2025/06/30時点での最新リリースです

  • pnpmによるインストール
sudo pnpm install

CPUのスペックによっては相当な時間がかかります。

  • ビルド
sudo npm run app:build
必要であればlfs pull
  • lfs pull
sudo git lfs pull

→ v6.1で必要なコマンドでした。v7でビルドできない場合に試してください。

やはり時間がかかります。

自動起動スクリプトの作成

  • systemd作成
cat <<- __EOF__ | sudo tee -a /etc/systemd/system/growi.service
[Unit]
Description = growi
After=network-online.target mongod.service
After=network.target elasticsearch.service
ConditionPathExists=【/home/www-data/growi】

[Service]
ExecStart=【/home/www-data/growi/】growi-start.sh
Restart=no
Type=simple

[Install]
WantedBy=multi-user.target
__EOF__

※【】内を、git cloneしたディレクトリにします。

  • Growiインストールディレクトリに作成
  • 教義・信仰に沿ったエディタで作成します。
  • ファイル名:growi-start.sh
  • growiを配置したディレクトリ内に作成します。
#!/bin/bash

# NVM environmentをロード (NVM_DIRを直接指定)
export NVM_DIR="/root/.nvm" # $HOMEの代わりに直接パスを指定
if [ -s "$NVM_DIR/nvm.sh" ]; then
  \. "$NVM_DIR/nvm.sh"  # nvmをロード
  # 次の行でスクリプト実行時のnodeとnpmのバージョンをログに出力
  echo "NVM for GROWI startup script loaded. Using Node version: $(node -v), npm version: $(npm -v)" > /tmp/growi_nvm_load.log
else
  # NVMが見つからない場合もログに出力
  echo "NVM_DIR ($NVM_DIR) not found or nvm.sh not found for GROWI startup script." > /tmp/growi_nvm_load.log
fi

cd 【/home/www-data/growi】
NODE_ENV=production \
AUDIT_LOG_ENABLED=true \
FORCE_WIKI_MODE=private \
MONGO_URI=mongodb://localhost:27017/growi \
ELASTICSEARCH_URI=http://localhost:9200/growi \
REDIS_URI=redis://localhost:6379 \
PASSWORD_SEED=[任意の文字列] \
npm run app:server

[任意の文字列]は推測されないような英数字+記号を指定します。

  • 権限変更
sudo chmod +x /home/www-data/growi/growi-start.sh
  • systemd設定反映
sudo systemctl daemon-reload
  • growi有効化
sudo systemctl start growi.service
  • growi有効化確認
systemctl status growi.service

active(running)を確認

  • 自動起動有効化
sudo systemctl enable growi.service

Apacheによるリバースプロキシの設定

  • モジュールインストール
sudo a2enmod proxy_http proxy_wstunnel rewrite header
  • apache再起動
sudo systemctl restart apache2.service
  • ログ保存ディレクトリ作成
sudo mkdir /var/log/growi/
  • 所有者変更
sudo chown -R www-data:www-data /var/log/growi
  • 設定ファイル作成
cat <<- __EOF__ | sudo tee -a /etc/apache2/sites-available/growi.conf
<VirtualHost _default_:80>
    ServerName 【hoge.example.com】
    # ドメイン名を指定します
    RewriteEngine On
        RewriteCond %{HTTPS} off
        RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
# HTTPアクセスを強制的にHTTPSにリダイレクトします
</VirtualHost>

<VirtualHost _default_:443>
    ServerName 【hoge.example.com】
    # ドメイン名を指定します
    CustomLog /var/log/growi/growi_access.log combined 
    ErrorLog /var/log/growi/growi_error.log

#SSL設定
  SSLEngine on
    Protocols h2 http/1.1
SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1 -TLSv1.2
#TLS1.3に対応していないクライアントがアクセスする場合は以下を用います
#SSLProtocol -ALL +TLSv1.2 +TLSv1.3
SSLCipherSuite          ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384
SSLHonorCipherOrder     off
SSLSessionTickets       off

SSLCertificateFile 【/etc/certs/hoge.example.com.crt】
# SSL証明書を指定します
SSLCertificateKeyFile 【/etc/private/hoge.example.com.key】
# 秘密鍵を指定します

    # Header に Host: example.com を追加するため
    ProxyPreserveHost On
    # HTTPS利用時: Header に x-forwarded-proto: https を追加するため
    RequestHeader set x-forwarded-proto 'https'
    # Apache では static assets で 304 が返らないことがあるので ETag を無効化する
    <ifModule mod_headers.c>
            Header unset ETag
    </ifModule>

FileETag None 

<FilesMatch "\.(js|css|png|jpg|gif|svg|woff2?)$">
    Header set Cache-Control "public, max-age=31536000, immutable"
</FilesMatch>

# リバースプロキシー設定
RewriteEngine on
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteRule /(.*) ws://localhost:3000/$1 [P,L]

ProxyPass        / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/


#セキュリティヘッダー付与

    Header always set Strict-Transport-Security "max-age=63072000"
    Header always set X-Content-Type-Options "nosniff"
    Header always set X-Frame-Options "SAMEORIGIN"
    Header always set X-XSS-Protection "1; mode=block"
</VirtualHost>
__EOF__

【】内を自分の環境に変更してください。

  • 設定反映
sudo a2ensite growi.conf
  • コンフィグ確認
sudo apache2ctl configtest

Syntax OKを確認します。

  • Apache2再起動
sudo systemctl restart apache2.service

Growiインストール確認

http://設定したドメイン
でアクセスします。

初期サイトが表示されたらインストール完了です。

  • 管理者メールアドレス
  • 管理パスワード

等を設定してログインします。

Redmine View_Customize_Pluginによる「ヘッダに新規チケット発行のリンク」。

やりたいこと

Redmineのヘッダに「新しいチケットの作成」のリンクを入れ、トップページから特定のプロジェクトでチケットを発行できるようにします。

前提

  • Redmine View Customize がインストールされていること。
  • Redmine 5.1で動作を確認しています。

手順

画面移動

  1. Redmineに管理者権限でログインします。
  2. 管理>表示のカスタマイズに移動します。

カスタマイズ作成:JavaScript

表示のカスタマイズに移動後、「新しい表示のカスタマイズ」をクリックします。

以下の通りに入力します。

  • パスのパターン
  • 空白
  • プロジェクトのパターン
  • 空白
  • 挿入位置
  • 全ページのヘッダ
  • 種別
  • JavaScript

コード

$(function() {
  // ▼▼▼ ここにチケットを作成したいプロジェクトの「識別子」を記述してください ▼▼▼
  const TARGET_PROJECT_ID = 'project-id';
  // ▲▲▲ ------------------------------------------------------------ ▲▲▲

  // プロジェクト識別子が設定されていない場合は処理を中断
  if (!TARGET_PROJECT_ID || TARGET_PROJECT_ID === 'your-project-identifier') {
    return;
  }

  const newIssueUrl = '/projects/' + TARGET_PROJECT_ID + '/issues/new';

  // トップメニューにリンクを追加
  $('#top-menu ul').append(
    $('<li>').append(
      $('<a>', {
        href: newIssueUrl,
        'class': 'new-issue',
        text: '新しいチケットの作成'
      })
    )
  );
});
  • コメント
  • 任意「ヘッダにチケット作成追加」など
  • 有効
  • チェック
  • プライベート
  • チェックを外す

設定後、保存をクリックします。

動作を確認します。

上記設定後、以下を確認します。

  • ヘッダに「新しいチケットの作成」リンクが追加されていること
  • クリック後、チケット作成画面に遷移すること
  • その際、指定したプロジェクト(URLにプロジェクト識別子があること)

『ライザのアトリエ2』超高難易度DLC「陽炎の島」仕様のライザ最強武器「ノクターナルレリック」調合。

「再度、チャレンジしてみよう」ということで最初から攻略を始めている『ライザのアトリエ2』超高難易度DLC「陽炎の島」。

ライザのメインウェポン「ノクターナルレリック」を調合してみます。DLC前提なので、それらを持っていない方はこの武器は調合できません。

調合データ

  • ステータス
項目数値
品質999
HP323
攻撃力875
防御力336
素早さ697
  • 効果
効果名説明備考
天の隕石・超魔法ダメージを与えるアイテムを使用すると、消費するCCが1減少する。与える魔法ダメージが増加するエッセンスにより効果テーブルを更に上げて発現
四色の羽根・超火属性、氷属性、雷属性、風属性のダメージが増加する蒼星の羽衣で付与
超感覚強化アイテムによって与えるダメージが増加するエルシオンハープで付与
立派な切れ味クリティカル時に与えるダメージが増加する鋭い爪で付与
  • 特性
特性名説明
攻速強化++ 99【特性レベルで強化:最大レベル99】攻撃力と素早さが最大で100増加する
全能力強化++ 99【特性レベルで強化:最大レベル99】全ての能力値が最大で50増加する
スペシャルアーツ 99【特性レベルで強化:最大レベル99】スキルの威力が最大100%増加する。さらに通常攻撃で得られるAPが一定確率で増加する

※上記特性の全ては「陽炎の島」で取得したものです。

前準備

これはフルに使います。

効果付与にこちらを調合しておきます。

蒼星の羽衣も、調合しておきます。(エボルブリンク:神秘のヴェール+エネルジアニカ、効果1を最大まで発現

その他、以下が必要です。

  • 「雷」属性を付与し、影響拡大+4にした古の賢者の石
  • 拡大影響力+2のヘブンズストリング(素材タイプは動物素材)
  • また、サマステンをいくつか買っておきます。「調合で素材が上がることと、影響拡大1を持つ」が必要です。
  • 道中で用いるインゴット系の素材は、エッセンスで効果1と効果2を更に上げていきます。
  • インゴットのどれかに、今回付与したい属性を入れておきます。

今回用いるエッセンスは「極天のエッセンス(レシピ変化の度に投入数増加)です。

調合

真・お手製の杖を調合します。

インゴットを入れます。

適当な木材を入れます。

影響拡大+2を付与したヘブンズストリングを入れます。これは、

隣接する効果スロット「攻撃力)をある程度発現させるためです。

また、木材を入れるスロットが影響拡大で飛ばされています。「ドレッドレザー」を効果1の動物素材に投入します。

スタルチウムを入れ、ワンダーミスチルにレシピ変化します。

レシピ変化を繰り返します。

ワンダーミスチルでは、雷属性追加と影響拡大 +4 の古の賢者の石を投入。

一気にレシピ変化まで進むと同時に、攻撃力のマテリアル感が解放されています。

そうしたらクリミネアを入れてインベルシオンにレシピ変化を行います。

ここでは、効果1のところにクリミネアを入れます

その後、雷属性/影響拡大+4の古の賢者の石を投入。

こちらも、防御力の項目が解放されています。

ゴルドテリオンを投入してアズールティアーに変化します。

アズールティアーの最初の特性枠に

  • 装備作成 攻撃+5
  • 装備作成 防御+4
  • 影響拡大 +1

のサマステンを入れます。これは、フォーゲル商会でインゴットを売りさばき、レベルを最大まで上げないと買うことができません。

エリキシルのスロットに古の賢者の石を入れます。これもグランツオルゲンでレシピ変化(スパークルレヴァリエ)です。

スパークルレヴァリエは

  • インゴットのマテリアル環にグランツオルゲン
  • 宝石のマテリアル環に古の賢者の石

を入れます。

アルクァンシェルを入れて最終レシピに到達です。

調合の前にエッセンスを入れます。

「攻撃力」のマテリアル環に火のエッセンス

効果1の最深のところに風のエッセンス

をそれぞれ入れます。

この手順で行けば、31個、材料投入できます。その全てにグランツオルゲンを入れてステータス強化を図ります。

リビルド・武器強化

リビルドに関しては影響拡大を持つ素材で発現させていきましょう。

特性を決めます。

念のため、このリビルドまで済んだ武器は複製しておきます。

そうしたら、その武器をデニスの工房で強化します。

投入したのは

  • 蒼星の羽衣
  • エルシオンハープ
  • 巨大な爪

の3種類。

こうしてようやく完成。

  • コアアイテムのダメージを増大させ
  • コアドライブ「四星の極光」に特化させ
  • 「陽炎の島」に耐えうるステータス

を持たせた武器です。

『ライザのアトリエ2』強化アイテムの使用の順番によるステータス変化の検証。

『ライザのアトリエ2』の陽炎の島での検証を重ねていく中で、以下を発見しました。

  • タクティクスレベルの減少と引き換えにステータスアップを図る時空の逆さ時計
  • 元からステータス上昇の効果を持つエルシオンハープ

これらの利用順番により、どのようにステータスが上がるかを見てみます。

検証1:エルシオンハープ単体を利用した場合

ステータス上昇値上昇率(対ベース値)
攻撃力+00%
防御力+167約10%
素早さ+442約20%

防御力はEV効果:平癒の祝福、素早さはエルシオンハープの効果:素早さアップ・超によるもの。

検証2:エルシオンハープ→時空の逆さ時計につなげた場合

より分かりやすくするため、タクティクスレベルを5にした上で

  1. エルシオンハープ
  2. 時空の逆さ時計

で順番に使った場合です。

ステータス最終上昇値最終上昇率(対ベース値)
攻撃力+2158113%
防御力+1897113%
素早さ+2501113%

※先にかけた「エルシオンハープ」のバフ

  • 防御+10%
  • 素早さ+20%

は、「時空の逆さ時計」のより強力な効果

  • 全能力+113%

によって完全に上書きされた結果となります。

検証3:時空の逆さ時計→エルシオンハープにつなげた場合

ステータス最終上昇値最終上昇率(対ベース値)
攻撃力+2158113%
防御力+38523%
素早さ+72933%
  1. 先に使った「逆さ時計」のバフ(全能力+113%)がまず適用されます。
  2. 後から使った「エルシオンハープ」に効果があるステータス(防御力、素早さ)のみ、効果が上書きされます。
  3. その上書きの計算式は『エルシオンハープ固有の防御+10%, 素早さ+20%) + 逆さ時計の「効果3」のバフ%(13%)』となります。
  4. 「エルシオンハープ」に効果がない攻撃力は、最初のバフがそのまま維持されます。

参考:逆さ時計→天文時計

では、「時空の逆さ時計」の基本的な運用スタイルである

  1. 時空の逆さ時計でタクティクスレベルを5から1に下げる
  2. その後、「時空の天文時計」でタクティクスレベルを上昇

となった場合は、

ステータス最終上昇値最終上昇率(対ベース値)
攻撃力+2158113%
防御力+1897113%
素早さ+2501113%

時空の逆さ時計のバフがそのまま維持されるという結果。

まとめ

  1. 基本は後勝ちの上書き
    • 後から使ったアイテムのバフが、先のバフを上書きします。
  2. 上書きは効果ごと
    • 上書きはステータスごとに行われます。
    • 後から使ったアイテムに効果がないステータスのバフは、前のものが維持されます。
  3. 同系統の弱効果は無視
    • 後から使ったアイテムのバフが、既存のバフより弱い、あるいはその一部である場合、上書きは発生せず、より強力な既存のバフが維持されます。

そのため、高難易度のような「アイテムを連打する長期戦」の場合は、その順番にも気を遣う必要があるという検証結果でした。

『ライザのアトリエ2』超高難易度DLC「陽炎の島」仕様の「エルシオンハープ」調合。

DLC『戦いの極み』で追加されたアイテムを調合します。

調合例

  • エルシオンハープ
  • 消費CC:2
  • 対象:味方全体
  • 効果1:魂が落ち着く
    • アイテムのダメージとCCの回復量を上昇する
  • 効果2:ブレイク値回復・超
    • ブレイク値を回復する
  • 効果3:AP回復・大
    • APを大きく回復する
  • 効果4:素早さアップ・超
    • 素早さを上昇する
  • EV効果:平癒の祝福
    • 以下の効果を対象に付与
      • 防御力アップ・中
      • 会心確率アップ・中
      • 平癒の薬効(全ての状態異常を治療し、全ての悪性異常を消し去る)
    • エルシオンハープ自体で付与
  • 永久機関
    • 消費CCが1減少するが、威力が大きく減少する。消費CCは1未満にはならない
  • 空間を繋ぐ
    • 対象のWTを減少させる
  • 永久機関
    • 消費CCが1減少するが、威力が大きく減少する。消費CCは1未満にならない
      • ※検証によりこのデメリットは適用外と判明
  • エコノミーコア
    • 消費CCが1減少する。消費CCは1未満にならない

DLC追加アイテムと時空の逆さ時計を使うだけあって効果は折り紙付き。この手のアイテムは「永久機関とエコノミーコアの重ねがけによって消費CCを減らし、コアアイテムを連打していく」のが筆者のスタイルです。

準備

  • 極星のエッセンス(全てのマテリアル環の効果テーブルが1上昇)
  • 時空の逆さ時計を複数個
  • 影響拡大を持つ宝石(アルクァンシェルや賢者の石)
  • (金属)を付与した帯電砂
  • ヘブンズストリング

調合

エネルジアニカからスタート。

スタルチウムを投入して

適当な金属を放り込みます。

白霊岩を入れます。

適当な金属を入れます。

時空の逆さ時計を入れてレシピを変化します。

エルシオンハープを調合していきます。

ここの金属の部分に帯電砂を入れます。

影響拡大を持つアルクァンシェルや賢者の石はふんだんに使います。

適当な段階で(或いはレシピ変化した瞬間に)極星のエッセンスを入れて効果テーブルを上げます。

消費CCを減らすヘブンズストリングは影響拡大の影響を受けません。しっかりと活性化させます。

特性を選んで完成。

EV効果はエルシオンハープそのもので付与しました。

本アイテムについて

こちらのアイテムは当初は「火力担当のライザが用いることで火力を上げていく」を目的に投入しましたが、

「結局、火力を連打する方がいい」としてライザのコアアイテム枠から外れました。

しかし、デニスの工房で武器に付与される「超感覚強化」(アイテムによって与えるダメージが増加する)が極めて有用

これを目当てで作っておいて損はありません。

『ライザのアトリエ2』超高難易度DLC「陽炎の島」仕様の「時空の逆さ時計」の効果検証。

先に調合した「時空の逆さ時計」。

  • 効果1:時空の調整
    • タクティクスレベルを1まで低下する。低下した量に応じて、攻撃力、防御力、素早さを上昇する
  • 効果3:全能力アップ・超
    • 攻撃力、防御力、素早さを上昇する

これらの上昇値はどうなるのか?

本アイテムを調合して5年以上経っての検証となります。

検証条件1

検証は先日の記事で用いた時空の逆さ時計を用います。

バフが乗る前のステータス

  • HP:1105
  • 攻撃力:1905
  • 防御力:1679
  • 素早さ:2214

のライザで検証します。

タクティクスレベル2で時空の逆さ時計を用いた場合

適当な敵にスイングして戦闘開始。

時空の天文時計を発動してステータスの上昇を確認。

ステータス使用前(ベース値)使用後(合計値)上昇値
攻撃力19102635+725
防御力16792316+637
素早さ22143054+840

という上昇値になりました。これだけでも相当なものとなります。

タクティクスレベル5で時空の逆さ時計を用いた場合

こちらの検証ではラムロースト3号を用いました。「究極の技術」の「戦闘開始時にタクティクスレベルとAPが最大になる状態」での検証です。

タクティクスレベルがLv.5になった状態での逆さ時計の上昇値は以下の通り。

ステータス使用前(ベース値)使用後(合計値)上昇値
攻撃力19104068+2158
防御力16793576+1897
素早さ22144715+2501

と、明らかに、

  • Lv2.→Lv.1
  • Lv.5→Lv.1

ではステータスの上昇値に大きな開きがあります。

上昇の法則性から得られるバフの計算式

では、その開きを表にしてみましょう。

ステータス使用前(ベース値)Lv2→Lv1 上昇値Lv5→Lv1 上昇値Lv5-Lv2の上昇値の違い
攻撃力1910+725+2158+1433
防御力1679+637+1897+1260
素早さ2214+840+2501+1661

ここから導き出される上昇値を鑑みると、以下の計算式で表すことができます。

合計上昇率(%)=(低下したタクティクスレベル×25)+13

もっと具体的に言うと

  • 効果1:タクティクスレベルを1まで低下する。低下した量に応じて、攻撃力、防御力、素早さを上昇する

は、「下がったタクティクスレベル1につき25%上昇する」

  • 効果3:攻撃力、防御力、素早さを上昇する

の上昇値13%が加わります。

従って、

発動状況計算式合計上昇率
T.Lv 5→1 (低下レベル4)(4 × 25%) + 13%113%
T.Lv 4→1 (低下レベル3)(3 × 25%) + 13%88%
T.Lv 3→1 (低下レベル2)(2 × 25%) + 13%63%
T.Lv 2→1 (低下レベル1)(1 × 25%) + 13%38%

という数値になります。この「最大113%の上昇値」は高難易度マップにおいて極めて有用なステータス上昇値。

つまり、「一時的にタクティクスレベルが1まで減るというデメリットを甘受しても、このアイテムを使う意義がある」という結論に達しました。

検証条件2「特性:永久機関」により数値は変動するか?

先は消費CCを1減らす代わりに威力を減らす永久機関が付与された状況での検証でした。

そこで、

永久機関を他の「ステータス上昇と関わりがない」状況で再度試してみます。

ここで、タクティクスレベル5→Lv.1に減らした場合の上昇値は

ステータス使用前(ベース値)使用後(合計値)上昇値
攻撃力19104068+2158
防御力16793576+1897
素早さ22144715+2501

と、先ほどのレベル5→1の上昇値と変わりないデータであることが判明しました。

まとめ

  • エンドコンテンツ用のコアアイテム「時空の逆さ時計」は高難易度で有用。
  • 上昇値(それぞれの威力を最大まで高めた結果)の計算式は
    • 合計上昇率(%)=(低下したタクティクスレベル×25)+13
  • このバフ値は特性「永久機関」のデメリットを無視する

1~2人に持たせておくと非常に便利だということが改めて浮き彫りになりました。

『ライザのアトリエ2』超高難易度DLC「陽炎の島」仕様の「時空の逆さ時計」調合。

概要

エンドコンテンツ用のコアアイテム「時空の逆さ時計」を調合します。

調合例

  • アイテムレベル:26(器用さが一番低いセリでも使えるアイテムレベルになりました)
  • 対象:味方全体
  • 消費CC:3
  • 効果1:時空の調整
    • タクティクスレベルを1まで低下する。低下した量に応じて、攻撃力、防御力、素早さを上昇する
  • 効果2:過去に干渉する
    • APとCCの回復量を上昇する
  • 効果3:全能力アップ・超
    • 攻撃力、防御力、素早さを上昇する
  • 効果4:回避率アップ・超
    • 回避率を上昇する

特徴

タクティクスレベルを1まで下げる代わりにステータス上昇。強烈なデメリットを負うものの、そのステータス上昇値は

  • ボスよりも早く動き
  • ボスの攻撃に耐える

という役割で重要です。

準備

かなり骨です。

先に示した「時空の天文時計」は

  • 全ての効果テーブルが埋まった状態(極星のエッセンス含む)
  • レベル1で仕上げる

必要があります。

調合に必要なもの

本アイテムはEVアイテムです。ベースとなる時空の天文時計の他、

狂薬デボニアルも必要です。これ自体もEVアイテムであり、

  • 妖薬エボニアル(ベース)
    • ハチミツ→エルツ糖→ウォーパウダー→妖薬エボニアル
  • 魔女の秘薬(エボルブリンク先)
    • ハチミツ→エルツ糖→ウォーパウダー→妖薬エボニアル→魔女の秘薬

と、結構な段階を踏みます。

これらのベースもリンク先も「効果を発現させる必要はありません」。

しかし、これらのアイテムは他のエボルブリンクやEV効果でも用いるため複数個持っておきます。

エボルブリンク:時空の逆さ時計

  1. 時空の天文時計
  2. 狂薬デボニアル

の順番で

エボルブリンクを行います。時空の逆さ時計ができあがりました。

リビルド

リビルドによって効果レベルを上げていきます。

筆者の場合は、影響拡大のおかげでレベルのスロットが余っていたため、アイテムレベルを26に抑えることができました。

特性決定

特性は

  • 空間を繋ぐ(対象のWT減少)
  • 永久機関(消費CCが1減少するが、威力が大きく減少する。消費CCは1未満にならない)
    • ※検証によりこのデメリットは適用外と判明
  • エコノミーコア(消費CCが1減少する。消費CCは1未満にならない)

の3つ。これにより、アイテムリビルドで培った「消費CC:5」から「消費CC:3」にまで下げることができます。

この威力検証は後ほど記します。

『ライザのアトリエ2』超高難易度DLC「陽炎の島」仕様の「ローゼフラム」調合。

概要

『ライザのアトリエ2』で最も多くの敵を屠ってきた「ローゼフラム」の調合のメモです。タイトルで示したとおり

  • 最高難易度LEGEND
  • 超高難易度DLC「陽炎の島」

をクリアするための最適な攻撃アイテムと自信を持って勧めます。

アイテム

  • アイテムレベル:99
  • 消費CC:2(装備品効果により実際は1)
  • 対象:全体
  • 効果1:肉体疲労の大爆発
    • 【魔法】無属性の小ダメージを与え、物理耐性を低下させる
  • 効果2:獄炎の薔薇
    • 【魔法】火属性の特大ダメージを与える。威力はタクティクスレベルが高いほど大きく増加する
  • 効果3:焼き尽くす炎・超
    • 非常に高い温度が対象を包む。対象を確率で火傷状態にする
  • 効果4:紅蓮の花冠
    • 【魔法】炎の花びらが燃え上がる。対象の範囲を広げ、火属性ダメージを与える。対象のHPが少ないほど威力が増加する
  • EV効果:予言の烙印
    • 【以下の効果を対象に付与】
      • 一ツ環の真実(【魔法】火属性と風属性のダメージを与える。現在のCCが多いほど、威力が増加する)
      • 分ツ軸の真実(【魔法】氷属性と雷属性のダメージを与える。現在のCCが多いほど、威力が増加する)
      • コアアイテム「アポカリプス(賢人の法典+ルナーランプ)」で付与
  • 特性1:会心の破壊力Lv.99
    • アイテムの威力が最大で50%増加し、クリティカルになる確率が最大で100%増加する
    • 陽炎の島で得られる特性
  • 特性2:心の破壊力Lv.99
    • アイテムの威力が最大で100%増加し、クリティカルになる確率が最大で100%増加する
    • 陽炎の島で得られる特性
  • 特性3:破壊力上昇 ++
    • アイテムの威力が最大で50%増加する
    • 本編ラストダンジョンで得られる特性

本アイテムの魅力

最高難易度LEGENDでも頼りになる火力の高さ

「初心者救済」とも「バグ」とも言われる超火力。更に後述する理由でボス戦も有利に立ち回れます。

消費CCが少ない

エッセンスと装備品効果により、消費CC1で撃つことが可能です。また、最大HPが500万に達する「陽炎の島」のボス戦において、「低燃費で連発できる」コアアイテムとして、これを選んでいます。

高威力の条件が緩い

効果でも上げたとおり、

  • タクティクスレベルが高いほど

威力が上昇します。

高いタクティクスレベルは「時空の天文時計」により維持が可能。

また、敵のHPが少ないほど威力が上昇するというのも高難易度では有用です。なぜなら、最高難易度LEGENDでは、敵のHPが少なくなると「全ステータス上昇」という驚異的なバフがかかるため、終盤の苦戦をこのメリットで相殺できるのです。

調合の準備

有料DLCで得られる「極星のエッセンス」を利用します。

また、ジェムは無尽蔵に用意できるものという前提の元で話を進めます。

特性

今回の特性は以下の3つ。

  • 会心の破壊力 → Lv.99
  • 心の破壊力 → Lv.99
  • 破壊力上昇 ++ → Lv.50

全て最大値まで。中和剤ループでレベルを上げていきます。

必要な材料

  • セキネツ鉱
  • 火薬のもと

が必須アイテム。これに加えて、EV効果を持たせるために

『アポカリプス』を用意。

これは

  • 賢人の法典
  • ルナーランプ

をエボルブリンクで掛け合わせ、効果1を最大まで上げていきます。

アイテム本体よりもEV効果の方が重要なので、効果1「崩壊の真実」を最大化すれば十分です

調合

調合メニューからフラムを選択します。

必要なアイテムを入れておきます。特性はこの段階で入れても、後で入れても構いません。

ローゼフラムにレシピ変化をします。

火薬のもとを入れ、ローゼフラムに変化。その後、「極星のエッセンス」を投入。

  • 賢者の石
  • クリスタルエレメント

などを用いて全ての効果を活性化(発現)して調合完了です。

EV効果を付与します。

上述したアポカリプスで付与。筆者は他に

  • N/A
  • マスタースピリット

なども用いています。(共に効果1を最大にしています)

アイテムレベルを最大まで上げます。

これが筆者のチューニングです。基本的に高ければ高いほどでメリットになるアイテムレベルですが、コアドライブ「四星の極光」

敵全体に4属性の魔法ダメージを与える。与えるダメージは使用したアイテムの合計レベルに応じて増加する

の効果を高めるためです。

幸いなことに、アイテムレベルを上げることは下げるよりも遥かに楽です。

マテリアル環に適当な材料を入れていけばいいのです。

Lv.99になるように調整したら完成。ライザに装備させます。

備考

ただし、このコアアイテムを高難易度「陽炎の島」で運用するためには

  • 武器
  • 防具
  • 装備品

の強化が必須。でなければ、使用する前にブレイクさせられたり戦闘不能に陥ります。

そして、他のキャラクターに装備させた回復/強化アイテムで継続戦闘が取れるようにしていきます。

    Page 1 of 260

    Powered by WordPress & Theme by Anders Norén