Armadilloフォーラム

SWUpdateで新しいログインユーザーをArmadilloに追加する方法について

yorikasa

2024年4月1日 17時55分

お世話になっております。

現在、一般ユーザーとしてatmarkではなく、別のユーザーをArmadilloに追加して運用することを検討しています。
具体的には、mkswu --initにて「atmark」ユーザーをロック後「user1」を新しく追加したいのですが、SWUpdateによりuser1を追加する方法はございますでしょうか?

下記のHowToを参考に試そうと思ったのですが、Atmark Distのサポート対象にA6Eが含まれておらず、同じ手順での実施が出来ないと想像しております。
他、方法ございましたら教えていただけると幸いです。

ログインユーザを追加する: https://armadillo.atmark-techno.com/howto/add-user
Atmark Dist: https://armadillo.atmark-techno.com/resources/software/atmark-dist

少々本題とずれてしまうのですが下記についても合わせて教えていただけると幸いです。
「atmark」ユーザーをロックというのは、「atmark」ユーザーを削除せずにログインできない状態にしている認識なのですが合っておりますでしょうか?
「atmark」ユーザーをログインできない状態にしているだけの場合、後から有効化はできるのでしょうか?
有効化できる場合、運用として有効化できるケースを残しておきたくないのですが、「atmark」ユーザーを削除することは可能でしょうか?

コメント

at_dominique.m…

2024年4月1日 18時11分

yorikasa さん

お世話になっています、
マルティネです。

> 具体的には、mkswu --initにて「atmark」ユーザーをロック後「user1」を新しく追加したいのですが、SWUpdateによりuser1を追加する方法はございますでしょうか?

はい。
SWUpdate 用の .desc ファイルに任意なコマンドを実行できますので、コマンドでできることでしたら SWUpdate でもできます。

ユーザーの追加は useradd コマンドでできますので、あらかじめ「openssl passwd -6」でパスワードの部分を計算してから以下の用なコマンドでユーザーが追加されます。

ついでに、ユーザーのグループも追加して、/home ディレクトリを Armadillo Base OS の更新で保存されるように設定しました (mygroup, myuser とパスワードの部分を変更してください)

swdesc_option component=adduser version=1
 
swdesc_command --extra-os "groupadd mygroup" \
    'useradd -m -p "$6$.ZJgSbXmLvLUI5DK$eySI1EWBBy.hM5xYAdHRckEicMEeKZmBZkH3.q2GHCYwe5IWtVSzepR3eNhQ9bVG2G2OrC.ZOQKXUQh2CERvR/" -G mygroup myuser' \
    "echo /home/myuser >> /etc/swupdate_preserve_files"

initial_setup.swu をまだインストールしていない状態でしたら「mkswu $HOME/mkswu/initial_setup.desc ...(このファイル)adduser.desc」で内容を組み合わせるもできますし、すでにインストールされている場合は 「mkswu adduser.desc」でそれだけの swu も生成できます。

> 下記のHowToを参考に試そうと思ったのですが、Atmark Distのサポート対象にA6Eが含まれておらず、同じ手順での実施が出来ないと想像しております。
> 他、方法ございましたら教えていただけると幸いです。

Atmark Dist は前の製品で使用していた OS で、Armadillo A6E では確かに対応していません。
/etc/passwd 等のファイルの仕組みは当時からほぼ変わってませんが、コマンドでできますのでファイルの直接な変更せずにコマンドを使いましょう。

よろしくお願いします。

at_dominique.m…

2024年4月2日 11時00分

マルティネです。

連続ですみません。

昨日の返事に問題がありませんが、参考までになぜユーザーを追加しようとしているかを教えていただけますでしょうか?

Armadillo Base OS (ABOS)ではコンテナでの開発を前提にしていますので、ABOS側のユーザーを追加してもコンテナ内のユーザーに影響ありません。
(コンテナでのユーザーの追加もできて、もしかしたらそちらの方での操作の質問だったかなと指摘されました)

よろしくおねがいします。

マルティネさん

お世話になっております。

少々お時間が空いてしまい申し訳ありません。
方法のご回答ありがとうございました。

> > 具体的には、mkswu --initにて「atmark」ユーザーをロック後「user1」を新しく追加したいのですが、SWUpdateによりuser1を追加する方法はございますでしょうか?
>
> はい。
> SWUpdate 用の .desc ファイルに任意なコマンドを実行できますので、コマンドでできることでしたら SWUpdate でもできます。
>
> Atmark Dist は前の製品で使用していた OS で、Armadillo A6E では確かに対応していません。
> /etc/passwd 等のファイルの仕組みは当時からほぼ変わってませんが、コマンドでできますのでファイルの直接な変更せずにコマンドを使いましょう。
取説は一通り確認したつもりだったのですが、.descファイルにコマンドを記載できるということ理解できておりませんでした。
教えていただいた内容で対応したいと思います。

> 昨日の返事に問題がありませんが、参考までになぜユーザーを追加しようとしているかを教えていただけますでしょうか?
>
> Armadillo Base OS (ABOS)ではコンテナでの開発を前提にしていますので、ABOS側のユーザーを追加してもコンテナ内のユーザーに影響ありません。
> (コンテナでのユーザーの追加もできて、もしかしたらそちらの方での操作の質問だったかなと指摘されました)
ありがとうございます。
コンテナ側ではなく、BaseOS上のユーザーを追加したかったので前述の内容でやりたいことの確認は出来ました。
意図としては、私共のシステムにおけるセキュリティの観点からユーザー名を限定(非公開)にしアクセス可能な人物を制限したい思っているためです。
詳細については多くは共有できず申し訳ありません。

もし、atmarkユーザーを利用しないことによる不都合がありそうでしたら、改めて検討したいと思いますので教えていただけると幸いです。

at_dominique.m…

2024年4月5日 9時55分

yorikasaさん

マルティネです。

> 取説は一通り確認したつもりだったのですが、.descファイルにコマンドを記載できるということ理解できておりませんでした。

コメントありがとうございます。ドキュメンテーションを少し見直して分かりやすくできないか見てみます。

> コンテナ側ではなく、BaseOS上のユーザーを追加したかったので前述の内容でやりたいことの確認は出来ました。
> 意図としては、私共のシステムにおけるセキュリティの観点からユーザー名を限定(非公開)にしアクセス可能な人物を制限したい思っているためです。
> 詳細については多くは共有できず申し訳ありません。

了解しました。
シリアルコンソールを使った検査があれば、確かに root以外のユーザーでログインさせるのはいいと思います。

> もし、atmarkユーザーを利用しないことによる不都合がありそうでしたら、改めて検討したいと思いますので教えていただけると幸いです。

ないはずです。何か変わった動作があれば不具合の可能性がありますので、教えてください。

(ただし、コンテナの動作自体はそもそもユーザーであまりサポートしてませんので、コンテナに接触するコマンドなどに doas か su が必要になると思います…)

よろしくお願いします

マルティネさん

> > もし、atmarkユーザーを利用しないことによる不都合がありそうでしたら、改めて検討したいと思いますので教えていただけると幸いです。
>
> ないはずです。何か変わった動作があれば不具合の可能性がありますので、教えてください。

かしこまりました。
想定と異なる動作がありましたら改めてご相談させていただきます。

> (ただし、コンテナの動作自体はそもそもユーザーであまりサポートしてませんので、コンテナに接触するコマンドなどに doas か su が必要になると思います…)

今のところ追加ユーザーによるコンテナの操作までは行わない予定なので、必要になりそうになった時改めて検討していきたいと思います。