SSH接続はスタンダードプラン以上で可能
なぜSSH接続を使うのか?
- lolipopサーバの自分のフォルダを操作するため
- コマンドの実行やファイルのやり取りなどに使える
- 私が使用しているアプリケーションはTeraTerm、PuTTY、WinSCP、TortoiseSVNなどです
- pythonのpip3でパッケージを入れたりできる
SSH接続の情報
ユーザー専用ページ →サーバーの管理・設定 →SSH
lolipopではSSHを有効にしてから使用してください

| サーバー | SSH接続する先のサーバ名またはIPアドレス |
| アカウント | SSH接続時のユーザ名 |
| 接続ポート | 接続先のポート番号 |
| SSHパスワード | パスワード |
※公開鍵式方式でSSH接続することも可能なようです。その際はSSHで接続してから鍵の登録などを自分でおこなうことになります。
設定画面から行うことはできないようです
公開鍵式方式でSSH接続する方法は後述してます。
パスワードだけの運用よりは公開鍵方式のほうがセキュリティ的に良い。
windows11のコマンドプロンプトのsshで接続(SSHパスワードを使用)

ssh アカウント@ssh.lolipop.jp -p 2222
パスワードを入力
※powershellでも同じように接続できた
TeraTermで接続(SSHパスワードを使用)


ユーザ名にはアカウント
パスフレーズにはSSHパスワード
※パスワードを貼り付ける場合はShift+Insertで貼り付ける必要がある

公開鍵方式を使ってコマンドプロンプトでssh接続
windows標準の機能で公開鍵と秘密鍵を作成する
コマンドプロンプトを起動して公開鍵と秘密鍵のペアを作成する
今回は鍵のファイルパスを指定して作成した
パスフレーズは空白のままとした(Enterキーのみ)
id_ed25519_2(秘密鍵)とid_ed25519_2.pub(公開鍵)が作成される
キーに含めるコメント(ーCで指定する文字列)は日本語ではなく英数字で入力したほうが良い
C:\Users\test>ssh-keygen -t ed25519 -C "適当な文字列"
Generating public/private ed25519 key pair.
Enter file in which to save the key (C:\Users\test/.ssh/id_ed25519): C:\Users\test/.ssh/id_ed25519_2
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\test/.ssh/id_ed25519_2
Your public key has been saved in C:\Users\test/.ssh/id_ed25519_2.pub
The key fingerprint is:
SHA256:eYzxxxxxxxxxxxxxxxtLC9s 適当な文字列
The key's randomart image is:
+--[ED25519 256]--+
| ooo |
| o o++o |
| o o++o |
| o o++o |
+----[SHA256]-----+
サーバに公開鍵をセット
/home/users/2/pepper.jp-xxxxxx/.ssh/authorized_keysを作成する
[pepper.jp-xxxxxxxx@std009 ~]$ mkdir ~/.ssh
[pepper.jp-xxxxxxxx@std009 ~]$ chmod 700 ~/.ssh
[pepper.jp-xxxxxxxx@std009 ~]$ touch ~/.ssh/authorized_keys
[pepper.jp-xxxxxxxx@std009 ~]$ chmod 600 ~/.ssh/authorized_keys
authorized_keysファイルに公開鍵(C:\Users\test/.ssh/id_ed25519_2.pubの中身)を追加する
ssh-rsa AAAA・・・・・ZuAF pepper.jp-xxxxxx@std009.phy.lolipop.jp
ssh-ed25519 AAAA・・・・・Ql93 ssssssu@windowsXXXX
ssh-ed25519 AAAA・・・・・USmM 適当な文字列 ←このように追記する
この例では3つキーが登録された状態
一番右の文字列はキー作成時の「-C」で指定した何のキーなのか識別するための文字列です
windows11のコマンドプロンプトのsshで接続する
C:\Users\test>ssh pepper.jp-xxxxx@ssh.lolipop.jp -p 2222 -i C:/Users/test/.ssh/id_ed25519_2 -o UpdateHostKeys=no
[pepper.jp-xxxxx@std009 ~]$ ls -al
合計 5388
drwx-----x 12 pepper.jp-xxxxx LolipopUser 4096 9月 11 2022 .
drwx--x--x 70 root root 4096 9月 19 16:06 ..
-rw------- 1 pepper.jp-xxxxx LolipopUser 8830 10月 9 22:41 .bash_history
-rw-r--r-- 1 pepper.jp-xxxxx LolipopUser 76 3月 19 2022 .bash_profile
-iで指定するファイルは自分のユーザのフォルダ内などにしないとエラーになってしまう
たとえばEドライブとかeveryoneがついてるフォルダだったりするとキーを読み込めずにエラーになる仕様のようです
あらかじめ接続情報を登録しておくことで、接続時に簡略化できる
C:/Users/test/.ssh/configに次のようにlolipopと名前を付けた接続情報を書いておく
Host lolipop
HostName ssh.lolipop.jp
User pepper.jp-xxxxx
Port 2222
IdentityFile C:/Users/test/.ssh/id_ed25519_2
IdentitiesOnly yes
UpdateHostKeys no
BatchMode yes
C:\Users\test>ssh lolipop
[pepper.jp-xxxxx@std009 ~]$
このように名前を指定するだけで接続できる
秘密鍵をPuTTY形式(ppk)に変換
PuTTY/Plink/TortoisePlink/Pageant/WinSCP(Windows) などで鍵を指定する場合のために鍵の形式を変換したい場合
puttyをダウンロードしてインストール
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

PuTTYgenを立ち上げ、「Load」ボタンで、秘密鍵(C:/Users/test/.ssh/id_ed25519_2)を指定する
「Save private key」ボタンで、C:/Users/test/.ssh/id_ed25519_2.ppkを指定する
teratermではこの変換したファイルを指定する
まとめ
- lolipopではSSHを有効にしてから使用する必要がある
- パスワード文字列よりは公開鍵方式のほうが安全(秘密鍵が流失しないように注意する)
- カギにパスフレーズを登録しておいたほうがもっと安全
- windows11標準のSSHだけで十分
- 公開鍵は/home/users/2/pepper.jp-xxxxxx/.ssh/authorized_keysに追加しておく
- sshで接続するときに使用するのは秘密鍵(OpenSSH形式の鍵)
- PuTTY/Plink/TortoisePlink/Pageant/WinSCP(Windows) などで秘密鍵を指定する場合はPuTTY形式(ppk)にしたものを指定する
- ppkに変換するためにはPuTTYのPuTTYgenで変換する