0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

セキュアサーバに、なりたいな「ハイ!rclone crypt」⑥サーバ構成を改変してみる

Last updated at Posted at 2025-12-26

📚 シリーズ目次

本シリーズは、作業の一部で Linux Mint 22.2 Cinnamon Edition を使用します。
Windows 11 での作業手順も併記しています。)

1. はじめに

さて、スマホ上でのサーバ構築はひと区切りつきました。SVNのコミットに失敗することがあるくらいで他は問題なく動いているのですが、遅い。いや、計画段階で遅いことは覚悟の上でしたが、ここまで遅いのかと。なので、サーバ構成にテコ入れして、実用できる状態に改変していきたいと思います。

本記事では、非rootのスマホに仮想マシンを導入し、Android OS上でネイティブなLinuxサーバを稼働させることを目指しましたが方向転換します。

2. サーバ構成の改変

2.1 具体的にどうするの?

こうします。スマホのTermux上で稼働させていたQEMUとDebian環境を、ごっそりとサーバPCに移行します。今回はクライアントとサーバを同一PCで運用します。CPUのアーキテクチャが変わるので、再セットアップ不可避でありますw

2.2 あれ?QEMUは使わないの?

Linux PC専用ならQEMUで問題ないのですが、Windows PCにも容易に移設できる運用ができたら柔軟で良いなと思いました。今回はVirtualBoxです。

2.3 Dockerは使わないの?

Docker運用も検討しました。Docker環境の外側でのrclone cryptマウントなら対応できそう。このマウントまわりも環境内に取り込みたいので、採用は見送りです。

3. VirtualBoxのセットアップ

3.1 VirtualBoxのインストール

とにもかくにも、まずはVirtualBoxが必要です。Linux Mintのソフトウェアマネージャから、以下のソフトウェアをインストールしてください。

  • Virtualbox
  • Qemu-utils

Windows用インストーラは、こちらのサイトからダウンロードできます。

qemu-img.exe を使用しますので、以下のコンポーネントが必要です。

スクリーンショット 2025-12-25 150646.png

Linux環境ではソフトウェアのインストール後、vboxusers をユーザの属するグループに追加してください。

3.2 仮想マシンの作成

まずは、VirtualBoxを起動して仮想マシンを作成してください。ツールバーの「新規(N)」ボタンをクリックし、エキスパートモードを使用して作成します。Windows版は、環境設定のタブを「高度」に切り替えておくとエキスパートモードになります。

項目 設定
名前(N) deian-amd64
メインメモリー(M) 1024 MB
プロセッサー数(P) 2 CPU
ハードディスク(K) 追加しない

仮想マシンが作成できたら、設定の「ネットワーク」を開いてNATの「高度(D)」から「ポートフォワーディング(P)」の設定を行ってください。

名前 プロトコル ホストポート ゲストポート
SSH TCP 2222 22
HTTPS TCP 8443 443

3.3 Debianのダウンロード

Debianの公式サイトからQEMU用のクラウドイメージをダウンロードして使用します。以下のコマンドを実行してください。ダウンロード後の処理で、ダウンロードした .qcow2 ファイルを .vdi 形式に変換しています。

Linux PC
cd "$HOME/VirtualBox VMs/debian-amd64"
curl -LO \
  https://cloud.debian.org/images/cloud/trixie/latest/debian-13-nocloud-amd64.qcow2
qemu-img convert -O vdi \
  debian-13-nocloud-amd64.qcow2 \
  debian-13-nocloud-amd64.vdi

Windows環境では、以下のコマンドで対応できます。

Windows PC
$env:Path = "C:\Program Files\qemu;$env:Path"

cd "$env:USERPROFILE\VirtualBox VMs\debian-amd64"
curl.exe -LO `
  "https://cloud.debian.org/images/cloud/trixie/latest/debian-13-nocloud-amd64.qcow2"
qemu-img.exe convert -O vdi `
  "debian-13-nocloud-amd64.qcow2" `
  "debian-13-nocloud-amd64.vdi"

3.4 Debianの起動

Linux環境でKVMモジュールがロードされていると、VirtualBoxがCPUのハードウェア仮想化支援機能を使用できません。今回は、ブラックリストを作成してKVMモジュールのロードを阻害します。以下のファイルを作成し、PCを再起動してください。

Linux PC
sudo nano /etc/modprobe.d/blacklist-kvm.conf
Linux PC /etc/modprobe.d/blacklist-kvm.conf
blacklist kvm
blacklist kvm_amd
blacklist kvm_intel

Windows環境では、この対応は不要です。

それではDebianを起動します。VirtualBoxから設定の「ストレージ」を開いて「コントローラー: SATA」配下に以下のハードディスク追加してください。ツールバーの「起動(T)」ボタンをクリックすると、Debianが起動します。

  • debian-13-nocloud-amd64.vdi

4. Debianのセットアップ

4.1 SSH接続の準備

まずは root でログインしてください。パッケージを更新してOpenSSHサーバをインストールします。SSH接続できるまでは手打ちでのコマンド実行ですw

Debian
apt update
apt upgrade
apt install openssh-server

続いて、SSH接続用のユーザを作成します。以下のコマンドで作成してください。作成後に、ユーザをsudoグループに追加します。

Debian
adduser --shell /bin/bash --gecos "Debian,,," debian
usermod -aG sudo debian

4.2 ターミナルからの接続

それでは、ターミナルからDebianに接続して作業します。以下のコマンドで接続してください。初回接続時は、未知の接続先として警告が出ますので yes と入力してください。

Linux PC
ssh debian@localhost -p 2222

ターミナルからSSHで接続できたら、DebianにSSH鍵認証を設定します。以下のコマンドで authorized_keys ファイルを開いてください。PCで作成した id_ed25519.pub をテキストエディタで開いて、中身の文字列をまるっと authorized_keys にコピペで追加します。追加したら「Ctrl + O」からの「Enter」で保存し、「Ctrl + X」で終了します。

Debian
mkdir ~/.ssh
nano ~/.ssh/authorized_keys

追加後は、PC側のSSHクライアント設定ファイルを準備します。config ファイルを作成して、以下のように記載してください。

Linux PC ~/.ssh/config
Host virtpc-ssh
  HostName 127.0.0.1
  User debian
  Port 2222
  IdentityFile ~/.ssh/id_ed25519

これで、以降は以下のコマンドで接続できるようになります。パスワードは不要です。

Linux PC
ssh virtpc-ssh

4.3 サーバの構築

ここからの作業については、差分のみ列挙します。まずはホスト名を変更します。

Debian
sudo hostnamectl set-hostname VirtualBox

キーワードについては以下のように変更します。

変更前 変更後
termux-ssh mobile-ssh
termux-sftp mobile-sftp
termux-secure mobile-secure
Rclone Mounter for Termux Storage Rclone Mounter for Mobile Storage
termux.key virtpc.key
termux.crt virtpc.crt
Termux Local Server VirtPC Local Server
termux.home.arpa virtpc.home.arpa
termux-local-server.crt virtpc-local-server.crt

5. おわりに

処理は確かに速くなりましたが、なんというかコレジャナイ感が拭えません。スマホをroot化しないと満足できない身体になってしまったかもしれない。セキュアなデータ保存を優先するか、スマホで完結を目指すか、あるいはroot化か。


◀️ 前の記事 次の記事 ▶️
セキュアサーバに、なりたいな「ハイ!rclone crypt」⑤Gitサーバを構築してみる 未定
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?