Skip navigation

今回は、VMware Photon Linux への SSH でのアクセスについてです。

「Photon Full OS (All) 」でインストールした Photon に SSH してみます。


Photon では、デフォルトで SSH(sshd) が有効化されていますが、

root ユーザでのログインは禁止されています。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

root [ ~ ]# systemctl status sshd.service | grep Active

   Active: active (running) since Wed 2015-05-27 14:03:58 UTC; 36min ago

 

そこで、次のような方法で SSH ログインできるようにしてみます。

  • A: root ではない一般ユーザを作成する。
  • B: root での SSH ログインを許可する。

 

A: root ではない一般ユーザを作成する。

 

今回は、「gowatana」というユーザを作成しています。

また、作成したユーザで docker コマンドを実行できるように

「docker」グループを作成してユーザを所属させています。


デフォルトだと UID/GID を指定しない場合は 1000 番から採番されますが、

今回はすでに他のユーザ / グループを作成していたので 1001 番になっています。

root [ ~ ]# groupadd docker

root [ ~ ]# useradd -m -g docker gowatana

root [ ~ ]# passwd gowatana

Changing password for gowatana

Enter the new password (minimum of 5 characters)

Please use a combination of upper and lower case letters and numbers.

New password:  ★設定するパスワードを入力。

Re-enter new password:  ★設定するパスワードを再入力。

passwd: password changed.

root [ ~ ]# id gowatana ★ユーザが作成できた。

uid=1001(gowatana) gid=1001(docker) groups=1001(docker)

 

追加作成したユーザであれば、SSH サーバの設定を変更せずに

ssh コマンドや TeraTerm などで SSH ログインすることができます。

ログインしたうえで、su コマンドで root ユーザになることもできます。

gowatana [ ~ ]$ who am i

gowatana pts/1        May 27 14:43 (192.168.1.3)

gowatana [ ~ ]$ su -

Password: ★root ユーザのパスワード入力。

root [ ~ ]#  ★root ユーザになれた。


ちなみに、docker  ユーザに所属していれば、

root ではないユーザのまま docker コマンドを実行できたりもします。

ただし、docker デーモンの起動や停止は root ユーザや sudo での実行が必要です。

※下記の例では、docker デーモンはすでに root ユーザで起動済みです。

gowatana [ ~ ]$ id

uid=1001(gowatana) gid=1001(docker) groups=1001(docker)

gowatana [ ~ ]$ systemctl status docker.service | grep Active

   Active: active (running) since Wed 2015-05-27 14:56:22 UTC; 25min ago

gowatana [ ~ ]$ docker info

Containers: 0

Images: 0

Storage Driver: overlay

Backing Filesystem: extfs

Execution Driver: native-0.2

Kernel Version: 3.19.2

Operating System: <unknown>

CPUs: 1

Total Memory: 993.8 MiB

Name: photon02

ID: 47AQ:EQNC:TIX5:UCSN:54QU:SJWQ:KPTF:5KLW:QGF3:MYZ5:ZFV7:H3UX

 

B: root での SSH ログインを許可する。


SSH サーバの設定を変更して、

sshd を再起動すると root ユーザでログイン可能になります。


まず、sshd の設定ファイル「/etc/ssh/sshd_config」の 134 行目あたりにある、

「PermitRootLogin」を「yes」に変更します。

変更前: PermitRootLogin no

変更前: PermitRootLogin yes


たとえば、下記のように設定ファイルを編集します。

root [ ~ ]# cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bk

root [ ~ ]# vi /etc/ssh/sshd_config

root [ ~ ]# diff /etc/ssh/sshd_config_bk /etc/ssh/sshd_config

134c134

< PermitRootLogin no

---

> PermitRootLogin yes


設定ファイル内には PermitRootLogin の記載が複数個所にありますが、

編集するのはコメントアウトされていない(行頭に # が無い)行の設定です。

root [ ~ ]# cat -n /etc/ssh/sshd_config | grep PermitRootLogin

    44  #PermitRootLogin yes

    93  # the setting of "PermitRootLogin without-password".

   134  PermitRootLogin yes ★変更したのはこの行。

 

そして、sshd を再起動します。

root [ ~ ]# systemctl restart sshd.service


これで、root ユーザでいきなり SSH ログインできるようになります。

 

以上、Photon Linux に SSH ログインする話でした。