$ sudo passwd root
現在ログインしているアカウントのパスワードを入力後、 rootのパスワード入力を要求されるので、設定するパスワードを2回入力。
$ su -
最後に「-」を追加することによって、ログインシェルで起動できます。
# apt update # apt dist-upgrade
※ 実行していることはパッケージの更新を参照。
※ Emacs参照。
GUI無しでインストールする方が良い。
# emacs .etc/apt/apt.conf.d/20auto-upgrages
ここで“1”となっている部分を、すべて“0”に書き換える。
その後、[ctrl]+[x] [ctrl]+[s]で保存し、[ctrl]+[x] [ctrl]+[c]でクローズ。
# apt install openssh-server
# nmtui
[esc]で戻る。
# systemctl restart network-manager.service
# useradd -m -d /home/[ユーザー名] [ユーザー名] -s /bin/bash
作成されたかを確認。
# cat /etc/passwd
最後の行にユーザーが追加されている。
# passwd [ユーザー名]
設定するパスワードを2回入力。
# su - [ユーザー名]
作成したユーザーでログインし直す。
$ ssh-keygen -t ed25519
鍵の保存場所を指定し(デフォルトでOK)、パスワードを2回入力。
鍵がデフォルトの場所に保存されます。
$ cat id_ed25519.pub >> authorized_keys
authorized_keysに秘密鍵を追加する。
$ rm id_ed25519.pub
公開鍵を削除する。
$ su - # mv /home/[ユーザー名]/.ssh/id_ed25519 .
秘密鍵をrootのルートフォルダに移動。
移動した秘密鍵をWinSCPなどで取得し、ユーザーに配布。
以上で秘密鍵作成からユーザーへの配布は完了。
以降、ユーザー作成毎にループ。
# emacs /etc/ssh/sshd_config
PasswordAutheticationを「no」に書き換える。
# systemctl restart sshd.service
# groupadd [グループ名]
グループを作成する。
# cat /etc/group
これでグループ作成されたことを確認する。
# gpasswd -a [ユーザー名] [グループ名]
# id [ユーザー名]
これでユーザーのグループ設定状況がわかる。
# cat /etc/group
グループの所属メンバーが分かる。
# gpasswd -d [ユーザー名] [グループ名]
これでユーザーがグループから除外される。
# useradd -m -d /home/[ユーザー名] [ユーザー名] -G [グループ名] -s /bin/bash
ユーザーを作成すると同時に、グループにも登録される。
# emacs /etc/ssh/sshd_config
以下の部分を書き換える。
# Subsystem sftp /usr/lib/openssh/sftp-server Subsystem sftp internal-sftp
以下の部分を最後の行に追記する。
Match Group [グループ名] X11Forwarding no AllowTcpForwarding no ChrootDirectory /share ForceCommand internal-sftp
ChrootDirectoryに設定されたパスがルートフォルダになる。
そのフォルダは、所有者がrootで権限が755に設定されていること。