Fedora36 構築手順 - 自分用メモ

自分用メモなのでかなり割愛しています。詳細を知りたい場合は各々のサイトでご確認ください。

Fedora36 のインストール

Fedora36 は最小パッケージでインストール メディアからのインストール手順は割愛します

パッケージのインストール

プロセスの起動

SELinuxの設定

/etc/sysconfig/selinux

設定後OSを再起動する。

ssh の設定

/etc/ssh/sshd_config

sshの接続ポート番号を任意の番号に変更

ssh プロセスの再起動

Firewall の設定

デフォルトは ssh のポートしか空いてないので、http のポートを開ける。

ステータスの確認

空いてるポート番号を確認

chronydの設定

/etc/chrony.conf

※現在はディストリビュータ毎の pool サーバを指定することで、ラウンドロビンで ntp サーバを参照するので設定不要です。

タイムサーバとの同期の確認

nginxの設定

/etc/nginx/nginx.conf

phpファイルアップロード機能を追加する際の必須条件
httpの圧縮転送を有効にする

圧縮の確認

Content-Encoding: gzip が確認できたらOK

phpの設定

php.ini

ファイルのアップロード容量の変更
タイムゾーンの設定

MariaDBの設定

root のパスワード変更

NetworkManager-wait-online のエラーの対処法

NetworkManager-wait-online はネットワークが正常に起動しているかを確認するデーモンですが、VPS環境のようにネットワークチェックに時間がかかる環境だとデフォルトの30秒では早すぎてエラーが出ます。そこで起動時間を240秒に変えることで回避することができます。

時間を30秒から240秒に変更

/etc/systemd/system/NetworkManager-wait-online.service

certbot コマンドの設置

無料の SSL 証明書を取得する方法です。

certbotコマンドのインストール

※このコマンドを動かすために必要な python ライブラリなども同時にダウンロードされる

証明書の自動生成

そのあと、規約の同意(Agree)

証明書のインストールの確認

SSLの編集

/etc/nginx/nginx.conf

証明書の期限を定期的に自動更新する

certbot-renew.timer の設定

※cron は脆弱性の問題があり Fedora36 からデフォルトではインストールされない。そのため、cron の代替えである systemd の timer 機能を使用する。

※インストールすると自動で設定されていることが多い

`上記コマンドで certbot-renew.timer が表示されたら設定されている証明になります。

certbot-renew.timer に nginx の再起動を設定

証明書が更新された後、nginx を再起動しないと証明書が反映されないので、nginx を再起動する設定を certbot-renew.timer に設定します。

Cockpit の自己証明書ではなく正規の証明書に変更

CERT と KEY を合算したファイルを作成し、/etc/cockpit/ws-certs.d/ の中に設置する。

10-letsecnrypt.certの設置

頭の番号の順番でファイルが読まれるデフォルトで設置してあるファイル ※0-self-signed.certを参考に

cockpitを再起動して証明書を読み込ませる
Let's Encrypt の使用に合わせて自動更新する場合の cron の書き方

 

追加設定

MeCab のインストール

本体のインストール

ipadic のインストール

各種ソフトウェアのダウンロード

MeCabのダウンロード

IPADICのダウンロード

/usr/local/etc/mecabrc

wikipedia.dic を作成しているのでそれを利用するように修正する。 /usr/local/lib/mecab に作成した辞書やユーザ辞書を配置する。

php_mecab のインストール

php-mecab-0.5.0 は PHP7 系に未対応の為、PHP7系対応済みの php-mecab-0.6.0 を使用する。

PHPと連動設定
ユーザ辞書の追加