🗂

LinuxサーバへSSH公開鍵認証で接続(MacBookより)

2022/12/11に公開

プログラミング学習用のLinuxサーバに
アクセス毎にパスワードが必要となり、煩わらしさを感じます。

SSH公開鍵をLinuxサーバへ登録して作業の利便性をはかります。

対象のLinux環境は、

more /etc/redhat-release
AlmaLinux release 8.6 (Sky Tiger)

①Linuxサーバで開発用ユーザの作成

<<Linuxサーバで作業>>
rootユーザログインしてユーザを作成します。
今回は「testpy」というユーザを追加します。

# useradd -m testpy
# passwd testpy
 →パスワード入力

対象のユーザーを「 wheel 」グループに追加します。

# usermod -aG wheel testpy

「visudo」コマンドにて
以下がコメントアウトでないことを確認します。
コメントアウトであれば解除します。

## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL

②Macで公開鍵と秘密鍵を作成

<<Macで作業>>

$ cd ~/.ssh
※ディレクトリがない場合は、
 $ mkdir ~/.ssh 
 $ chmoe 700 ~/ssh 
で作成します。
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/macuser/.ssh/id_rsa):
Created directory '/home/macuser/.ssh'.
Enter passphrase (empty for no passphrase): →パスフレーズを設定場合
Enter same passphrase again: →パスフレーズを設定場合(確認用)

公開鍵をLinuxサーバへ転送します。

$ scp ~/.ssh/id_rsa.pub testpy@192.168.aaa.bbb:/home/testpy/.ssh

③公開鍵をLinuxへ登録

<<Linuxサーバで作業>>

$ cd ~/.ssh
$ cat id_rsa.pub >>authorized_keys
$ chmod 600 authorized_keys
$ rm id_rsa.pub

④SSHの接続設定を登録

<<Macで作業>>
ホスト名とユーザを追加して接続できる様に登録します。

$ cd ~/.ssh
$ vi config
.
.
Host linux001tetpy
	HostName 192.168.aaa.bbb
    User testpy
    Port 22
.
.

ssh で登録名でSSHアクセスできるか確認します。

$ ssh linux001testpy
 →パスワードなしで接続できることを確認します。

では

Discussion