11. 必用ではなくなったもの
11.1. 通信系 おまじない(2023 から,いらなくなった(織田先生から))
git コマンドの proxy 設定とは別です. これは,環境丸ごとの話でした.
学内からのアクセスだと proxy の設定をしないとうまく行かないようです.
https://www.cc.uec.ac.jp/ug/ja/network/proxy/index.html
を参考にしてください. ただし学外で操作する場合は,この proxy 環境を切らないと学校に問い合わせに行くので 自分のノートパソコンなどで設定する場合は,意識して切るようにしてください.
使用しているシェルが .bash, の場合は ~/.bash_profile,
.zsh の場合は ~/.zshrc などに
export http_proxy=http://proxy.cc.uec.ac.jp:8080/
export https_proxy=http://proxy.cc.uec.ac.jp:8080/
export ftp_proxy=http://proxy.cc.uec.ac.jp:8080/
を記述してください.
使用しているシェルが C-shell 系列の tcsh などの場合は
setenv http_proxy http://proxy.cc.uec.ac.jp:8080/
setenv https_proxy http://proxy.cc.uec.ac.jp:8080/
setenv ftp_proxy http://proxy.cc.uec.ac.jp:8080/
としてください.
11.2. GitHub との SSH 通信
本来であれば,通信環境はこちらを採用すべきなのですが,なぜか学校の環境だと うまく通らないので,こちらのセクションにおいてあります. もし SSH 通信をつかいた場合は参考にしてください.
11.2.1. SSH による通信の設定
Github は,通信において https プロトコルと ssh プロトコルが利用できます. 特にリモートリポジトリにコードをアップロードする (git push する) 場合, https プロトコルだと,常にアカウント名とパスワードを聞かれます. 以前はパスワードを指定できていたので楽だったのですが,上述のようにパスワード認証できなくなり, また,アクセスするために " .netrc というファイルに素のパスフレーズ入れておくのは,ちょっと..." とも思いますので, ssh を使用することを考えてます.
ssh はセキュアシェルと呼ばれるリモート環境とを安全につなぐための技術です. ssh 通信では,開発を行っているホストの信用情報が必要になるので,
開発を行っているホスト(ここでは IED のホスト)の公開鍵を github 側に登録する必要があります.
11.2.2. 使用端末の公開鍵作成
まず, ssh を利用するには,使用端末で SSH の公開鍵を作成する必要があります. GitHub` は,公開鍵暗号としては RSA, DSA, ECDSA, ED25519 などを受け付けますが, 標準の RSA 公開鍵は, 2048 bit長の鍵だと脆弱なので, もっと長い鍵を使うか, ED25519 といった鍵を使いましょう.ここでは ED25519 による登録を行います.
まず Jupyter などで,ターミナルを開いてください. このターミナル上で鍵を生成します. 鍵を生成するには,以下のようなコマンドを投入します.
ssh-keygen -t ed25519 -C 'shouno@uec.ac.jp'
最後の -C オプションの引数は自身のメールアドレスを入れてください.
鍵の生成中に,どこに鍵を置くか(標準は ~/.ssh)と, アクセスするための パスフレーズを聞かれます. 鍵の置き場所は標準のままで,パスフレーズは適当なパスワードを入れてください.
鍵生成が終われば,ホームディレクトリ (~/) に .ssh フォルダが生成され,
そこに秘密鍵ファイル ~/.ssh/id_ed25519 と公開鍵ファイル ~/.ssh/id_ed25519.pub がペアで生成されているはずです.
cat コマンドなどで確認することができます.
こちらの公開鍵ファイルの内容を github に登録します.
11.2.3. Github への SSH 公開鍵の登録
次に公開鍵 ~/.ssh/id_ed25519.pub の内容を github へ登録します.
まず, GitHub に前に設定したアカウントでサインインします. 次に画面右上にあるアイコン(+の隣にある奴) から Setting を選びます.
続いて,左の Personal Settings 欄のなかの "SSH and GPG Keys" を選択します. すると下のようなページに遷移します.
あとは,"New SSH Key" ボタンを押して,出て来る画面に 先ほどの公開鍵となんらかのタイトルをつければ終了です.
鍵を登録するとこんな感じになります.
~/.ssh/ed25519.pub を記載し "Add SSH Key" ボタンを押して登録します.
鍵のタイトルは適当でよいです.
最後にきちんと通信出来るかどうかを確認したければ
ssh -T git@github.com
を実行してみてください.途中,github を知っているホストに登録するか?という
質問と,パスフレーズを聞かれるので,前者は yes 後者は,鍵生成したときの
パスフレーズをいれることで,通信が行われます
うまく通信ができていれば
''Hi xxxxxxxx! You've successfully authenticated, but Github ...''
というメッセージを受け取るはずです. これで通信環境が整いました.