以下の内容はhttps://tech.guitarrapc.com/entry/2013/05/07/050534より取得しました。


Windows AzureのOpenLogic CentOS 6.3 で GNOME (X Window)を使うまでセットアップをしてみる part3

part3です。前回は、yum環境を整えるところまでやりました。

公開鍵暗号に認証方法を切り替えます。

  • Open Logic CentOS 6.3のインスタンス作成と接続
  • yum更新とRemi Repositoruの導入
  • ssh公開鍵暗号での接続に切り替え
  • zshのインストール
  • gccなどDevelopment Toolsをインストール
  • GNOMEの導入
  • VNCの導入

ssh 公開鍵暗号での接続に切り替え

Azureとは言っても、中身はCent OSな訳で至って普通です。 また、ssh接続する以上sshdが入っていますので、パッケージのイオンストールはいりません。 簡単ですね!

Azureインスタンスの簡易作成では、公開鍵暗号を選べませんでした (パスワード入力欄しかない) また、ギャラリーから作成しても事前に公開鍵を準備するのは、初めて使う人には尻込みするかもしれません。 今回は、Cent OSないで公開鍵を作成して接続するところまでやります。

設定ファイルの編集

前回同様、azureuserでssh接続します。

まず、sshdの設定を変更します。 これでssh接続するときにサーバーが許可するもの、禁止するものが設定されます。

sshd_configを開きます。

vim /etc/ssh/sshd_config

編集にはsudoが必要ですのでご注意ください。

sudo vim /etc/ssh/sshd_config

以下の設定にします。

  • IPv4での接続を許可
  • rootでのログインは禁止
♯--------------------------------以下を記入
    # 1. IPv4の許可
    #ListenAddress 0.0.0.0
    ListenAddress 0.0.0.0

    # 2. rootログイン禁止
    #PermitRootLogin yes
    PermitRootLogin no

    # Allow Groupなどはお好きにどうぞ
♯--------------------------------以上まで

iptableの編集

いわゆるfirewallです。 既にsshのTCP 22は初期で解放設定済みなので不要です。

公開鍵フォルダの作成

公開鍵フォルダを作成します。

root権限を与えます。

su - azureuser

~/.ssh フォルダ生成

azureuserのHOMEディレクトリに.sshフォルダを作成し、ここに公開鍵を置くこととします。 ここは、この後のsshキー作成に指定します。 もしこだわりがある場合は、お好きにどうぞ。

mkdir ~/.ssh

権限も変えておきましょう。

chmod 700 ~/.ssh

公開鍵の生成

公開鍵、秘密鍵をまとめて作ります。まずは、鍵生成をします。""は鍵の説明です。

ssh-keygen -t rsa -C "SSH Connection User : azureuser"

ダイアログが出るので順に入力します。 初めに鍵生成場所です。 先ほど作成した~/.sshは、このデフォルトパスです。 特に拘りなればそのままでも。 こだわりがある場合は、先ほどのsshキー用フォルダで作成したであろうパスを入れてください。

Generating public/private rsa key pair.
Enter file in which to save the key (/home/users/sshuser/.ssh/id_rsa): [Enter]
Created directory '/home/users/sshuser/.ssh'.

続いて鍵を読み取る際のパスワードです。これまでのOSログインなどとは別物扱いです。

Enter passphrase (empty for no passphrase): パスフレーズ
Enter same passphrase again: パスフレーズ再入力

デフォルトのままEnterしていくと、秘密鍵、公開鍵が以下のパスに生成されます。

~/.ssh/id_rsa

#秘密鍵はこの名前で。
id_rsa

#公開鍵はこの名前です。
~/.ssh/id_rsa.pub

処理後は、rootを抜けます。

exit

この時、WinSCPやteratermのscp転送でid_rsaを手元に持ってきてください。ファイルが1つなのでTeratermで十分です。

公開鍵を認証キーとしてCentOS内部に配置

作成した鍵の内、サーバーで利用するのが公開鍵、接続するユーザーのPCで使うのが秘密鍵です。 秘密鍵と公開鍵をセットで使って「ハッシュ値が一致」すること確認して認証します。

サーバー側では、認証に使う公開鍵を~/.ssh (ssjキー作成時に指定したパス) となります。 先ほどの鍵作成で出来たid_rsa.pubを、authorized_keysにリネームします。

mv ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

権限も変えて完了です。

chmod 600 ~/.ssh/authorized_keys

sshdの設定反映

ここまでの設定を反映させるため、sshdデーモンを再起動します。

sudo /etc/init.d/sshd restart

パスワード認証に無効化前の接続テスト

必ず現在のTeraterm接続は残したまま、別のTeratermで秘密鍵を指定して接続できるか試して下さい。 接続が確認できたら、パスワード認証を無効にします。

※ この時点では、公開鍵認証とパスワード認証の両方有効なので、公開鍵の設定が誤っていてもログインできます。

安心してやり直してください。

パスワード認証に無効化

秘密鍵で接続が確認できましたね? では、パスワード認証を無効化します。

sshd_configを開きます。

vim /etc/ssh/sshd_config

編集にはsudoが必要ですのでご注意ください。

sudo vim /etc/ssh/sshd_config

以下の設定にします。

  • パスワードログイン禁止
♯--------------------------------以下を記入
    # パスワードログイン 禁止
    #PasswordAuthentication yes
    PasswordAuthentication no
♯--------------------------------以上まで

sshdの設定反映

パスワード認証無効設定を反映させるため、sshdデーモンを再起動します。

sudo /etc/init.d/sshd restart

パスワード認証に無効化後の接続テスト

必ず現在のTeraterm接続は残したまま、別のTeratermで秘密鍵を指定して接続できるか試して下さい。 接続が確認できたら、安心です。

まとめ

以上で公開鍵認証への切り替えは完了です。




以上の内容はhttps://tech.guitarrapc.com/entry/2013/05/07/050534より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14