さくらVPSへSSH接続&FTP接続するまで

■はじめに

Teratermなど便利なツールを使うと物事の背景で何が起きているのか分からなくても進んでしまうことが嫌だったのでできるだけ手動で進めていく。

開発環境はubuntuインスタンスのWSL。

やりたいことは、さくらVPSへSSH接続するまで。

※さくらもubuntu。

鍵を再生成したため、以前登録していたGithubの公開鍵の再登録もおこなう。

■ローカル環境で秘密鍵と公開鍵を作る

ホームディレクトリへ。

$cd ~

ローカル秘密鍵と公開鍵を保管する場所。

$mkdir ~/.ssh
$cd ~/.ssh

作成。

$ssh-keygen -t rsa

以下、やりとり。

Generating public/private rsa key pair.
Enter file in which to save the key (xxxxxxxxxx/.ssh/id_rsa): [鍵の出力先の名前] 


←デフォルトがベタなのでそのままEnterキーを。

Enter passphrase (empty for no passphrase): [パスフレーズ]
Enter same passphrase again: [パスフレーズ]


前回も書いたが、タイプミスすると詰むのでコピペでミスを未然に防ぐ。

秘密鍵と公開鍵は無事作成された場合。

Your identification has been saved in xxxxxxxxxx/.ssh/id_rsa.
Your public key has been saved in xxxxxxxxxx/.ssh/id_rsa.pub.
The key fingerprint is:
The key's randomart image is:
+--[ RSA 2048]----+

念のため、秘密鍵と公開鍵は連動しているか確認。

ssh-rsa 〇〇〇の〇〇〇が同じであればおk。

※公開鍵は、〇〇〇の末尾に@ローカル環境のホスト名がつくことは正しいよね??

$ssh-keygen -y -f id_rsa(秘密鍵)
$cat id_rsa.pub(公開鍵)


■リモート接続とエラー

リモート接続を試みるとこういうエラーが出てきた。


の前に横道。

※ユーザー名とホスト名についてどれがどれか理解するのに苦戦したのでメモ。

ユーザー名:VPSのコンソールで出てくる「aaaaaaa@bbbbb」のaaaaa

ホスト名:さくらVPSの管理画面上の「標準ホスト名」と書かれた箇所。

VPSのコンソールで出てくる「aaaaaaa@bbbbb」のbbbbbbだけではないことがミソ。

僕はここでハマった\(^o^)/

vs.sakura.ne.jp もホスト名のようです。


話を戻す。

リモート接続を試みるとこういうエラーが出てきた。

$ssh ユーザー名@ホスト名

エラー内容


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@       WARNING: POSSIBLE DNS SPOOFING DETECTED!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
The ECDSA host key for ホスト名 has changed,
and the key for the corresponding IP address xxxxxxxxxxxxxxxx
has a different value. This could either mean that
DNS SPOOFING is happening or the IP address for the host
and its host key have changed at the same time.
Offending key for IP in xxxxxxxxxxxxxxxxxxxxxx
 remove with:
 ssh-keygen -f "xxxxxxxxxxxxx/.ssh/known_hosts" -R xxxxxxxxxxxx

どうもknown_hostsとOSを再インストールする前のファイルがローカル環境(リモート接続する際の環境)に残っていることが原因らしい。

そこで、known_hostsファイルを削除。

$rm ~/.ssh/known_hosts


よし。障害は消えただろう。再チャレンジ!!

ローカル環境$ ssh ユーザー名@ホスト名
ユーザー名@ホスト名 password: 
リモート接続先:~$ mkdir ~/.ssh
リモート接続先:~$ chmod go-rwx ~/.ssh
リモート接続先:~$ echo "ここにコピーしていた内容を貼り付け" > ~/.ssh/id_rsa_pub

※echo "ここにコピーしていた内容を貼り付け" > ~/.ssh/id_rsa_pubの

””

は必要。

あと~/.ssh/id_rsa_pubの拡張子は不要である。

僕はここでもトラブり、id_rsa.pubとやってしまっていた。

ここだけの話、この記事どおりに進んでいることはなく、数え切れないエラーを重ねたうえで書くべきコードを身をもって学び、記録として残している(笑)。


、、、とコピペでやるのもいいけど、コピペはあまりにアナログでイージーミスが恐いので下記のQiita記事を参考にscpコマンドというものを使う方法にもトライ。


≪参考≫


ローカル環境$scp ~/.ssh/id_rsa.pub ユーザー名@ホスト名 :~/.ssh/id_rsa_pub


公開鍵を ~/.ssh/authorized_keysに追記するべく、リモート接続先へ。

ローカル環境$ ssh ユーザー名@ホスト名
ユーザー名@ホスト名 password: 
リモート接続先:cat ~/.ssh/id_rsa_pub >> ~/.ssh/authorized_keys
リモート接続先:uniq ~/.ssh/authorized_keys > ~/.ssh/authorized_keys.uniq
リモート接続先:mv ~/.ssh/authorized_keys.uniq ~/.ssh/authorized_keys
リモート接続先:chmod go-rwx ~/.ssh/authorized_keys


■FTP接続


これはたいしたことなかったので、下記の記事をそのまま参考にすすめればおkでした。

記事が消えると困るので、流れをメモ。

①トップ画面の上タブの左側の「編集」をクリック

②「設定」をクリック

③左側の列のなかの「SFTP」をクリック。ここで、ローカル環境で作成した秘密鍵(僕の場合、WSLコンソール)をクリック。

※場所はローカルディスクの検索タブに「id_rsa」と打ち込めば表示される。

④「ファイルの形式がファイルジラに対応していないので、形式を変えて保存する?」と聞かれるので、「はい」。

⑤秘密鍵のパスワードを入力。

⑥「ファイル名」を入力する。

※オリジナルの「id_rsa」とファイルジラへ保存する秘密鍵は形式が違うので「id_rsa」でもいいらしいが、僕は「id_rsa_filezilla」とした。

➆左側の「OK」をクリック。

⑧あとは、「サイトマネージャー」をクリックし、接続する。

※プロトコルは「SFTP」

※接続するホストの信頼性の警告ウィンドウがでるが、「OK」をクリック。

※「常にこのホストを信用し、この鍵をキャッシュに追加」をクリックするかはケースバイケース。プライベートで利用する場合はクリックしていいかと。

おしまい。


≪参考≫さくらVPSのセキュリティ設定後にFileZillaでFTP(SSH)接続する方法


ここから先は

0字

¥ 100

この記事が気に入ったらサポートをしてみませんか?