ubuntu
カテゴリ
windows機からSSHコマンドで Ubuntu Server 操作
2026/02/27 15時maintenance
Ubuntu Server をインストールした、ThinkPad L380 のキーボードを、操作するのは面倒だし、Claude 先生のコマンドを打ち込むのはもっと大変、しかしこれがLAN接続・Wi-Fi接続したWindouws機から、コピー&ペーストで Ubuntu Server の設定が出来るのは、非常にありがたい、過去に Ubuntu をインストールした経験はあるが、躓いたのはここだった。
ssh [email protected]

ユーザーIDとUbuntu ServerのIPアドレスを叩く、するとパスワードを聞いてくるので、それを入力する。毎回パスワードを入力するのが面倒なので公開鍵認証機能を使ってパスワードを省略
ssh-keygen -t ed25519

「ed25519」は、SSHの鍵を作成する際に使用する暗号アルゴリズム(数学的な仕組み)の名前
上記を打ち込むと以下の問い合わせがあるので順次解答する
Enter file in which to save... → そのまま Enter
Enter passphrase... → 空のまま Enter(2回)
これで Windows 側に「鍵」が完成。

以下のコマンドで、サーバーに鍵を送り込む
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh [email protected] "cat >> .ssh/authorized_keys"

type ...: Windowsで作った公開鍵(ハンコ)の中身を読み取る。
|: その中身を SSH 越しに Ubuntu へ渡す。
cat >> ...: Ubuntu側の「許可リスト(authorized_keys)」というファイルの末尾に、そのハンコを追記する。
これで、パスワードは省略されるので、『ssh [email protected]』のバッチファイルを作成。
しかしSSH接続は一定時間操作がないと、サーバーやPC側が使っていないと判断して接続を切断してしまいまうので、作業が途中だと何処まで行ったかわからなくなってしまう。
ssh -o ServerAliveInterval=60 [email protected]

接続を維持するための設定方法、SSH接続を維持するには、サーバー側(Ubuntu)ではなく、操作している側のPC(クライアント)で「定期的に『生きてるよ!』という信号を送る」設定をする。

Windows(Tera TermやPuTTYなど)の場合設定メニューの中に「セッションを維持する」や「Keep-alive」という項目がある。
設定値の目安: 60秒(1分に1回信号を送る)

但し、PCをスリープさせた時はネットワークが切れるのでSSHも終了してしまう、tmux をインストールしておくと、万が一接続が切れても、サーバーの中では AdGuard の設定やログの監視がそのまま継続されるので、最強の組み合わせになるが、不要かな。
記事一覧