1)新しいユーザーが管理者権限を付与せずにアカウントを作成できるようにする安全な方法を見つけようとしています。自分のシステムにすでにアカウントがあり、UNIXコマンドラインにアクセスできる場合は、puTTYなどのプログラムを使用してアクセスできます。私は現在、ドロップボックスに似たレイアウトで視覚的にファイルを送受信できるプログラムを作成しています。しかし、「新しいユーザーを作成」機能を追加したいのですが、これを安全に行う方法がわかりません。
もちろん、プログラムが「sudo adduser jim」のようなことを行い、sudoパスワードを提供するようにすることもできますが、そのためにはjarファイルに管理パスワードを含める必要があります。難読化プログラムがあることを知っていますが、これは必ずしも安全ではありません。私はユーザーを作成するためにSSHを使用することを好みますが、動作し安全なすべての方法で開いています。
2) 今思ったことがあります。 sudo機能が新しいユーザー作成に制限された管理ユーザーを作成した場合はどうなりますか?これは合理的に安全なソリューションのように聞こえますか?それでは、どうすればいいですか?そうでなければ、このアプローチの欠点は何ですか?
編集:これまでの解決策は次のとおりです。入力を削除したとし、最初の引数をユーザー名、2番目の引数をパスワードとして使用し、権限(setuidビット)を次に設定するスクリプトを作成します。書き込みはできません。rootではなくアカウントで実行すると、root権限でのみ実行できます。これはこれまでで最も基本的なコードです。
adduser --disabled-password --gecos "" "$1"
echo "$1":"$2" | chpasswd
どう思いますか?どうすれば改善できると思いますか?
ベストアンサー1
唯一の問題がsudo
パスワードを使用する必要がある場合は、ファイルにタグを追加できますNOPASSWD
。sudoers
欲しい
some_user ALL = (ALL) NOPASSWD:/path/to/adduser