VPSサーバを借りた時の基本設定、Redhat系

2023年3月22日

VPSサーバを借りた時の基本設定を書く。

SSHで接続する

たいていは、パスワードや認証キー等を使いSSH経由で接続する。初期の操作方法としては、おそらくこれ以外にはない。

アップデートする

dnf update
dnf upgrade

tailnetに接続する

このサーバにtailscaleクライアントを入れる。

https://tailscale.com/kb/1031/install-linux/にインストール方法がある。・

curl -fsSL https://tailscale.com/install.sh | sh

あとは、「tailscale up」をすれば良いが、headscaleサーバを立てている場合には、「tailscale up –login-server https://example.com」などとする。

tailscale/headscaleのコントロールパネルでこのサーバを受け入れてやるとIPアドレスが与えられ、tailnet内の他のマシンに接続できるようになる。

これで、特にsystemctlをいじることもなく、再起動してもtailscaleは勝手に立ち上がる。

cockpitを入れる

これがあると、かなり楽。

dnf install cockpit
systemctl enable cockpit.socket
systemctl start cockpit.socket

「firewall-cmd –list-all」でcockpit用のポート(9090)が空いていることを確かめること。実際には、cockpitサービスが列挙されているはず。

cockpitにアクセスする

ブラウザで「https://123.123.123.123:9090」にアクセスする。オレオレ証明書を使っているのでブラウザが警告してくるが無視して接続する。

基本的に、これ以降SSH端末は不要になるのだが、cockpitではファイル転送ができないので、その目的にはWinSCP等を使う必要はある。–>これも不要になった。 Syncthingで簡単に転送できる。

※既にtailscaleを入れているのであれば、そのアドレスでもよい。デフォルトでは、publicゾーンでポートがオープンされているが、tailscale経由のみの場合は、trustedゾーンにし、truxttedゾーンにtailscale0インターフェースを追加しておく。これでtailnet内からしかアクセスできなくなる。

# firewall-cmd --add-service=cockpit --zone=trusted これは不要。trustedではすべてのポートが公開される。
firewall-cmd --add-interface=tailscale0 --zone=trusted # tailscale0仮想インターフェースをtrustedに追加
firewall-cmd --remove-service=cockpit --zone=public # publicゾーンからcockpitサービスを削除
firewall-cmd --runtime-to-permanent # 永続化させる。

sshをふさぐ

いらないのでふさいでしまう。デーモンを止めてもいいが、ここではポートをブロックする。

firewall-cmd --remove-service=ssh --zone=public
firewall-cmd --runtime-to-permanent

通常のVPSの場合、何かおかしなことがあってアクセスできなくなっても、VPSサーバ会社のコンソールからアクセスできるので問題無い。

cockpitのパスワードを排除する

もはやパスワードもいらないので、パスワード無しでログインできるようにする。

PAM認証システムでパスワード無しでログインするを参照のこと。

Syncthingをインストールする

ファイル転送はSyncthingが最も簡単だ。そして、Tailnet上でSyncthingを使うと、そうでない場合よりも接続しやすくなる。例えば、ノートパソコンがどこに行こうが、固定IPで良いからだ。

Alma Linux8 VPSにSyncthingでインストールと設定を行う。

dockerをインストールする

dockerのインストール

dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
dnf -y install docker-ce docker-ce-cli containerd.io
systemctl enable docker
systemctl start docker

docker-composeのインストール

wget https://github.com/docker/compose/releases/download/1.25.5/docker-compose-Linux-x86_64
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

未分類

Posted by ysugimura