Hnoss

Hnoss

GitLabのドキュメントが、CC BY-SA 4.0.になったー!やったー!
カレンダー

文書タグ

フノス(訳者)(215) IT(191) 解説記事(147) マニュアル(82) GitLab CI(60) オープンソース(50) GitLab(40) Linux(38) メディア(34) コンテナ(29) ウェブ制作(27) DTM(19) HTML5(19) おすすめ オープンソース・ソフトウェア(18) Libre Music(18) プラグイン(14) 百科事典(14) 文化(12) ソフトウェア(11) セキュリティ(11) 録音(11) ミキシング(11) MIDI(10) 西アジア/中東(10) 料理(9) ジョージア(9) グルジア(9) 東ヨーロッパ(9) コマンド(8) シーケンス(8) 芸能(8) 業務効率化(8) 音楽編集(8) マスタリング(7) 音楽(7) 経済(7) ハンドブック(7) Raspberry Pi(6) アプリ(6) マイクロサービス(5) Google(5) ワークフロー(5) WordPress(5) JACK(5) Ubuntu(4) 北米(4) Windows(4) Android(4) 映像制作(4) GNU(4) 法律(4) 欧州(4) 音楽プレーヤー(4) Python(3) アニメ(3) ホームオートメーション(3) アニメーション(3) IoT(3) Ardour(3) 社会(3) Java(3) ソーシャルメディア(3) DAW(3) オカルト(2) Twitter(2) ロスレス音源(2) BountySource(2) スマホ(2) 牛(2) 歴史(2) ニュース(2) GNOME3(2) iOS(2) PlayStation(2) 仮想通貨(2) 古代エジプト(2) マーケティング(2) 有角神(2) エジプト(2) ALSA(2) OS X(2) ERPシステム(2) 電子ブック(2) トヨタ(2) バト(2) Krita(2) 電子書籍(2) ウィッカ(2) GPL(2) ERP(2) アピス(1) 宗教(1) テレビ(1) OpenToonz(1) 電子教材(1) 船乗りの柱(1) シリア(1) GPS(1) アフリカ(1) リグ・ヴェーダ(1) F-Droid(1) デザイン(1) ムネヴィス(1) ネオペイガニズム(1) コミュニティ放送(1) アンビソニック(1) 元ネタ(1) ケルヌンノス(1) ナイジェリア(1) 日記(1) 聖書(1) 任天堂 DS(1) 教育(1) bi-modal IT(1) 魔女宗(1) アクティブSETI(1) バイノーラル(1) Papagayo(1) 写真(1) 意味(1) コシディウス(1) インド(1) ユーコン(1) ヤーウェ(1) CD(1) タブレット(1) 学校(1) 日本(1) 羊(1) ベルゼブブ(1) デジタルサイネージ(1) VR(1) アップストリーム・パッケージング(1) 画像(1) 由来(1) グンデストルップの大釜(1) カナン(1) カナダ(1) サウンドフォント(1) 詩篇(1) チップチューン(1) バ・ネブ・デデト(1) コットン・マザー(1) クラウドキャスティング(1) VST(1) ポータブルソフトウェア(1) エリファス・レヴィ(1) マサチューセッツ(1) 考古学(1) 申命記(1) クヌム(1) 魔女裁判(1) オンデマンド(1) リーナス・トーバルズ(1) バフォメット(1) UNIX(1) 黙示録(1) スタジオジブリ(1) アモン(1) セイラム魔女裁判(1) ねじ巻きラジオ(1) 3D(1) 政治(1) イボ人(1) 国際(1) クリエイティブ・コモンズ(1) amazon(1) キリスト教(1) レビ記(1) Synfig(1) 独占(1) アマナイ(1) 広告(1) KXStudio(1) EU(1) イケンガ(1) 国際公文書館会議(1) マイナビ(1) 募金(1) ユダヤ教(1) ウルガタ聖書(1) 科学技術(1) 出エジプト記(1) 観光案内(1) 絵文字(1) サンフランシスコ(1) パキスタン(1) リクルート(1) ハトホル(1) パン(1) 地方(1) Blender(1) 羊神(1) ギリシャ(1) 高速道路情報無線(1) ツイッター(1) Youtube(1) 中南米(1) モヘンジョ=ダロ(1) CC(1) 声明(1) 悪魔(1) ラジオ(1) アレクサンドロス大王(1) ローマ(1) ポッドキャスト(1) ゲーム(1) パシュパティ(1) 1Password(1)
リファレンス

first-time visitors
user guide
謝辞

「みんなの翻訳」は情報通信研究機構言語翻訳グループ東京大学図書館情報学研究室による共同プロジェクトであり、三省堂国立情報学研究所連想情報学研究開発センターが開発に協力しています。三省堂には「グランドコンサイス英和辞典(36万項目収録)」の使用を許可していただきました。

連携研究グループはこちらをご覧ください。

「みんなの翻訳」を使っている翻訳グループについてはこちらをご覧ください。

バナー

logo

ポスター

poster

フライヤー

poster poster
Mozilla Firefox ブラウザ無料ダウンロード
本サイトはブラウザ「Mozilla Firefox」推奨です。
Firefox3で動作確認しています。

Valid XHTML 1.0 Transitional


GitLab Documentation>GitLab SSH キー作成法

 Gitとは、配布共有型バージョン管理システムです。これをインストールしたローカル環境で作業ができる上に、他のサーバーに変更案を”プッシュ”することで自分の案を他の誰かと共有することができます。
 問題は、その情報共有の際に通信が発生することに関連して、セキュリティ上の障害が発生しやすいことです。

 あなたの変更案が、他の誰かのものにすり替えられたり、書き換えられたりしないために、SSHプロトコルを利用することが有効です。送信する機械と受信する機械とで、異常がなかったことが確認できれば、いちいちユーザー名とパスワードを入力しなくても、きちんとあなたが送信した案であることが証明されます。

 まずは、SSHプロトコルがどのような働きをするかについて、DigitalOceanというサイトに分かりやすい説明があったので、それを読んでみるとよいかもしれません。

 現在のSSHキーペア置き場を確認しよう

 新しいSSHキーペアを作成する前に、シェルを開いてシステムの中にSSHキーを置く場所が用意されているかどうかを確かめましょう。それぞれのOSのコマンドは以下の通りです。

Windows コマンド プロンプト:

======================
type %userprofile%\.ssh\id_rsa.pub
======================
(¥はバックスラッシュの誤変換です。)

Windows の Git Bash / GNU/Linux / macOS / PowerShell:

======================
cat ~/.ssh/id_rsa.pub
======================

 まず最初に「ssh-rsa」という表示があった場合は、SSHキーペアが既にシステム内に存在していることになります。次の工程として説明されている、ポーションの生成を飛ばして、クリップボードにコピーする段階に進んでください。
 この表示がなかった場合は、独自名が付いたSSH キーペアを生成しなくてはならないので、次の工程に進みます。

 パブリックSSH キーは次のように命名します。

  • id_dsa.pub
  • id_ecdsa.pub
  • id_ed25519.pub


 SSHキーペアを新規作成する

1.次のコマンドで、SSHキーペアを作成してください。

Git Bash on Windows / GNU/Linux / macOS:

======================
ssh-keygen -t rsa -C "your.email@example.com" -b 4096
======================

Windows:

 Windowsの場合、SSH キーを生成するには、PuttyGenをダウンロードする必要があります。SSH キーペアの生成法については、こちらの説明書を参考にしてください。

2.つぎに、皆さんがSSHキーペアを保管しているファイルに、パスを設けます。

 SSHキーペアをまだ生成していない段階で、パスを設けてはいけません。
 一度システムにSSHキーがあることを認識されてしまうと、後から設定の書き換えができなくなります。システムは、そこにSSHキーがある前提で動いています。その代わりに、キーがあれば自動的に認証されるわけですが、なかった場合はただ変更の効かないファイルができあがるだけです。

 SSHキーペアが存在しているファイルに、パスを出した場合は自動的に、「.ssh/config」ファイルにある設定の一部として、「このホストでは通信に、次のSSHキーペアを使用する」ことが宣言されます。詳しくは、このページの「デフォルトではないSSHキーペアのパスを使う場合」の章をご覧ください。

3.ファイルパスを入力できたら、次はSSHキーペアを守るためにパスワードを設定します。この設定については、できればやっておくに越したことはないものですので、必要がないと判断した場合はパスワードを設定せずに、そのまま enterを押してください。

注:SSHキーペアのパスワードを変更する時には、「ssh-keygen -p 」というコマンドを使います。

4.公開SSHキーをコピーします。


  クリップボードにコピーするコマンドは、OSによって異なります。

 macOS:

======================
pbcopy < ~/.ssh/id_rsa.pub
======================

 GNU/Linux (xclip パッケージ を インストールしておいてください):

======================
xclip -sel clip < ~/.ssh/id_rsa.pub
======================

 Windows Command Line:

======================
type %userprofile% \.ssh \id_rsa.pub | clip
======================
(¥はバックスラッシュの誤変換)

 Windows の Git Bash / Windows PowerShell:

======================
cat ~/.ssh/id_rsa.pub | clip
======================

5.最後に、公開SSH キーをGitLabに追加します。

「Profile Settings」から「SSH Keys」タブに移動して、「Key」という欄に先ほどコピーしたSSHキーを貼り付けます。そのカギに「Title」を付けておいた方が、後から使う時に困りません。ここにつける名前は、接続相手の機械がすぐさまわかる名前にすることを強くお勧めします。(たとえば、「Work Laptop - Windows 7」や「Home MacBook Pro 15」など。)

 公開SSHキーを手動でコピーする際には、きちんと「ssh-rsa」から、皆さんのemailまでを範囲指定することを忘れないでください。

 試しに、「ssh -T git@example.com(『example.com』の部分だけ皆さんのGitLabドメインに置き換えて)」を実行してみましょう。「Welcome to GitLab 」というメッセージが表示されれば、合格です。

 デフォルトではないSSHキーペアのパスを使う場合

 GitLab SSH キーペアに対をデフォルト以外のファイルに配置して、そこにパスだけを与えて使用する場合は、皆さんのSSHクライアントを設定する必要があります。GitLabサーバー(それから GitLab.com)との接続の際に、GitLabプライベートSSHキーを検出するために、この設定が重要です。

 次のコマンドを使います。「other_id_rsa」とされている部分は、皆さんのプライベートSSHキーに置き換えてください。

Windows の Git Bash / GNU/Linux / macOS:

======================
eval $(ssh-agent -s ) ssh-add ~/.ssh/other_id_rsa
======================

 この設定を保持するためには、これを記した設定ファイルをどこかに保存してなくてはなりません。
 OpenSSHクライアントは、だいたいのオペレーティングシステムで、「~/.ssh/config」ファイルに保存することになっています。

 リモート環境の設定は、GitLab.comと、プライベートサーバーに展開したGitLabとで方法が違いますので、ご注意ください。

 GitLab.comの場合
======================
Host gitlab.com

RSAAuthentication yes

IdentityFile ~/.ssh/config/private-key-filename-01
======================

 プライベートGitLabサーバーの場合

======================
Host gitlab.company.com

RSAAuthentication yes

IdentityFile ~/.ssh/config/private-key-filename
======================

 ここで説明したのは、あくまでほんの一例であり、実際はSSHクライアントに応じて様々な設定オプションを満たさなくてはならない可能性があります。それはここでは割愛させていただきますので、あとは各自で説明書を見るなりして解決してください。

 公開SSHキーは使いまわしができません。これは皆さんを自動識別するために設けられたツールですので、キーと皆さんのアカウントは紐づけられることになります。
 そのため、SSH キーを設置しておくと、プッシュをする際に本人認証の手間が省けます。

 Deploy keys

 レポジトリごとのDeployキー

 Deploy キーは、SSH キーペアを使った「読み込み限定」や「読み書き可能(許可していれば)」アクセスを、1つあるいは複数のプロジェクトで実現するものです。

 これは皆さんのレポジトリを、 継続的インテグレーション(CI)サーバーにクローンする際によく使われます。これを利用すると、ダミーのユーザーアカウントを作らなくても、CIサーバーを使うことができます。

 プロジェクトのマスターか所有者である方なら、プロジェクトの設定ページの「Repository」という項目に、Deployキーを設けることができます。
 Deployキーにも分かりやすい名前と、公開キーをコピペすることを忘れずに。たったこれだけで、「読み込み限定」や「(許可していれば)読み書き可能」などの全ての通信が、設定したプライベートSSHキーを介したものになります。

 一度入れてしまったDeployキーを、もう一度同じ欄に入れることはできません。
 他のプロジェクトと同じキーを追加する場合は、「Deploy keys from projects available to you」に許可を出してください。全てのプロジェクトに置かれている、どのDeployキーに対しても、プロジェクトやグループなどの直接のメンバーであるならば、誰でもアクセスすることができます。
 Deployキーをプロジェクト間で共有するには、それぞれのプロジェクトに同じキーを設定してください。

 全てのレポジトリで使える、共有 Deployキー

 Global Shared Deploy keysを使うと、SSH キーペアを使った「読み込み限定」「読み書き可能(許可していれば)」アクセスが、同じGitLabサーバーに存在する全てのプロジェクトに適用されます。

 レポジトリ全体の安全性を高めるほか、共有 継続的インテグレーション(CI)サーバーを始めとるする、あらゆる共有サービスを不正アクセスの脅威から遠ざけます。GitLabのシステム管理者は、Global Shared Deploy keyを仕掛けることで、全ての共有サービス通信時に秘密鍵を使わせることができます。プロジェクトのマスター(あるいはそれ以上)の決定で、それぞれのレポジトリをどこかに公開する時には、このSSHキーが使われます。

 それぞれのプロジェクトごとにDeployキーを設けるよりも、Global Shared Keysを利用した方が、より高い安全性を確保できます。このキーを閲覧できるのは、システムを管理している者のみで、それを知る必要がないユーザーに対しては公開されないようになっているのです。

 管理者は、GitLabの管理者領域から「Deploy Keys」の項目に移動して、Global Deploy keysを設置することが可能です。
 Global Deploy keys につけたタイトル(名称)は、プロジェクトのマスターやオーナーに知らせて、それぞれのプロジェクトに導入してもらうとよいでしょう。たとえば、SaaS に設けた CI に安全なアクセスを実施したい場合には、「SaaS CI」用であることが一目でわかるような名前にすると、マスターたちに利用してもらえるはずです。Global Shared Deploy keysを作成する時に、そのキーがどのようなときに使われるものかの説明文を、タイトルにしてしまってもよろしいかもしれません。「レポジトリに読み込み限定アクセスする時に必要な鍵」など、こんな調子で構わないでしょう。

 Global Deployment keyを導入したサーバーなら、プロジェクトマスター、オーナーらが各自、自分のプロジェクトで簡単な設定をするだけで、Deploy Keyを導入することができます。
 プロジェクトの「Settings > Repository」に移動して、「Deploy Key」という項目で「Enable」をクリックします。
 次に、そのサーバーで利用可能な公開鍵のリスト(Public deploy keys available to any project)が表示されますので、その中から適切な鍵を選んでください。

注:Public deploy keys available to any project」リストに表示される公開鍵は、Global Deploy Key として登録されたものだけです。

警告:Global Deploy Keysを使ってプロジェクトを公開しても、Global Deploy Key そのものが公開されることはありません。この場合、Global Deploy Keys は他のシステムからの通信を許可していますので、一見するとそれが設定されていることは分かりづらくなっています。しかし、外部の者が勝手にシステム内部まで接続しようとすると、きちんと防御される仕組みです。


 アプリケーションにSSHキーを設ける

 Eclipse

 「Eclipse」というアプリケーションに、SSH キーを設けるには、次のページを参考にしてください。:https://wiki.eclipse.org/EGit/User_Guide#Eclipse_SSH_Configuration

 GitLab サーバー上で SSHキーを管理する

 GitLabには、拡張機能の一種として、システムの中にSSHデーモンが組み込まれています。そこで、ユーザー(よくある名前としてgit)に対して、彼らが全てのアクセスに利用するSSHキーを割り当てることができます。そこで鍵を手に入れたユーザーたちは、GitLabサーバーの中をSSH キーを使いながら通信することになりますから、SSH キーでどのユーザーが接続しているかを判別できるようになっているのです。

 SSHクライアントから、各ユーザーの動向を管理することは実に簡単です。しかし、ユーザーが個人でプライベートSSH キーを認証に使用してしまうなど、SSHキー設定を加工してしまうと、もはやSSHクライアントでは把握しきれなくなります。従って、セキュリティ面での安全性が大幅に下がることになってしまいます。

 サーバー管理者の皆さんには、きちんとそのことを踏まえて、次のような設定を施すことをお勧めします。

======================
$ gitlab-rake gitlab:check
# ...
Git user has default SSH configuration? ... no
 Try fixing it:
 mkdir ~/gitlab-check-backup-1504540051
 sudo mv /var/lib/git/.ssh/id_rsa ~/gitlab-check-backup-1504540051
 sudo mv /var/lib/git/.ssh/id_rsa.pub ~/gitlab-check-backup-1504540051
 For more information see:
 doc/ssh/README.md in section "SSH on the GitLab server"
 Please fix the error above and rerun the checks.
======================

 これは、ユーザー個人がSSHキー関連の設定をする機能を消去する設定です。
 ただし、これらの設定は、個人でのチューニングに当たりますので、これが原因でシステムが停止しても、我々は一切の責任を負いかねます。

 トラブル・シューティング

 SSHを設定したサーバーで、Gitのクローン機能を利用する際に「git@gitlab.com's password:」のようなパスワードを入力した場合、問題が起こることがあります。

  • SSHキーペアは正しく生成することと、公開SSHキーを自分のGitLabプロフィールに追加してください。
  • プライベートSSHキーの手動登録には、このページで説明した通り、「ssh-agent」を使ってみてください。
  • 接続のデバッグをするには、「 ssh -Tv git@example.com」を実行してください。(『example.com』の部分は皆さんのGitLabドメインに置き換えること)

Edit this page

原文:https://docs.gitlab.com/ee/ssh/README.html
原文ページプロジェクト並びにドキュメントファイルは、MIT Licenseのもと公開されています。(URL:https://gitlab.com/gitlab-com/gitlab-docs/blob/master/LICENSE) この記事の文章は、訳者の判断によりCreative Commons BY (version 3.0) を適用するものとします。
新着文書(Hnoss)

GitLab Plugin system
GitLab Documentation > Administrator documentation >GitLab Plugin system GitLab 10.6より導入。  カスタムプラグインを使えば、GitLa...
UX Department
現在の位置: チームハンドブック 目次 >UX部門   UX ガイド  GitLabの見た目は、 UXガイド を基準に構成されている。このガイドが、わが...
Team Handbook
現在の位置:チームハンドブック 目次  このハンドブックは、GitLabという企業が、どのようにサービスを維持運営していくかを記したものだ。ここに...
Engineering
現在の位置: チームハンドブック 目次 >エンジニアリング   連絡方法 Public Issue Tracker (GitLab CEの場合) ; 不特定多数に公開して...

新着文書

Bristol’s Last Bookshop shares key facts on the remains of publishing
ブリストルの ラスト・ブックショップ (「最後の書店」)はたぶん、真の本好きのための残本店と言っていいだろう。それは、いくつかの出版社の名作...
Second social leader opposed to dam construction murdered in one week
一人の社会指導者は昨日プエルトリコ・バルディビアで虐殺された。これはアンティオキアで一週間以内に連続して起きた二回目の類似の殺人である。5月8...
Avianca strike leaders fired / Justice for Colombia
コロンビア第一の航空会社アビアンカは昨年9月20日から11月9日の長期にわたり行われたストに参加したパイロット14人を解雇した。解雇された一人、ハイ...

新着Wikipedia翻訳

Flutter (software)
Flutter -------- 原作者:Google 開発者:Googleとコミュニティ 最初の公開:アルファ(v0.0.6)/2017年5月;1年前(2017-05)[1] 試験版の公...
E (programming language)
E(プログラミング言語) AmigaE や e(検証言語) 、 GNU E と混同しないこと。 E -------- パラダイム マルチパラダイム:オブジ...
Van Eck phreaking
Van Eck phreaking(ファン・エック・フリーク) Van Eck phreakingは盗聴の一形態であり、その中では特殊な装置が使用され、電子機器を探るため、隠...

更新履歴

※文書量によっては処理に数十秒かかる場合があります
バージョン 比較対象 更新日時 更新者
1(最新) 2018-03-23 22:37:32 Hnoss
2 2018-03-23 19:18:02 Hnoss
3 2018-03-23 18:15:13 Hnoss
4 2018-03-23 18:15:04 Hnoss
5 2018-03-23 18:14:06 Hnoss
6 2018-03-23 18:13:52 Hnoss
7 2018-03-23 18:13:44 Hnoss
8 2018-03-23 18:11:28 Hnoss
9 2018-03-23 18:11:13 Hnoss
10 2018-03-23 18:07:04 Hnoss

    
ブックマーク登録

タグを「;(半角セミコロン)」区切りで入力して下さい(例)tag1;tag2;tag3
10タグまで登録可能。各タグ30文字まで

履歴
状態 作業中 作業予定あり 作業予定なし 作業完了
テーマ 社会 政治 法律 経済 文化 芸能 科学技術 IT 健康/医療 スポーツ メディア 植物 動物 菌類 地方 国際
地域 日本 東アジア アフリカ 南アジア 東南アジア 西アジア/中東 太平洋 北米 中南米 欧州
ジャンル ニュース 解説記事 論文 日記 百科事典

コメントを入力して下さい
0 / 250
    
ブックマーク登録

ブックマークに登録しました。


言語選択

    
ファイルプロパティ

使用許諾条件
ファイル情報
あなただけがこのファイルを閲覧・編集できます。
みんながこのファイルを閲覧できますが、
編集ができるのはあなただけです。
あなたに加えて、指定された人やグループが
このファイルを自由に閲覧・編集できます。
公開設定
編集設定
グループ:0組 翻訳者:0人
    
アクセス属性
この文書は「非公開」設定になっています。
一般公開する場合は、編集ページの書誌情報で「公開」設定に変更して下さい。
翻訳者選択

※メニュー「翻訳者管理」で翻訳者、グループを追加することができます。


    
ノート

非公開ノート
0 / 2000 ※「公開・編集」権限を持つ翻訳者のみに公開されます。
公開ノート
0 / 2000 ※文書を「公開」にした場合、一般に公開されます。

言語選択

 →