• 追加された行はこの色です。
  • 削除された行はこの色です。
(2013-04-17) 中村.作成中.

#hr
//* 目次
#contents

* ログインについて [#bd870fce]
* ログインについて [#u70200b9]
計算科学演習Aでは,演習室端末(Windows 7)を利用して,遠隔のπコンピュータ(Linux)にログインし,演習を行います.
- 各自のアカウント名は以下の通りです.
-- 修士学生:m999x999  (m, xは小文字.999 999は学籍番号に読み替え).
-- 学部学生:t9999999  (tは小文字.9999999は学籍番号に読み替え).

プログラムをπコンピュータ上で実行するには,πコンピュータのフロントエンドであるログインサーバ ~
(''pi.ircpi.kobe-u.ac.jp'') にログインする必要があります.
* 演習室端末のログイン [#jdb74eca]
演習初日に,演習室端末にログインするための初期パスワードを通知します.~
ログインが完了したら,パスワードを自分の覚えやすいものに''変更''してください.

ログインにはsshを使いますが,''公開鍵認証''が必要です.本ページを参考にして準備しておきましょう.
** 演習室端末(Windows7)のパスワード変更方法 [#l8ebfb6f]
+ ctrl-alt-delete を押し,「パスワードの変更」を押す.
+ 古いパスワードと新しいパスワード(x2)を入力する.
-- &color(red){''注意''};:パスワードを忘れるとログインできなくなります.手帳にメモを取るなど細心の注意を払うこと!

* [[MobaXterm:https://mobaxterm.mobatek.net/]]アプリケーションの設定 [#xb58a50c]
- Windows Start ⇒ Computer ⇒ ローカルディスク(C)⇒ Program Files ⇒ MobaXterm ⇒ exeファイルを右クリックでデスクトップにドラッグ ⇒ 右ボタンを離す ⇒ メニューから「ショートカットをここに作成」を選択し,デスクトップにMobaXtermのアイコンを作成する.
~
~

* πコンピュータへのログインについて [#bd870fce]

プログラムをπコンピュータ上で実行するには,πコンピュータのフロントエンドであるログインサーバ (''pi.ircpi.kobe-u.ac.jp'') にログインする必要があります.

ログインには,''公開鍵認証''を使ったsshコマンドを使います.本ページを参考にして準備しておきましょう.

&attachref(login.png);

公開鍵認証を行うには,2種類の鍵(ファイル)が必要です.これらは各ユーザがペアで作成します.
公開鍵認証を行うには,2種類の鍵(ファイル)が必要です.これらは各ユーザが,コマンド(ssh-keygenなど)を使って作成します.
- 秘密鍵:端末側に置かれる.sshログイン時に指定する.自分だけが持っている鍵.
- 公開鍵:サーバ側に置かれる.指定されたファイル(~/.ssh/authorized_keys)に1行ずつ記述される.

どちらかを紛失すると認証できなくなりますので,各自管理には注意してください.

* 演習室での鍵の作成方法 [#j7946f43]
演習室の端末にインストールされているTeraTermで生成します.
+ デスクトップ,または,スタートメニュからTeraTermを起動します.
-- ログインパネルが出ますが,キャンセルします.
+ メニューの「設定」→「SSH鍵生成」を選択します.
+ そのまま「生成」ボタンを押します.
+ 「鍵のパスフレーズ」を入力します.同じものを「パスフレーズの確認」に入力します.
-- &color(red){''注意''};:パスフレーズを忘れるとログインできません.手帳にメモを取るなど細心の注意を払うこと!
-- &attachref(tera_key.png);
+ 「公開鍵の保存」をクリックします.名前を"id_rsa_pi.pub"として,「ドキュメント」フォルダに保存します.
+ 「秘密鍵の保存」をクリックします.名前を"id_rsa_pi"として,「ドキュメント」フォルダに保存します.
+ エクスプローラで「ドキュメント」フォルダを開き,id_rsa_pi.pub および id_rsa_pi が存在することを確認します.
演習室の端末にインストールされている
[[MobaXterm:https://mobaxterm.mobatek.net/]]で生成します.
+ デスクトップからMobaXtermを開きます.
// + Start local terminalを押すとローカルのシェルが起動します.  modifed by kage on 170412
+ Session → Shell → OK
+ 以下のコマンドを入力していく
+ ssh-keygen -t rsa -f ~/.ssh/id_rsa_pi
-- これで秘密鍵と公開鍵が作成される
-- パスフレーズを聞かれるので安全なもの(短すぎるとエラーが出る)を自分で考えて入力する
-- pi-computerのログイン時に聞かれるので覚えておく
+ open ~/.ssh
+ id_rsa_piとid_rsa_pi.pubをデスクトップに移す
-- id_rsa_pi:秘密鍵、id_rsa_pi.pub:公開鍵

* 公開鍵のアップロード [#y01f4b90]
公開鍵認証を行うためには,生成した公開鍵をログインサーバの~/.ssh/authorized_keysにアップロードする必要があります.
* 公開鍵の登録 [#y01f4b90]
公開鍵認証を行うためには,生成した公開鍵をπコンピュータのログインサーバの~/.ssh/authorized_keysに登録する必要があります.通常は管理者に依頼して公開鍵を登録してもらうのですが,計算科学演習Aでは,下記の方法で公開鍵をアップロードします.
- これは最初の1回だけでOKです.

** Step 1: 仮の鍵でログインする [#ccbde007]
πコンピュータのログインサーバには,既に各ユーザの''仮の公開鍵''が登録されていますので,MobaXtermを使ってログインします.
+ あらかじめ仮秘密鍵(場所やファイル名は授業で告知します.)をデスクトップにコピーしておきます.
+ デスクトップからMobaXtermを起動します.
+ 左上のsessionをクリックし,出てきた画面でSSHをクリックします.
+ SSH認証をします.
-- Remote host: pi.ircpi.kobe-u.ac.jp
-- Specify username: 自分のアカウント名 (m999x999, t999999)
// the following line is added on 170412 by kage
-- Advanced SSH Settings をチェック 
-- Use private keyをチェックして右側のアイコンをクリックするとファイル選択メニューがでます。
そこから,先ほどデスクトップにコピーした仮秘密鍵を選択します.
~
※ファイルオープンのダイアログで鍵が見えない場合は、右下の「秘密鍵ファイル」を「すべてのファイル」に変更
+ OKボタンを押します.
+ パスワード要求されるので,仮パスワード(授業で告知します.)を入力します.
+ ログインできたことを確認します.(※失敗した場合は、キャンセルして1.からやり直す)~
~
&attachref(./teraterm.png,50%);
~

* 演習室端末からログインサーバへのログイン [#kf560416]
** TeraTermを使う [#wf9be757]
** Step 2: 公開鍵ファイルを編集する [#k98cec18]
公開鍵のファイル(~/.ssh/authorized_keys)をエディタで編集します.
+ πコンピュータのログインサーバでEmacsエディタを立ち上げます.
 $ emacs -nw ~/.ssh/authorized_keys
+ 1行目に仮登録された公開鍵の内容が見えるのを確認します.~
~
&attachref(emacs.png);
~
+ MobaXtermの左側にあるToolsをクリックし,MobaTextEditorを開きます.
+ MobaTextEditorで先ほど作成した公開鍵ファイル id_rsa_pi.pub を開きます.
+ 開いた内容(自分の公開鍵)をコピーします.
-- Ctrl-a, Ctrl-c ~
~
&attachref(sakura.png);
~
+ コピーした内容をEmacsの末尾に貼り付けます.(マウス右クリック → Paste)
+ authorized_keysが2行になったことを確認します.
+ Emacsのデータを保存します.
-- Ctrl-x, Ctrl-s で保存.
+ この段階では,まだEmacsを終了しないで下さい.
~


** Puttyを使う. [#y1d6ee56]
** Step 3: ログインを確認する[#a13efa9d]
自分で作成した秘密鍵でログインできるか確かめます.
+ MobaXtermの新しいタブを開きます.
+ 左上のsessionをクリックし,出てきた画面でSSHをクリックします.
+ SSH認証をします.
-- Remote host: pi.ircpi.kobe-u.ac.jp
-- Specify username: 自分のアカウント名 (m999x999, t999999)
-- Advanced SSH Settings をチェック
-- Use private keyをチェックし,自分で作った秘密鍵を選択します.
+ パスワード要求されるので,自分で鍵を作った時に登録したパスワードを入力します.
+ ログインできたことを確認します.~
-- もしログインできない場合には,はじめからやり直し.
+ ログインが成功したら,Step 2で開いているEmacsに移動します.
+ 1行目に仮登録されている公開鍵を消します.
-- 1行目にカーソルを合わせて,Ctrl-kを2回(慎重に!!失敗したら,Ctrl-x u でやりなおし).
+ 保存します.
-- Ctrl-x, Ctrl-s
+ Emacsを終了します.
-- Ctrl-x, Ctrl-c

** Step 4: 秘密鍵をUSBメモリなどにコピーする[#nee3cc83]
研究室等のPCに秘密鍵を登録すると,そのPCからπコンピュータにアクセスできるようになります.そのために,先ほど作成した秘密鍵を持ち帰りましょう.USBメモリに秘密鍵をコピーします.
+ USBメモリは筐体背後のカバー内にあります.必要なら,カバーを取りはずします.
+ USBメモリを差して,id_rsa_pi をコピーします.
~
~

演習室の端末からscalar(スカラー型計算機のフロントエンド)にログインするには,sshまたはslogin
コマンドを使用する.パスワードは必要ない.
* MobaXterm以外でログインする [#vd615857]
** ssh (OpenSSH) [#m31244d7]
LinuxやMacのターミナル,Cygwin等のコマンドラインのsshでログインするには次のようにします.
+ USBメモリにコピーした秘密鍵を適当なディレクトリに置きます.
+ 秘密鍵のパーミッションを変更します.
 $ chmod 600 /適当なパス名/id_rsa_pi
+ ターミナルを開いて,次のように入力します.
 $ ssh -i /適当なパス名/id_rsa_pi ユーザ名@pi.ircpi.kobe-u.ac.jp

 $ ssh scalar
** PuTTY [#y1d6ee56]
PuTTYはTera Termと同様,ssh機能を持ったターミナルソフトですが,秘密鍵の型式が異なるため~
上で作成した秘密鍵を直接使えません.putty形式の鍵に変換する必要があります.
*** Putty用秘密鍵のフォーマット変換方法 [#t829c8e6]
+ PuTTYgenを起動します.
-- インストールされていなければ,この[[リンク:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html]]から「puttygen.exe」をダウンロードし,実行する.
+ Putty Key Generation のウィンドウが開くので,メニューの「Conversions」->「Import key」を選ぶ.
+ ファイル選択のダイアログが開くので,上で作った秘密鍵id_rsa_piを選ぶ.
+ 秘密鍵を読み込んだら,フォーマットを変換して保存するために「Save private key」というボタンをクリックする.
+ 保存先,ファイル名を適当に指定し,保存する.ファイル名には「.ppk」という拡張子を付ける.puttygenはこれで終了して良い.

または
この結果出来上がった「○○○.ppk」という秘密鍵を,上記のPuTTYの秘密鍵ファイルとして指定する.

 $ slogin scalar
* ファイルのコピー [#c29d3b45]
手元のファイルをπコンピュータにコピーするには,WinSCPを使うか,コマンドラインでscpを使う.

でログインできる.

* 演習室外からscalarへのログイン [#ja5dd931]

研究室や自宅からscalarにログインするには,RSA公開鍵認証
が必要となる.

ここでは,演習室端末にて暗号鍵(公開鍵と秘密鍵のペア)を作り,公開鍵をホームディレクトリに,秘密鍵をUSBメモリなどで演習室外で使用するマシンへコピーする方法を説明する.

** I. 公開鍵の作成手順 [#nfeac92f]
+演習室端末にログインし,次のコマンドを入力する.
 $ ssh-keygen -t rsa
+次のメッセージが出たら,そのままEnterを押す.
 Generating public/private rsa key pair.
 Enter file in which to save the key (/home/users/ユーザ名/.ssh/id_rsa):
+パスフレーズを2回きかれるので,同一のものを入力する.
 Enter passphrase (empty for no passphrase): (入力)
 Enter same passphrase again: (入力)
 Your identification has been saved in /home/users/ユーザ名/.ssh/id_rsa.
 Your public key has been saved in /home/users/ユーザ名/.ssh/id_rsa.pub.
 The key fingerprint is:
 ab:fa:de:32:48:.......   ユーザ名@xxx
+公開鍵と秘密鍵が次のディレクトリに出来る.
 秘密鍵: $HOME/.ssh/id_rsa
 公開鍵: $HOME/.ssh/id_rsa.pub
+次のコマンドで,公開鍵を認証済みの鍵(authorized_keys)にリネームし,パーミッションを600(自分のみ読み書き可能)にする.
 $ cd ~/.ssh
 $ mv id_rsa.pub authorized_keys
 $ chmod 600 authorized_keys
+秘密鍵(~/.ssh/id_rsa)をUSBメモリ等にコピーして持って帰る.セキュリティ上,元の場所には残さないこと(~/.ssh/id_rsaは消すこと).

** II. 外部からのログイン [#xa6ef21d]

自宅等の演習室外部で作業するためには,scalarへのリモートログインが必要になる.また,自宅等でプログラムを作成し,それをscalarでコンパイル,実行するためには,ファイルをscalarにコピーする必要がある.UNIX系とWindowsでこれらを行う方法をまとめる.

*** UNIX系 [#c8ca04ea]

ターミナルを開き,持って帰った秘密鍵(id_rsa)を用いてscalar.scitec.kobe-u.ac.jpにsshログインする.
 $ ssh -i /適当なパス名/id_rsa ユーザ名@scalar.scitec.kobe-u.ac.jp  
 パスフレーズ入力...

ファイルのコピーには,scp を使う.
 $ scp -i /適当なパス名/id_rsa コピーしたいファイル ユーザ名@scalar.scitec.kobe-u.ac.jp:適当なパス名

*** Windows [#c71abf2b]

ウィンドウズの場合には,Tera Termを使ってログインするのが便利[[(Tera Termのダウンロード):http://sourceforge.jp/projects/ttssh2/]].

Tera Termをインストールし,新しい接続(new connection)として,下記の情報を指定する.
- ホスト名: scalar.scitec.kobe-u.ac.jp
- Use RSA/DSA Key to login: 持って帰った秘密鍵(id_rsa)

*** WinSCPによるファイルコピー [#ie1df27c]
ファイルのコピーには,WinSCPが便利[[(WinSCPのダウンロード):http://sourceforge.jp/projects/winscp/wiki/FrontPage]].WinSCPをインストールし,新しいセッション(new session)として,下記の情報を指定する.
- ホスト名: scalar.scitec.kobe-u.ac.jp
- ユーザ名: scalar上の自分のユーザ名
- プライベートキーファイル: 上で作った秘密鍵を指定したいところだが,そのままではフォーマットが異なるため使えない.フォーマットを変換する方法は下記.
- ホスト名: pi.ircpi.kobe-u.ac.jp
- ユーザ名: 自分のユーザID
- プライベートキーファイル: ''PuTTY型式(ppk)の秘密鍵'' (上記を参考に作成しておく)
- プロトコル: SCPを選ぶ.

これでセッション情報を保存しておけば,次回からはワンクリックでWindowsエクスプローラーのような画面が開き,ファイルのコピーをGUIで行える.

*** WinSCPを使うための秘密鍵のフォーマット変換方法 [#t829c8e6]
** scp (OpenSSH) [#x02fefea]
ターミナルからscpが使える場合には,次のようにする.
 $ scp -i /適当なパス名/id_rsa_pi コピーしたいファイル ユーザ名@pi.ircpi.kobe-u.ac.jp:適当なパス名
~
~
~
~
~
#hr
(2013-04-17) 中村更新~
(2016-04-15) 森下更新~
(2018-04-11) 横川更新
~
~
~

次の手順で行う.
+ この[[リンク:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html]]から「puttygen.exe」をダウンロードし,実行する.
+ Putty Key Generation のウィンドウが開くので,メニューの「Conversions」->「Import key」を選ぶ.
+ ファイル選択のダイアログが開くので,scalar上で作った秘密鍵を選ぶ.
+ 秘密鍵を読み込んだら,フォーマットを変換して保存するために「Save private key」というボタンをクリックする.
+ 保存先,ファイル名を適当に指定し,保存する.ファイル名には「.ppk」という拡張子を付ける.puttygenはこれで終了して良い.

この結果出来上がった「○○○.ppk」という秘密鍵を,上記のWinSCPのセッション情報のプライベートキーファイルとして指定する.

Windowsに関する参考資料 &attachref(windows.pdf);