既存の ConoHa VPS、LAMPサーバーにopenVPNを追加してみた

  • PPTP:すでになかった。
  • openVPN:手作業でインストールしていこうとしてもディレクトリが違ってうまくいかない
  • SoftEther-VPN:既存のLAMP環境でのインストールは難しかった。
  • strongswan-VPN:既存SSL証明書を使ってインストール、接続もできる。
  • ocserv:インストールはできるが、クライアント用のアプリを使えなかった。

いろいろ試してみたけど、openVPNの自動インストーラでゴールで来た。
SSL証明書に既存のものを利用するように手動設定にこだわったけれど、やりたいことは皆さん同じようだ。

参考にさせていただ来ました。ありがとうございました。

https://dawaan.com/setting-up-openvpn-in-5-mins/

利用状況

  • 既存の Apache の稼働しているサーバー。ConoHa VPS
  • ポートは 1194 UDP のみ開放(自由)
  • 端末からの接続にはアプリを使用
  • openVPNが生成した設定ファイルを「アップロード」して接続

メモ
インストーラーを使えば、設定を確認しながら進められる。
1日つまづいてしまったのは、ルーターのポートを開放していなかったため。
回線の節約で、簡易DMZ設定のない、YAMAHAのルーターに切り替えていたのを忘れていた。(泣、

rocket.chat をインストールしてみた

https://www.howtoforge.com/how-to-install-rocketchat-server-on-rocky-linux-8/

上記を参考にインストール。SSL の設定あたりからはせずに Proxy で公開中の仮想サーバにつないだ。

誰でも登録できる画面になっていたので、取り急ぎ

設定 > アカウント > 登録フォーム:無効 とした。

いろいろ試していくことになる。

Conoha VPSでOSを再構築したときのSSH接続

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:pIIdf4LY3Sgj*****tCCjkWc.
Please contact your system administrator.
Add correct host key in /Users/ユーザ/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /Users/ユーザ/.ssh/known_hosts:27
Password authentication is disabled to avoid man-in-the-middle attacks.
Keyboard-interactive authentication is disabled to avoid man-in-the-middle attacks.
UpdateHostkeys is disabled because the host key is not trusted.

Mac のターミナルからSSH接続しようとすると上のような表示がされる。

これは、手元の Mac の中にある履歴が直前と変わっているから「なにかおかしいよ」というアラート。

ここでは、OSを再構築しているから、以前とは明らかに変わっている。

何をすればよいかは、アラートの中に書いてあるけれでも、慌てていると何のことかわからない。

やることは、

ターミナルを操作している手元の Mac の「/Users/ユーザ/.ssh/known_hosts」known_hosts というファイルをエディタで開いて、SSH接続するときに使った、IPアドレスをさがして、関係する行を削除して上書き保存。

改めて、SSH接続 すればOK。

 

VPS側の known_hosts をのぞいたりしてしまった。。

 

 

サーバー監視ツール cockpit

これまでは、サーバー監視ツールとして、webmin のサードパーティで webminsatats をインストールして Historic System Statistics で確認していた。

・トラブルの履歴などを照会できる

で、LockyLinux 9.0 は perl のバージョンが、5.32で webminsatats が動かない。LockyLinux 8.6 も試してみたが、やはり動かない。これは、フォームメールとして、愛用させてきていただいた KENT様 の postmail.cgi も同様。

フォームメールは、phpの代用を見つけてある。サーバー監視は、以前、munin などを使っていたがすっかり忘れてしまった。
探してみると、なんと RockyLinux には、インストール済みの cockpit があるとのこと

https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/8/html-single/managing_systems_using_the_rhel_8_web_console/index

上記を参考に稼働

ただし、public でアクセスできてしまったので、webmin から削除して、ローカルからアクセスするようにした。

AlmaLinux VMWareFusion Virtualmin

RockyLinux と同様にインストールできた。
1点、RockyLinux ではインストールするパッケージを細かく指定できたけど、AlmaLinux は、DVD iso からインストールすると、GUIがインストールされた。

Rocky Linux 9 を VMwareFusion へインストールして、Virtualmin を展開

サイトやディレクトリで任意のphpが設定できる マルチ設定な php Virtualamin で php8.1をインストールしたくて、ブックマークしていたページにアクセス
https://www.virtualmin.com/documentation/web/multiplephp/

以前は、CentOS7のインストール方法が案内されていたが、、CentOS Stream になっている。
候補は「Alma」「Rocky Linux」

1)Rocky Linux をインストール

https://serverland.info/article/detail/rockylinux-install-vmware

上記を参考に、DVD iso を使って GUIできるようにインストール。

 

2)Virtualamin

webmin の 機能拡張が Virtualamin 構成に見えるけれども、Virtualamin なしでは運用は難しい。
そして、インストールも、webmin をインストールしてから、Virtualamin という流れでなく、Virtualamin をインストールすると、webmin もインストールされるという状況になっている。

https://www.virtualmin.com/os-support/

たった、3行

wget https://raw.githubusercontent.com/virtualmin/virtualmin-install/最新のアドレス/virtualmin-install.sh

chmod a+x virtualmin-install.sh

sudo ./virtualmin-install.sh

3)マルチphp

https://www.virtualmin.com/documentation/web/multiplephp/

dnf install php*-php-{cli,fpm,pdo,gd,mbstring,mysqlnd,opcache,xml,zip}

 

4)DKIM

https://www.virtualmin.com/documentation/email/dkim/

5)メモ

IPアドレスの逆引きは、プロバイダーによるもの。IPv6の逆引きには対応していないので、下記のような結果を得るために、IPv4のみとしている。
==========================================================
Summary of Results
==========================================================
SPF check: pass
“iprev” check: pass
DKIM check: pass

インターネット回線、プロバイダー、サーバー機材、いろいろ含めれば、レンタルサーバのほうがお得であることは間違いない。
けれども、サーバーの裏側がわかるので、なんとなく、継続してしまっている。

6)追記

(2022.08.24)

  • postfix 、メールの調子がおかしい。以前にもこんなことがあったような。過去のメモを見ると、デフォルトのサイトSSL証明書を適用しないといけなかった。今回、CentOS7 の Virtualmin からエクスポートしたものからリストアしたので、SSLの画面を見ていなかった。
  • Webmin もリストアするべき。セキュリティで許可IPが空っぽだった。

 

CentOS8 Apache のAP_DOC_ROOT=”/var/www”

新しく用意したCentOS8サーバでcgiが動かない。
cgiを使わないようにすれば良いとも考えたけれども、既存サイトを引っ越してくるときにcgiをphpなどに置き換えるのは大変。

perl -v ある
which perl パスもOK

perl が、AP_DOC_ROOT=”/var/www” の中にないと動かないことになっている。

suexec -V で確認できる。
AP_DOC_ROOT=”/var/www”

で、suexec では SetEnv は効果ない。とのこと。

CentOS8 では、Apache のインストール時に AP_DOC_ROOT が決まっていて、ほかのバージョンの httpd をインストールすると更新できなくなってしまう。

ということで、新しく追加する仮想サイトを ”/var/www” 内にすることにした。
/var/www/html にしてはいけない。

期待通りに動いてくれている。


追記

違った

CentOS8 にて、boot, home の容量が決まっていて、/var/www では将来心配。
別の方法を検討。

boot の容量が足りなくて、新しいサーバに、リストアしたら、”/var/www”においたサイトが”/home”にリストアされた。


追記

CentOS 8 インストール時に、home エリアは削除。
リストア前に、テンプレートのホームディレクトリを、var/www にすることで解決。

WordPress サイトヘルス

環境

  • 仮想 CentOS8
  • ルーター越しにDMZで外部へ公開
  • BIND 稼働

サイトヘルスのステータス

REST API リクエストはエラーのために失敗しました。

解決策

CentOS8 の hosts にローカルIPを追記:192.168.8.13 ****.jp

解決策に至る過程

このままでも、ワードプレスやプラグインの更新ができないわけではない。
調べたページには、パーマリンクや.htaccessをいじることで解決した例がある。
数年前に組んだ CentOS7 の仮想サーバでは、同じ問題が出ていなかった。
このサーバで「Broken Link Checker」が正常に動いていなかったので、hostsいじったなあ、という経験から。自分自身を正常にチェックができないなら、経路の問題ということで、試したら解決。
CentOS8 のLAN設定にDNSに「192.168.8.13」を追加しても解消しなかった。

サーバ本体のドメインは、hostsに反映されていたけど、
サイトを追加するたびに、hosts にも追記が必要なのは面倒だなあ。

VPN strongswanを CentOS7 Ubuntu18 でやってみた

アパートにあるMacをARD で使う準備として VPNが使えるかな?ということで

CentOS7
https://www.howtoforge.com/tutorial/how-to-setup-ikev2-vpn-using-strongswan-and-letsencrypt-on-centos-7/
Ubuntu18
https://owner.pw/blog/post/418

を参考に進めてみた。本家のサイトを見たがよくわからない。

Ubuntu がうまくいかない。CentOSはうまくいった。
strongswan は2019年11月のアップデートでいろいろ変わったよう。

Googleで検索中に現れる「ツール」で期間を絞ると、下記に、「 libcharon-extra-plugins」の記述がある

Configure strongSwan VPN Client on Ubuntu 18.04/CentOS 8

apt install libcharon-extra-plugins

としたら、VPN での接続ができるようになった。

imagemagick をwebから使う

Nextcloud の設定、概要ページに imagick がないよ、と表示されている。imagemagick をphpから使う場合の extension とのこと。
yum で調べると imagemagick は見つからない。yum で imagemagickの最新版をインストールを試みるがうまく入らない。

# convert –version
Version: ImageMagick 6.7.8-9 2019-02-01 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP

すでに入っていた。GUI のcentos には入ってるのかな。

yum search imagick

すると、以下が出てくる。
sclo-php70-php-pecl-imagick-devel.x86_64 : imagick extension developer files
: (header)
sclo-php71-php-pecl-imagick-devel.x86_64 : imagick extension developer files
: (header)
sclo-php72-php-pecl-imagick-devel.x86_64 : imagick extension developer files
: (header)
php-pecl-imagick.x86_64 : Provides a wrapper to the ImageMagick library
sclo-php70-php-pecl-imagick.x86_64 : Extension to create and modify images using
: ImageMagick
sclo-php71-php-pecl-imagick.x86_64 : Extension to create and modify images using
: ImageMagick
sclo-php72-php-pecl-imagick.x86_64 : Extension to create and modify images using
: ImageMagick

php72 を利用しているので、試しに

yum install sclo-php72-php-pecl-imagick-devel.x86_64 sclo-php72-php-pecl-imagick.x86_64

nextcloud の「 imagick がないよ」は消えた。成功しているかは、convert で実際に動かしてみないとだね。