話は3年ほど前。

このレンズフードをAmazonで注文したものの、レンズの経を間違えてしまうという事態が発生。
捨てるに忍びないということでずっとほったらかしにしていましたが

最近買い直したこのズームレンズなら経が合うのでは? ということで

装着しました。見ての通り、しっかりとサイズが合います。防護フィルターをつけたままでもしっかりハマりました。

持ち歩きに最適の一本なので、プロテクターも兼ねられてよかったです。
こちらの記事を、現在の自分の手順書の基準に直しました。
こうしてできたのがこちら。
sudo add-apt-repository ppa:ondrej/apache2
sudo aptitude update
sudo aptitude install build-essential zlib1g-dev libssl-dev libreadline-dev libyaml-dev libcurl4-openssl-dev libffi-dev mysql-server mysql-client apache2 apache2-dev libapr1-dev libaprutil1-dev imagemagick libmagick++-dev fonts-takao-pgothic subversion git ruby libruby ruby-dev libmysqlclient-dev
sudo aptitude install libapache2-mod-passenger
apache2ctl -v
Apache/2.4.59
以降であることを確認します。2.4.58には、http/2プロトコルへの脆弱性があるので、左記のバージョンであることを確認します。
sudo gem install bundler racc mysql2
「3 gems installed」が表示されればインストール成功です。
mysql_secure_installationによる初期設定を行います。
うまくいかない場合は以下を参照してください。
https://barrel.reisalin.com/books/bbf94/page/mysql-secure-installation
sudo mysql -u root -p
上記で設定した「mysqlのrootパスワード」を入力し、mysqlにログインします
CREATE DATABASE redmine character set utf8mb4;
DB "redmine" を作成します
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'password';
ユーザ "redmine"を作成し、パスワードを設定します。
この'password'は任意のパスワードに変更してください
GRANT ALL ON redmine.* TO 'redmine'@'localhost';
flush privileges;
exit
mysql -u redmine -p
SHOW DATABASES;
exit
sudo mkdir -p /home/www-data/redmine
自分の環境に合わせます。
sudo chown -R www-data:www-data /home/www-data
sudo -u www-data svn co https://svn.redmine.org/redmine/branches/5.1-stable /home/www-data/redmine
sudo cp -pi /home/www-data/redmine/config/database.yml.example /home/www-data/redmine/config/database.yml
/home/www-data/redmine/config/database.yml
このファイルを教義・信仰に従ったエディタで編集してください。
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
# rootからredmineに変更します
password: "redmine用のパスワード"
encoding: utf8mb4
# 本番環境(production)のみ設定を行います
cd /home/www-data/redmine/ && pwd
/home/www-data/redmine/
(Redmineを配置したディレクトリ)であることを確認します
sudo -u www-data bundle install --without development test --path vendor/bundle
sudo -u www-data bundle exec rake generate_secret_token
sudo -u www-data RAILS_ENV=production bundle exec rake db:migrate
sudo -u www-data RAILS_ENV=production REDMINE_LANG=ja bundle exec rake redmine:load_default_data
【】を自分の作成したRedmineのサーバ名/ドメイン名に変更します。
cat <<- __EOF__ | sudo tee -a /etc/apache2/sites-available/redmine.conf
<VirtualHost *:80>
ServerName 【hoge.example.com】
# ServerNameは自身が設定したredmineに読み替えてください。
DocumentRoot /home/www-data/redmine/public
<Directory /home/www-data/redmine/public>
Options -MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
__EOF__
ls -l /etc/apache2/sites-available/redmine.conf
sudo a2ensite redmine.conf
sudo a2dissite 000-default.conf
sudo a2dissite default-ssl.conf
sudo apache2ctl configtest
Syntax OK を確認します
systemctl status apache2.service
active(running)を確認します
sudo systemctl restart apache2.service
systemctl status apache2.service
active(running)を確認します
http://設定したRedmineドメイン
でRedmineのトップページが表示されれば成功です。
直ちにadmin/adminでログインし、強固なパスワードを設定し直します。
2024年4月に発表された脆弱性への対処を行います。
https://jvn.jp/vu/JVNVU99032532
sudo add-apt-repository ppa:ondrej/apache2
sudo aptitude update
sudo aptitude upgrade
このリストの中にapache2とapache2関連パッケージが更新される(2024/04/10現在)ため、それぞれアップグレードを行います。
apache2ctl -v
Apache/2.4.59
以降であることを確認します。2.4.58には、http/2プロトコルへの脆弱性があるので、左記のバージョンであることを確認します。
2024/04/10
プログラムに備わっている自動アップデートスクリプトを使い、Snipe-ITのアップグレードを行いました。
以下の環境で動いています。
https://snipe-it.readme.io/docs/upgrading
Snipe-ITがインストールされているサーバでコマンド操作を行います。
cd /home/www-data/snipe-it
自分の環境に合わせます。
sudo -u www-data touch ./storage/app/backup-temp
sudo -u www-data php upgrade.php
--------------------------------------------------------
WELCOME TO THE SNIPE-IT UPGRADER!
--------------------------------------------------------
This script will attempt to:
- validate some very basic .env file settings
- check your PHP version and extension requirements
- check directory permissions
- do a git pull to bring you to the latest version
- run composer install to get your vendors up to date
- run migrations to get your schema up to date
- clear out old cache settings
Launching using branch: master
Found PHP requirements, will check for PHP > 7.4.0 and < 8.2.0
Proceed with upgrade? [Y/n]:
確認はこの部分だけです。PHPのバージョンを確認した上で「y」を入力します。
(中略)
--------------------------------------------------------
STEP 9: Migrating database:
--------------------------------------------------------
Migrating: 2024_03_18_221612_update_legacy_locale
Migrated: 2024_03_18_221612_update_legacy_locale (154.60ms)
--------------------------------------------------------
STEP 10: Checking for OAuth keys:
--------------------------------------------------------
√ OAuth keys detected. Skipping passport install.
--------------------------------------------------------
STEP 11: Taking application out of maintenance mode:
--------------------------------------------------------
-- Application is now live.
---------------------- FINISHED! -----------------------
All done! Clear your browser cookies and re-login to use
your upgraded Snipe-IT!
--------------------------------------------------------
ここまで進めばスクリプトは完了です。
この記事の続きです。
ソースコードからインストールしたOpenSSH9.6p1を、更にOpenSSH9.7p1にバージョンアップします。
Ubuntu 20.04での動作確認です。
上記手順を用いて、ソースコードからOpenSSHをインストールしています。
ssh -V
OpenSSH_9.6p1, OpenSSL 3.2.1 30 Jan 2024
cd /hoge && pwd
任意のディレクトリを指定します。
wget -c http://mirror.exonetric.net/pub/OpenBSD/OpenSSH/portable/openssh-9.7p1.tar.gz
2024/04/04現在の最新版を指定しています。
tar -xzf openssh-9.7p1.tar.gz
cd openssh-9.7p1
which openssl
/usr/local/ssl/bin/openssl
筆者の環境です。
./configure --with-kerberos5 --with-md5-passwords --with-pam --with-selinux --with-privsep-path=/var/lib/sshd/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl
--with-ssl-dir=/usr/local/ssl
は、opensslのヘッドディレクトリを指定します。
make
sudo make install
※別にターミナルを開いて確認します。
ssh -V
OpenSSH_9.7p1, OpenSSL 3.2.1 30 Jan 2024
バージョンアップされていることを確認します。
sudo systemctl restart ssh.service
sudo systemctl status ssh.service
active(running)を確認します
必要に応じてサーバの再起動を行ってください。
結論から言うと、別に管理しているBookStackサイトを一から作り直す羽目になりました。
事象としては
おそらく
その際にartisan migrateが走りませんでした。
こちら、起き抜けにてなりで作業していたために、諸々の記録が残っていなかったのが悔やまれます。
とはいえ、下書きはある程度あるので、ドキュメントの再作成がやりやすかったのは幸いです。
本棚も、自分が読みやすいように整理しています。
などをおこなっていきます。
こちらの記事から、OpenSSLのバージョンが上がっていたので対応します。
脆弱性やバグフィックス版のOpenSSL3.2.1にアップグレードします。
openssl version -a
OpenSSL 3.1.1 30 May 2023 (Library: OpenSSL 3.1.1 30 May 2023)
built on: Thu Jun 22 05:19:59 2023 UTC
platform: linux-x86_64
options: bn(64,64)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_BUILDING_OPENSSL -DZLIB -DNDEBUG
OPENSSLDIR: "/usr/local/ssl"
ENGINESDIR: "/usr/local/ssl/lib64/engines-3"
MODULESDIR: "/usr/local/ssl/lib64/ossl-modules"
Seeding source: os-specific
CPUINFO: OPENSSL_ia32cap=0xfffa3203578bffff:0x7a9
この手の作業はrootで行った方が手間が少ないです。その分、注意を払いましょう。
sudo su -
cd /hoge && pwd
任意のディレクトリを指定します。
git clone https://github.com/openssl/openssl -b openssl-3.2.1
2024/04/02時点での最新安定版を指定します
cd openssl
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make
makeは時間がかかります。状況を時折確認しながら待ちましょう。
make test
同様にmake testも時間がかかります。
make install
openssl version -a
OpenSSL 3.2.1 30 Jan 2024 (Library: OpenSSL 3.2.1 30 Jan 2024)
built on: Tue Apr 2 01:28:56 2024 UTC
platform: linux-x86_64
options: bn(64,64)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_BUILDING_OPENSSL -DZLIB -DNDEBUG
OPENSSLDIR: "/usr/local/ssl"
ENGINESDIR: "/usr/local/ssl/lib64/engines-3"
MODULESDIR: "/usr/local/ssl/lib64/ossl-modules"
Seeding source: os-specific
CPUINFO: OPENSSL_ia32cap=0xfffa3203578bffff:0x7a9
バージョンが上がっていることを確認します。
必要に応じてサーバの再起動を行い、作業完了です。
Growi v6.3.2→v7.0.0にアップグレード後、アイコンが非表示になる状況を更に確かめるため、以下の作業を行いました。
https://docs.growi.org/ja/admin-guide/upgrading/70x.html
こちらのドキュメントで、サポートしているnodeが20にアップデートされています。
なので、一度、nodeのバージョンを上げます。
sudo curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash
sudo aptitude update
sudo aptitude upgrade
更新対象にnodeが出てくるので更新を行います
node -v
v20.12.0
手順はこちら。
https://atelier.reisalin.com/projects/zettel/knowledgebase/articles/28
ですが、アイコンが非表示になる状況は変わりません。
前回のエントリーを元にGrowiのバージョンダウンを行いましたが、Growi v6.3.2はnode 20をサポートしていません。なので、yarn通らず。nodeのバージョンダウンを行います。
こちらを参考にしました。
https://qiita.com/kbys7367/items/0db8d98ef31a12028970
sudo npm install -g n
sudo n ls-remote --all
18系の最新版が18.20.0だったのを確認しました。
sudo n 18.20.0
node -v
v18.20.0
前回のエントリーを元にもう一度Growiのバージョンダウンを行い、yarmも通ることを確認。
取り急ぎ:原因がnodeではないことが判明しました。
の状況下で、growiのバージョンアップをしたら、以下の事象が発生したので、対応したときのメモです。
https://atelier.reisalin.com/projects/zettel/knowledgebase/articles/28
上記の通り、growiをv7.0.0にアップグレード。
左ツールバーや上部に表示されるアイコン全てが文字とリンクだけとなりました。
視認性も操作もしづらいので、元のバージョンに戻します。
systemctl status growi.service
# サービススクリプトを[growi]にしている場合
# active (running)を確認します
sudo systemctl stop growi.service
systemctl status growi.service
# inactive (dead)を確認します
cd /opt/growi
# 自分の環境に合わせます。
sudo git fetch --tags
sudo git tag -l
# スペースで確認していき、以前のバージョンに戻します。
# 2023/03/28 利用していたバージョンはでv6.3.2
sudo git stash
sudo git checkout 【以前のバージョン】
sudo yarn
# マシンスペックによっては相当時間がかかります
# Done in 【時間】と書かれていたらアップグレード完了です
systemctl status growi.service
# inactive (dead)を確認します
sudo systemctl start growi.service
systemctl status growi.service
# サービススクリプトを[growi]にしている場合
# active (running)を確認します
アイコンが元に戻りました。
今回はあくまで切り戻し。新規バージョンのgrowiは使いたいので、
の検証が必要です。
Nextcloudの管理画面から出てくるPHPの最大アップロードファイルサイズを変更します。
2024/03/26現在
cat /etc/php/8.1/apache2/php.ini |grep max_filesize
upload_max_filesize = 2M
cat /etc/php/8.1/apache2/php.ini |grep max_size
post_max_size = 8M
それぞれ、筆者の環境です。
sudo cp -pi /etc/php/8.1/apache2/php.ini /path/to/backup/directory/php.ini.$(date +%Y%m%d)
任意のバックアップディレクトリを指定します。
diff -u /etc/php/8.1/apache2/php.ini /path/to/backup/directory/php.ini.$(date +%Y%m%d)
エラーが出なければ(差分がなければ)バックアップはできています。
sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 100M/; s/post_max_size = 8M/post_max_size = 120M/' /etc/php/8.1/apache2/php.ini
※upload_max_filesize = 2Mとpost_max_size = 8Mは、自分の設定を入れてください。
diff -u /path/to/backup/directory/php.ini.$(date +%Y%m%d) /etc/php/8.1/apache2/php.ini
先ほどバックアップしたファイルを指定します。
; https://php.net/post-max-size
-post_max_size = 8M
+post_max_size = 120M
; Automatically add files before PHP document.
; https://php.net/auto-prepend-file
@@ -847,7 +847,7 @@
; Maximum allowed size for uploaded files.
; https://php.net/upload-max-filesize
-upload_max_filesize = 2M
+upload_max_filesize = 100M
systemctl status apache2.service
active(running)を確認します
sudo systemctl restart apache2.service
systemctl status apache2.service
active(running)を確認します
先ほど修正を行ったNextcloudに管理者権限でアクセスします。
管理>システムに進みます。
最大アップロードファイルサイズが修正した値になっていれば設定完了です。
Powered by WordPress & Theme by Anders Norén