経緯
会社で、新しく製品を立ち上げるためクラウド上のサーバにMySQLをインストールすることになりました。
その前に、一般ユーザを作成しないとー!という事で作業しまーす。
作業する中で、アウトプットしといた方が知識の定着になるのでQiitaに残して行こうと思います。
こういう癖づけが大切なんですよね・・。
前提条件
・アクセスの全体像
ローカル環境→サーバへの公開鍵認証アクセス
・接続するユーザは、サーバ側で作成されていること
作業概要
1. 作業場所を作成(サーバ側)
2. 公開鍵・秘密鍵の作成(サーバ側)
3. 秘密鍵の移動(サーバ側)
4. ローカル環境からサーバへの接続設定(ローカル)
5. 接続テスト
作業内容
1. 作業場所を作成(サーバ側)
ホームディレクトリで作業ディレクトリを作成する。
※この時、注意する点は、ローカル側からアクセスするユーザで作業をすること。
$ mkdir .ssh
2.公開鍵・秘密鍵の作成
$ cd .ssh
$ ssh-keygen -t rsa
上記コマンドを実行すると、以下の2つの選択を求められる。
2-1.公開鍵と秘密鍵の名前を設定する。
Enter file in which to save the key (/Users/xxx/.ssh/id_rsa)と
聞かれるので、公開鍵と秘密鍵の名前を決めたいのなら入力する。
今回は、user01で入力。
2-2.パスフレーズの設定
Enter passphrase (empty for no passphrase):
上記が聞かれるのでパスフレーズ入力せずにEnterすると、
パスワードなしで認証ができるようになる。
2-3.公開鍵認証を設定ファイルに入れておく
$ cat user01.pub > authorized_keys
※上記は、authorized_keysがない場合です。存在する場合は、 >> にする必要あり。
$ chmod 0600 authorized_keys
権限を上記にする。公開鍵にアクセスする権限が適切でないと、アクセスさせてくれない。
3.秘密鍵をの移動(サーバ側)ローカルへダウンロード
2でuser01というファイルが作成されているので、接続する側の環境(ローカル環境、sshする側)に設置する。
設置する場所:/Users/hiro/.ssh
※scpコマンドでもOKです。今回はFTPツールで取得しました。
4.ローカル環境からサーバへの接続設定(ローカル)
$ vi .bash_rc
alias user01='ssh -2 -i ~/.ssh/user01 user01@XXXX.XXXX.XXXX.XXXX
$ source .bash_rc
上記の内容をローカル環境の.bash_rcファイルに記載する
5.接続テスト
$ user01
でログインできれば成功です!
以上です。あまりはまらずできてよかった・・・。