From patchwork Thu Jan 3 21:47:21 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [pull,request,v3] Pull request for branch yem-package-create-user Date: Thu, 03 Jan 2013 11:47:21 -0000 From: "Yann E. MORIN" X-Patchwork-Id: 209318 Message-Id: To: buildroot@busybox.net Cc: "Yann E. MORIN" Hello All! Here is a series that allows packages to create users. Packages that install daemons may well want to run those daemons as non-root users to avoid security issues. Currently, there are two users of choice to run 'generic' daemons: root or daemon (although there are a few dedicated users to run a few services: mail, sshd, ftp...). This series builds upon both the package infrastrucutre to define the user(s) a package may want to create, and the filesystem infrastructure to actually generate these users, and chown their ${HOME}s. Documentation is updated accordingly. Note: for now, users' passwords are md5-encrypted. Once the pending change to introduce alternative password-encryption schemes is applied, we can use that to encode users' passwords, too. As a proof of concept, the package tvheadend has been updated to use a dedicated user to run its daemon as (call me stubborn! ;-] ). Changes v2 -> v3: - clarify password prefixes (Samuel) - move makeuser syntax doc to its own file (Samuel) - use awk instead of sed to parse /etc/passwd et al. (Cam, Thomas) - sanitise use of grep (Cam) - enhancements and fixes to makuser syntax doc (Cam) Changes v1 -> v2: - drop the gshadow patch (Thomas, Peter) - tvheadend user is now part of the video secondary group The following changes since commit 31ff7b5eac3883a11faf60d9af0b47bfc2d903f3: docs: 2012.11.1 is out (2013-01-03 22:02:10 +0100) are available in the git repository at: git://gitorious.org/buildroot/buildroot.git yem-package-create-user Yann E. MORIN (2): packages: add ability for packages to create users package/tvheadend: use a non-root user to run the daemon docs/manual/adding-packages-generic.txt | 16 ++- docs/manual/appendix.txt | 1 + docs/manual/makeusers-syntax.txt | 87 ++++++++ fs/common.mk | 5 +- package/pkg-generic.mk | 1 + package/tvheadend/etc.default.tvheadend | 5 +- package/tvheadend/tvheadend.mk | 10 +- support/scripts/mkusers | 359 +++++++++++++++++++++++++++++++ 8 files changed, 476 insertions(+), 8 deletions(-) create mode 100644 docs/manual/makeusers-syntax.txt create mode 100755 support/scripts/mkusers Regards, Yann E. MORIN