踏み台サーバーへのログインを目的の使用サーバーに簡単にログインする方法.踏み台サーバーをサーバー1,目的のサーバーをサーバー2とする. ターミナルは2つ使用するため,それぞれを1,2とする.
環境
- macOS Mojave 10.14.6
鍵の生成
以下のコマンドによりサーバー1の鍵を作成する.
$ cd ~/.ssh
$ ssh-keygen -t rsa -b 2048 -f /Users/Username/.ssh/keyname1
2点は適宜書き換え
- Username
- keyname1
以下のような表示が出るのでEnter×2(パスワードはなし)
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
すると鍵が生成される
Your identification has been saved in /Users/Username/.ssh/keyname1.
Your public key has been saved in /Users/Username/.ssh/keyname1.pub.
The key fingerprint is:
・
・
・
これで
- keyname1
- keyname1.pub
が生成されるので同様にサーバー2の公開鍵を作成する.
$ ssh-keygen -t rsa -b 2048 -f /Users/Username/.ssh/keyname2
- keyname2
これで
- keyname2
- keyname2.pub
が生成される.
鍵の配置と.ssh/config設定
ローカルからサーバー1に公開鍵を移動させる
$ cat keyname1.pub | ssh user@IP "mkdir -p ~/.ssh; cat >> ~/.ssh/authorized_keys"
- keyname1
- user@IP
サーバー1のパスワードを聞かれるので入力する.
airi@133.9.66.202's password:
vimでconfigを作成・編集する.
$ touch config
$ vi config
以下のように書き込む.
Host server1
Hostname IP1
User user
IdentityFile /Users/Username/.ssh/keyname1
- user
- Username
- server1
- IP1
- keyname1
これで以下のコマンドでサーバー1にログインできる
$ ssh humidai
ターミナルをもう1つ開いてサーバー1にログインして鍵を確認する.
$ ssh humidai
$ cd .ssh
$ cat authorized_keys
ssh-rsa...が入ってればok
次のコマンドで鍵をサーバー1に送信する.
$ scp keyname2.pub user@server1:/home/user/
- keyname2
- user
- server1
$ cd ..
$ ls
これでkeyname2.pubが送信されてるかどうか確認できる.この鍵をサーバー2に送信したい.
$ scp keyname2.pub user@IP2:/home/user/
- keyname2
- user
- IP2
パスワードが聞かれたらサーバー2のパスワードを答える
次にサーバー2にログインし,鍵の移動を行う.
$ ssh user@IP2
$ mkdir .ssh
$ cat keyname2.pub > ~/.ssh/authorized_keys
鍵の移動が終わったらvimでconfigを編集し,Hostを追加する.
$ vi config
Host server1
・
・
・
Host server2
Hostname IP2
User user
IdentityFile /Users/Username/.ssh/keyname2
ProxyCommand ssh humidai nc %h %p
- user
- Username
- server2
- IP2
- keyname2
これで以下のコマンドでサーバー2にログインできる.
$ ssh server2
- server2
これが終わったらサーバー1・2からkeyname2.pubを削除すること.
$ rm betelgeuse.pub
Minicondaのインストール
Minicondaのインストール
公式サイトでMiniconda Linux 64-bitをダウンロードする.
ダウンロードに保存した状態でサーバー2に送信する.パスは保存場所により適宜変更すること.
$ scp Downloads/Miniconda3-latest-Linux-x86_64.sh user@server2:/home/user
- user
- server2
送信後はファイルを実行する.
$ ssh server2
$ bash Miniconda3-latest-Linux-x86_64.sh
- server2
ひたすらエンター.以下の質問が出てきたらyesを答えれば良い.
Do you accept the license terms? [yes|no]
これにはそのままエンターでよかったはず.
Do you wish the installer to initialize Miniconda3
by running conda init? [yes|no]
[no] >>>
次にpathの編集を行う.
$ vi .bashrc
ファイルの最後に以下を書き込む.
・
・
・
export PATH=/home/user/miniconda3/bin:$PATH
- user
これでcondaが反応すれば完了!
$ source .bashrc
$ conda
Visual Studio Code Insiderの導入
参考にしたサイト
Visual Studio Code Insiderをダウンロード
ダウンロードできたら拡張機能検索窓でremote developmant
を検索し,インストール.これで必要な拡張機能が一括でダウンロードされる.
Shift+Cmd+P
でコマンドパレットからRemote-SSH: Connect to Host
を利用することで接続が可能.
ファイルの送受信について
- ファイルの送信
scp ファイル名 送信先のアドレス:ファイルを保存するディレクトリ
- ファイルの受信
scp とってくるところのアドレス:ファイル名 ファイルを保存するディレクトリ