このページについて

いわゆるBlog的なページですが、

・極端にパーソナルなことは書かない方針です(ご飯くらいは書くかも)

・OS、CMSネタなども掲載しますが、取りまとめた内容はなるべく別個記事にするか、同人誌に取りまとめる予定です。

・なので技術よりの内容に関しては書いた時点の情報であり、最新化されていない場合があるのでその点をご了承下さい。

極北別世界通信

直接的には

2020年5月14日 23時07分

被害があるわけではないけど、やはり間接的には影響がありますなあ

新コロ関連でバタバタしてあっという間にいろいろやる時間がごっそり無くなっていました。

コミケも中止になってその後のことはまだまだ予断を許しませんし、どうなることやらですね。

また気を取り直していろいろやっていきたいです。

Shirasagiの扱いが難しい

2020年2月18日 22時36分

まぁRubyやらRailsやらからっきしなのでアレですが。

今回のはRuby関係ないですが。

Shirasagiの常時SSL化をNginxのリバースプロキシ下でやろうとしてハマった話。

インターネット(SSL)⇒Nginx ⇒(ここから先http)(別Serverの)Nginx ⇒ Shirasagi(Unicorn?)

という構成で、公開サイトをsslで表示するのはすぐにできたんですが、管理画面ログインがうまくいかなくて困った。

 

フロント側のNginxのプロキシ(ヘッダー)設定を

proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Forwarded-Proto https;

バックエンド側のNginxはShirasagiインストール時に生成されてるんだけど、

#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header X-Forwarded-For "$http_x_forwarded_for, $realip_remote_addr";

に書き換えてみた。

ようはフロントで

proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Forwarded-Proto https;

して、バックエンドで

proxy_set_header X-Forwarded-Proto $scheme;

することでうまくいくらしい。

なおバックエンド側に追記したのは

フロント側で

proxy_set_header X-Forwarded-For $remote_addr;

しておいてバックエンド側で書き換えた

proxy_set_header X-Forwarded-For "$http_x_forwarded_for, $realip_remote_addr";

でアクセス元のIPを取ろうという記述、、、のはず。

Nginx触り始めて1週間でググりまくった結果なのでまたこつこつ調べないといけませんね。

F-Revo CRM patch適用とPHP7.2化

2020年2月17日 21時51分

雑ですが忘れないようメモ

・F-Revo CRMをインストール

無印?版はphp5.6でしか動かないのでオフィシャルなどにある手順通りインストール

https://f-revocrm.jp/2018/08/8273

パッチ3の適用まで書いてありますが、さらに今はパッチ4、5、6、6_1までリリースされていますので、すべて適用します。

基本的にアーカイブを展開してディレクトリごと上書きするだけです。

また、前の記事で書いた includes/main/WebUI.php

がパッチ6で上書きされるので、修正しなおしを忘れないようにしましょう。

パッチ6がphp7対応バージョンとのことなので、合わせてphpを7.2に更新します。
一応apacheとか止めておいたほうが無難なのかな?当方は仮想マシンで丸ごとバックアップしていたのであんまり考えずに実行してしまいましたが。

yum install --disablerepo=base --enablerepo=epel,remi,remi-safe,remi-php72 php php-gd php-mysqlnd php-imap php-mbstring php-devel php-mcrypt php-xml php-opcache

用心でphp.iniとかもバックアップしてましたが、特に何も変更せずとも大丈夫でした。

これでphp7.2環境になりました。

時間が取れそうならもう少し丁寧に書きます。。。

F-revo CRM リバースプロキシ関連のTips

2020年2月16日 23時27分

F-revo CRMをNginxのリバースプロキシの背後に置くとRefererを見られてうまく動いてくれない。

本来ならgetコマンドでRefererを取って反映、とかやるのが正しいのだろうけど、とりいそぎコード変更してみた。

どうなんだろ、一応開発元に質問したりしてみてもいいもんなんだろうか。

なお前提としてNginxでのリバースプロキシは構築済みで、nginx側でのSSL化も済んでる前提です。

■事前:

crm/config.inc.phpの「$site_URL」を以下のように設定

$site_URL = 'http://【サーバのIPアドレス】/crm/';

■以下のように変更

# vi crm/config.inc.php

$site_URL = 'https://【SSL証明書を取得したドメイン名】/crm/';

# vi crm/includes/main/WebUI.php

// if ($site_URL && stripos($request_URL, $site_URL) !== 0){
// header("Location: $site_URL",TRUE,301);
// exit;
// }

ただ、これRequest URLとSite URLが正しくないと接続を許可しないってセキュリティ面を担保する設定のような気がするので、そもそもOFFにするのがいいのかといわれるとちょっと。。という感じ。

一応ログ等見ながら様子見。

。。。あれ、パッチどこまで適用してたっけ。。ちょっと確認しないと。

Nginx リバースプロキシ&SSL設定のTIPS

2020年2月16日 18時19分

基本的なインストールやら導入は(暇があったら書きますが)、とりあえずたくさん記事があるので放置して、ハマリかけたとこだけ

SSL設定で

dhparam.pem

がないと怒られる。

# nginx -t
nginx: [emerg] BIO_new_file("/etc/ssl/certs/dhparam.pem") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/ssl/certs/dhparam.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)

まぁネット上のConfigパクってて設定もしてないほうが悪いんですが、Nginxは今のVersionだとdhparam.pemがないといけないらしいので注意。

んで

# openssl dhparam 2048 -out /etc/ssl/certs/dhparam.pem
Generating DH parameters, 2048 bit long safe prime, generator 2

完了まで時間がかかる。

そのあと

# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

正常にとりあえずはなったのでメモ

NextCloudとリバースプロキシ

2020年2月16日 00時19分

他に書く場所も確保していないのと、せっかくの構築関連のTIPS的なやつなのでここにメモがてら。

自宅で古めのサーバにNextCloudを構築して使っているが、自宅にいくつもサーバを立てていると、外部から接続させるときのポートフォワーディング設定などが煩わしい

うっかり開けた穴を閉じ忘れてるなどもあるかもしれないので、思い切ってやり方を変えることにした。

基本的に自宅で構築するものはWeb系のものが多い。なのでいっそ全部リバースプロキシで受けて増やしたり減らしたりする際にはリバースプロキシ側で制御すればいいんじゃん?と考えたわけである。

。。。が、本編のリバースプロキシ構築に入る前に、NextCloudを現在Let's Encryptを使ってhttpsで外部からつながるように設定しているのだが、ローカル側は常にhttpで構築するように変更しようと考えたところなぜかNextCloudにhttp経由の場合ログインができない状態に陥った。

色々調べてみると、どうもphpのセッションが格納されるディレクトリの権限の問題と判明。

当方の場合CentOSでインストールしているのだが、/var/lib/php の権限の問題で、/var/lib/php/session配下に生成されるセッション管理ファイルがうまく読み書きできない状態になる模様。

なので

chown -R apache:apache /var/lib/php

として、権限を変更し、無事httpでも正常にログインできるようになった。

このメモだけだとわかる人にしかわからないが、NextCloudをVersionUpしたり、CentOSでPHP 7.xをremiリポジトリからインストールしてると発生するケースがあるようなのでメモ。

 

サイト内コンテンツ

2020年1月15日 01時23分
その他四方山話

現在はローカルでの作業が主体ですが一応コンテンツをもう少し拡充させようと地味に努力中。

とりあえずはマイナーOSデータベースの再整理を進めてます。昔ダウンロードしたものが現状、サイトごと消えてたりするかと思えば、一応ソースコードだけはまだsourceforgeに残ってたりと様々です。

冬コミ終了

2019年12月31日 22時36分

今回は惨敗中の惨敗です。
まぁ前々回あたりからろくな宣伝活動もできていないのは確かなので、もう少し活動をしていきたいと思います。

始めにfnowのサイト内のコンテンツをもう少し充実していかないと。。。

 

冬コミ

2019年12月1日 14時53分

一応冬コミ出展予定ですが原稿がままならない状況。。

何かしらは出さないと次回が危うくなるので頑張りますが。

12/31 火曜日 南地区 リー20a「Fnow」になります。

グダりすぎているので

2019年9月28日 23時50分

他のコンテンツは気が向くまで動かさずになるべくこのどうでもいい日記だけでもつけておくことにしよう。

なのでなんだかわからないメモが多くなるかもしれないけれどメモっておく癖付けないとなんとも。