操作ガイド — SSHBorgを最大限に活用するための手順書。
ホスト画面の + ボタンをタップして新しいサーバーを追加します。
ubuntu、root、deploy)。初回接続時にSSHBorgはサーバーのフィンガープリントを表示し、承認を求めます。これはセキュリティチェックです。接続先が正しいサーバーであり、なりすましでないことを確認します。承認前に、サーバー管理者から提供されたか信頼できる手段で確認したフィンガープリントと一致するかを確かめてください。
承認後、フィンガープリントはローカルに保存されます。将来の接続でフィンガープリントが変わった場合、SSHBorgは警告を表示します。これはサーバーの再構築、鍵のローテーション、または中間者攻撃を示している可能性があります。
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
SFTPファイルマネージャーを使うと、スマートフォンからサーバー上のファイルを直接参照、アップロード、ダウンロード、リネーム、削除できます。ホスト画面で SFTP をタップしてSFTPセッションを開きます。
フォルダをタップして開きます。戻る矢印またはパスバーの任意のセグメントをタップしてディレクトリツリーを上に移動します。
シンボリックリンクは小さなリンクアイコンバッジで表示されます。シンボリックリンクをタップするとターゲットに移動します。ディレクトリを指す場合は中に入り、ファイルを指す場合は通常のファイルと同様に動作します。
アップロードボタン(↑)をタップして、スマートフォンのストレージから1つ以上のファイルを選択します。アップロードはすぐに開始され、進行状況が画面上部に表示されます。
ファイルをタップするとすぐにダウンロードされます。フォルダ全体をダウンロードするには、その横にある ダウンロードアイコンをタップします。SSHBorgはディレクトリツリー全体をダウンロードし、スマートフォンの Downloads フォルダに保存します。
保存先に同名ファイルが既に存在する場合、ダイアログで 上書き、ファイルの スキップ、または転送全体の キャンセル を選択できます。
任意の項目を長押しして選択モードに入り、追加の項目をタップして選択を増やします。ツールバーに現在の選択に対する操作が表示されます:
鍵ベースの認証はパスワードよりも安全で、設定後は何も覚えたり入力したりする必要がありません。
設定 → SSH鍵 → 新しい鍵を生成 に進みます。SSHBorgは以下をサポートします:
後で識別しやすいよう、意味のある名前(例:my-vps や work-server)を付けてください。
鍵を生成したら、タップして 公開鍵 を表示します。コピーして、ログインしたいユーザーのサーバー上の ~/.ssh/authorized_keys ファイルに貼り付けます。
mkdir -p ~/.ssh
chmod 700 ~/.ssh
echo "ssh-ed25519 AAAA...コピーした鍵..." >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
/etc/ssh/sshd_config に PubkeyAuthentication yes があることを確認してください。ほとんどのディストリビューションではデフォルトで有効ですが、一部のセキュア強化イメージでは無効になっている場合があります。
SSHBorgはオプションで 追加パスフレーズ を提供しています(設定 → SSH鍵 → 鍵をタップ → 暗号化を有効にする)。有効にすると、鍵はSSHBorgが保存しないパスフレーズで暗号化され、鍵を使用するたびに入力が求められます。
スマートフォンに機密サーバー認証情報を保存している場合、または生体認証ロックを無効にしている場合は、強くお勧めします。
端末で入力中、SSHBorgはキーボードの上に候補バーを表示します。候補は接続したユーザーのシェル履歴から取得されます。
端末セッションが開かれると、SSHBorgはリモートサーバーからシェル履歴ファイルを読み込みます。以下の場所を順に試みます:
~/.bash_history — Bashシェルのデフォルト~/.zsh_history — Zshのデフォルト($HISTFILEが設定されている場合も確認)~/.local/share/fish/fish_history — Fishシェルユーザー向け存在して読み取り可能な最初のファイルが使用されます。入力するとコマンドがリアルタイムでフィルタリングされ、候補バーにチップとして表示されます。チップをタップするとコマンドが挿入されます。
候補が表示されない
~/.bashrc に追加:
HISTFILE=~/.bash_history
HISTSIZE=10000
HISTFILESIZE=20000
~/.zshrc に追加:
HISTFILE=~/.zsh_history
HISTSIZE=10000
SAVEHIST=10000
setopt APPEND_HISTORY SHARE_HISTORY
候補が別のユーザーのものになる
sudo su - root(または su で別のユーザーに切り替え)を実行した場合、候補バーは root ではなく元のログインユーザーの履歴を表示し続けます。これは、SSHBorgがシェル起動前に接続時の認証情報を使って履歴ファイルを読み込むためです。
root としてログインするよう設定した別のホストエントリーを追加してください(サーバーが許可している場合)。
端末はタイピング以外にも、いくつかのタッチジェスチャーに対応しています:
SSHエージェント転送を使うと、SSHBorgに保存された鍵を、リモートサーバー内部から行われるさらなる接続の認証に使用できます。例えば、プライベートリポジトリの git clone や、2台目のサーバーへのホップなどです。
ホストを追加または編集する際に、エージェント転送トグルを有効にします。SSHBorgはそのセッションのSSHエージェントとして機能します。
サーバーはエージェント転送を許可している必要があります。/etc/ssh/sshd_config を確認:
AllowAgentForwarding yes
ほとんどのシステムではデフォルトです。変更後はSSHデーモンを再起動:
sudo systemctl restart sshd
ラップトップやデスクトップからもこのサーバーに接続する場合、ローカルの ~/.ssh/config で永続的に転送を設定できます:
Host myserver
HostName 203.0.113.42
User ubuntu
ForwardAgent yes
SSHはスマートフォンとサーバー間のリアルタイムTCP接続です。接続が中断されると、たとえ一瞬でも、セッションとその中で実行されているすべてが失われます。
モバイルネットワークは特に接続が切れやすく、理由は以下の通りです:
ターミナルマルチプレクサーはサーバー上で永続的なセッションを実行し、SSH接続から完全に独立しています。接続が切れても、セッションとその中で実行されているすべてが継続されます。再接続したとき、セッションに再アタッチすると、すべてがそのままになっています。
これはスマートフォンからサーバーを管理する上で最も有用な習慣です。
tmuxはほとんどの最新Linuxディストリビューションで利用可能で、推奨の選択肢です。
# 新しい名前付きセッションを開始
tmux new -s work
# セッションからデタッチ(実行を継続)
Ctrl+B、その後 D
# 実行中のセッションを一覧表示
tmux ls
# セッションに再アタッチ
tmux attach -t work
# 最新のセッションに再アタッチ
tmux attach
screenは古いですが、tmuxがインストールされていない可能性がある最小サーバーイメージを含む、ほぼすべてのUnixシステムで利用できます。
# 新しい名前付きセッションを開始
screen -S work
# セッションからデタッチ
Ctrl+A、その後 D
# 実行中のセッションを一覧表示
screen -ls
# セッションに再アタッチ
screen -r work
tmux attach || tmux new -s main~/.bashrc または ~/.zshrc に tmux attach || tmux new -s main を追加すると、SSHBorgでログインするたびにマルチプレクサーセッションが自動的に開始されます。
踏み台ホスト(踏み台サーバーとも呼ばれます)は、インターネットから直接アクセスできないターゲットサーバーに到達するために経由する中間サーバーです。SSHBorgはシングルおよびマルチホップチェーンをネイティブにサポートしています。
複数の中間サーバーを経由する必要がある場合(例:インターネット → 踏み台 → DMZ → ターゲット)、各ホップのエントリーを作成してチェーンします:
デスクトップの ~/.ssh/config での同等の設定は次のようになります:
Host bastion
HostName bastion.example.com
User admin
ForwardAgent yes
Host target
HostName 10.0.1.50
User ubuntu
ProxyJump bastion
ForwardAgent yes
この設定で、ラップトップからの ssh target は透過的に踏み台を経由します。
SSHBorgでは、異なるサーバーへのものも含め、複数のSSH端末セッションとSFTPファイルマネージャーセッションを同時に開いておくことができます。
tmux または screen を使用してください。
設定 → セキュリティ → 生体認証ロック で有効にします。有効にすると、SSHBorgはホスト、認証情報、セッションデータを表示する前に指紋または顔認証を要求します。
非アクティブタイムアウトを設定できます。バックグラウンドでその時間が経過すると、アプリは自動的にロックされます。
SSHBorgはデフォルトでスクリーンショットと画面録画をブロックし、機密性の高い端末内容が最近使ったアプリの画面やスクリーンキャプチャツールから漏れないようにします。
スクリーンショットが必要な場合(例:端末出力の共有)は、設定 → セキュリティ → スクリーンショットを許可 で一時的に無効にできます。
すべての認証情報(パスワード、秘密鍵、パスフレーズ)は Android Keystore(Android 10+で利用可能なハードウェアバックアップされたセキュアエンクレーブ)を使用して暗号化して保存されます。外部ストレージへの書き込みや、どこかへの送信は一切行われません。