さくらのVPS移行 v3からv5 (KUSANAGIからKUSANAGIへの移行)

ちょこちょこ修正しながらだけど参考にしたのはWordPressからの移設のここ。

https://nemlog.nem.social/blog/3563

やり方としては旧サーバで圧縮して一度SFTPのアプリを使ってローカルに落として、ローカルから新サーバにSFTPのアプリで転送して展開。データベースと/home/kusanagi/の中にある自分のサーバのファイル全部について。

ダウンタイムはおかまいなしだけど、同じ内容の同じ名前のサーバがあってDNSの情報が伝わればそれで変わるからほぼゼロじゃないかな。

データベースの移行

旧サーバで
# mysqldump --host=localhost --user=user_name --password=mypassword database_name > db.sql
db.sqlをSFTPでコピーした後に新サーバで
# mysql --host=localhost --user=user_name --password=mypassword database_name < db.sql

本体の移行

旧サーバで/home/kusanagi/本体フォルダ内で
# tar -zcvf website.tar.gz DocumentRoot
website.tar.gzをSFTPでコピーした後に新サーバで
# tar -zxvf website.tar.gz
(参考websiteのオプション間違ってた)
展開したものをうまいこと属性を生かしつつ同じ場所にコピー
元の本体フォルダのDocumentRootの中身を消したあとに展開したDocumentRootの中で
# cp -a * /home/kusanagi/本体フォルダ/DocumentRoot
(参考websaiteだと-Rだったけど属性保持とかで-aがいいっぽい)

これを終わった後にDNS設定でIPアドレスを変更したら特にエラーもなくいつの間にか新しいサイトで表示ができた。と思ったけど、証明書のエラーが出るようになってたので作り直し。

# kusanagi ssl --email <メールアドレス> <プロファイル名>
# kusanagi ssl --https redirect <プロファイル名>

これでエラーが出なくなったので完成。

さくらのVPS移行 v3からv5 (KUSANAGIいれて再度初期設定)

最初からKUSANAGIを選んで構築する必要があった。
もう一回最初から前回の設定をきれいにまとめておく。

まずサーバが変わってMacからsshで入れなくなったのでMac側で認証を削除

$ ssh-keygen -R 1XX.XXX.XXX.XXX

さくらVPSのサーバの初期化設定のとおり設定していく。

一般ユーザの追加

# useradd ***
# passwd ***

sudoの設定。初期設定でvisudoの設定は済んでいるのでこれだけ。

# usermod -G wheel ***

sshの設定。Macで.ssh/id_rsa.pubとして作ってある公開鍵を、サーバに.ssh/authorized_keysを作ってテキストをコピペ。

$ mkdir .ssh
$ chmod 700 .ssh
$ vi .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys

ここまででパスワード無しでログインできるか確認したあと、ポート設定の変更前にFirewall設定。

サービスの起動
$ sudo systemctl start firewalld.service

サービスの起動確認
$ sudo firewall-cmd --state

自動起動設定
$ sudo systemctl enable firewalld.service

自動起動設定の確認
$ sudo systemctl is-enabled firewalld.service

現在の設定の確認
$ sudo firewall-cmd --list-all

ssh-2222として新しいポート設定を追加のためコピー
$ sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/ssh-2222.xml

ssh-2222のポート番号を設定
$ sudo vi /etc/firewalld/services/ssh-2222.xml

ssh-2222のポートを追加
$ sudo firewall-cmd --permanent --add-service=ssh-2222

http,httpsのポートを追加
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https

firewallの設定を反映して内容確認
$ sudo firewall-cmd --reload
$ sudo firewall-cmd --list-all

ポート設定ができたので、サーバのコンソールパネルからパケットフィルタを利用しないに変更。

さくらVPSの初期設定に戻ってsshコンフィグをいじってsshのポートを変更したあとに標準のsshポートを削除。

sshのコンフィグ書き換え。公開鍵でログイン設定とfirewall設定後。
$ sudo vi /etc/ssh/sshd_config
#Port 22
 ↓ 
Port XXXX

#PermitRootLogin yes
 ↓ 
PermitRootLogin no

PasswordAuthentication yes
 ↓ 
PasswordAuthentication no

sshの再起動。説明はCentOS6用なのでCentOS7用はこれ。
$ sudo systemctl restart sshd

moshもインストール
$ sudo yum install mosh

mosh用のFirewall設定をdhcpをコピーして、DHCPをmosh(3箇所) ポートを60000-60009にして作成。
$ sudo cp /usr/lib/firewalld/services/dhcp.xml /etc/firewalld/services/mosh.xml
$ sudo vi /etc/firewalld/services/mosh.xml
$ sudo firewall-cmd --permanent --add-service=mosh
$ sudo firewall-cmd --reload
$ sudo firewall-cmd --list-all

新しいポートで入れることを確認したらfirewall設定のsshのポートを削除。反映して内容確認。
$ sudo firewall-cmd --permanent --remove-service=ssh
$ sudo firewall-cmd --reload
$ sudo firewall-cmd --list-all

ようやくKUSANAGIの初期設定。

$ su -
# yum update kusanagi -y
# yum --enablerepo=remi,remi-php56 update -y
# reboot
$ su -
# kusanagi init
(標準で初期設定を進めていく。web serverはNGINX。application serverはPHP7。DatabaseはMariaDB。)
# kusanagi provision yamayadenki

ここまでで一旦終了。あとはkusanagiからkusaganiへの移行。

さくらのVPS移行 v3からv5 (user ssh firewall mosh)

このあとやり直して再整理したのでこっちを見た方がいい。

ーーーーー

v3がちょうど更新タイミングなのでとりあえず1ヶ月に変更して、v5の方が安いので移行してみる。10周年記念で3ヶ月無料でオプションの容量増は最初だけというので500MBから1000円で1GBへ。

下のrsyncのコピーはよくわからず。

https://tanaka.sakura.ad.jp/2011/03/sakura-vps-upgrade.html

もう一回練習がわりにやり直し。問題はブログの中身かな。ダメなら消えてもいいや。
そもそも前に作ったブログに書いてあった最初の設定がすっかり消えてるな。大丈夫かな。

まずはさくらVPSの初期設定ガイドを順番に。

https://help.sakura.ad.jp/206208181/

centos6の説明なので7の場合は少し違ったりする。

ポート制御はさくらVPSの標準で入っているけど自分で設定するのでfirewallが起動されていなかったのでここを参考に起動と自動起動設定をしてから「パケットフィルタを使用しない」にサーバ設定を変更

https://qiita.com/kenjjiijjii/items/1057af2dddc34022b09e

moshの設定。元々参考にしていたのはCentOS 6で古かったのでこちら

yum -y install mosh から。

sshのポート変更はここ

https://qiita.com/fk_2000/items/019b62818e34be973227

v6プラス回線のまま SoftEther VPN を使って、外部のVPSとRaspberry Pi 3をブリッジしてVLANを作る

タイトルに全部キーワード入れてみました。そういうこと。

v6プラス回線だと自宅に待ち受けポートは作れない。
なので、待ち受けポートは外部のVPSにSoftEther Serverで作って、内部のラズパイからVPSに対してSoftEther Bridgeで接続。って構成。

参考ブログはこことか。図はまさにその通り。

https://qiita.com/Dillen/items/4bf681ea413d61e1895b

http://gachi3lab.blogspot.com/2017/09/vpsvpn.html

VPNserer起動 穴あけまではここで

http://harukarium.sblo.jp/article/184766762.html

ファイル取得は書いてないので下記

rootユーザで、/root/vpn/のなかで

wget https://jp.softether-download.com/files/softether/v4.34-9745-rtm-2020.04.05-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.34-9745-rtm-2020.04.05-linux-x64-64bit.tar.gz

tar zxvf softether-vpnserver-v4.34-9745-rtm-2020.04.05-linux-x64-64bit.tar.gz

VPS設定はこれだけしか書いてないけど重要
今回はGUIの管理ツールを使用します。
自宅のwindowsPCに SoftEther VPN Server Manager for Windowsをインストールします。
あとは仮想HUB一つ、bridge用(raspberry piからアクセスするためのユーザ、VPNクライアントからアクセスするためのユーザを作成します。
VPNサーバの設定については通常のVPNサーバと同じです。

ラズパイはサーバインストールしていたものをブリッジとして再利用。
ほぼ何もしていないけど、カスケード接続はした。

L2TP用のポートはあける必要があるみたいなので設定。
firewall-cmd –zone=public –permanent –add-port=500/udp
firewall-cmd –zone=public –permanent –add-port=4500/udp
firewall-cmd –reload
systemctl restart firewalld.service

これでつながるようになった。500と4500は開けないとダメになるので間違いない。

ラズパイ3でSoftEther VPN(失敗だけど・・・)

懲りずにもう一度やってみることにしました。

まずはラズパイ3の初期設定。

Macから Raspberry Pi Imager で RASPBERRY PI OS 32-BIT を書き込み。

RASPBERRY PI 側で言語など初期設定してインストールに30分ほど。

その後にコンフィグを開いてVNCとSSHをYesに変更。

SSHはこれだけ。Macから ssh pi@192.168. で、IP指定して接続

VNCはFinderの標準VNCクライアントからはうまく行かなかったので、realvnc.com から VNCクライアントをダウンロードして接続

参考にしたのはここ

ここまでが初期設定で、改めて150%表示のVNC上とSSH接続で作業開始。ここを参照。

https://qiita.com/ryo0916/items/9fe094dce7e0d9e2e222

ラズパイ側の設定は問題なし。

ところが、MacOSでSoftEther VPN Server Managerが起動しない。
(起動してもすぐ消える。どうやら32bitアプリ使えないかららしい。よく見れば対応OSXのバージョンも少し前の10.11までで32bitって書いてある。今使ってるのは10.15)

仕方がないのでWindowsから。ここの通りに設定。

http://usicolog.nomaki.jp/engineering/raspberryPi/raspberryPi_VPN.html

<重要>WindowsのServer Managerの後にもう一回Macで設定するページを見てラズパイに戻ってブリッジ設定を忘れずに。/etc/network/interfaceに以下を追加して再起動。

auto eth0
iface eth0 inet manual

# SoftEther VPN
auto br0
iface br0 inet static
address 192.168.11.**
netmask 255.255.255.0
gateway 192.168.11.1

bridge_ports eth0 tap_vlan
bridge_maxwait 10

/etc/dhcpcd.conf のinterface eth0 の設定はコメントアウト

これでラズパイの設定は終わり。

あとはルーター。

ポートフォワードというキーワードで調べて、バッファロールータはセキュリティのポート変換

https://www.buffalo.jp/support/faq/detail/15022.html

インターネット側にUDP500 LAN側にIPアドレス ポート空白
インターネット側にUDP4500 LAN側にIPアドレス ポート空白
で同じグループ名 pi にして設定。再起動。

結果、うまく行かない。下記を見ながら再設定。

https://nautilus-code.jp/articles/reinstall-softether-vpn-server-to-raspberry-pi-3b

vpnserver.serviceの書き方がちょっと違った。

どうやらルータというか回線がv6プラスだとダメらしい。

尚且つ、今使っているルータにはVPNサーバ機能が既にあるのでこんなことしなくても繋がるらしい・・・。

多分v6使わない設定にすればいける。がっかり。