diff --git a/.gitignore b/.gitignore
index b4e115c8034a656e8165161bdedf77b48956103b..0ab9ff9be6403d35b020890b87bc50c7296c4fc6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -99,6 +99,7 @@
 /tools/kvm-ifup
 /tools/burnin
 /tools/ensure-dirs
+/tools/users-setup
 /tools/vcluster-setup
 /tools/node-cleanup
 /tools/node-daemon-setup
diff --git a/Makefile.am b/Makefile.am
index cf6e3343078f55fda2da6d76efe2588cd0650111..0059a7b2b588f1a671d2f96ef0cfaeedbae7d07a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -181,6 +181,7 @@ CLEANFILES = \
 	$(man_MANS) \
 	$(manhtml) \
 	tools/kvm-ifup \
+	tools/users-setup \
 	tools/vcluster-setup \
 	stamp-directories \
 	stamp-srclinks \
@@ -832,6 +833,7 @@ nodist_tools_python_scripts = \
 
 nodist_tools_SCRIPTS = \
 	$(nodist_tools_python_scripts) \
+	tools/users-setup \
 	tools/vcluster-setup
 
 pkglib_python_scripts = \
@@ -882,6 +884,7 @@ EXTRA_DIST = \
 	devel/upload \
 	devel/webserver \
 	tools/kvm-ifup.in \
+	tools/users-setup.in \
 	tools/vcluster-setup.in \
 	$(docinput) \
 	doc/html \
@@ -1254,6 +1257,10 @@ tools/kvm-ifup: tools/kvm-ifup.in $(REPLACE_VARS_SED)
 	sed -f $(REPLACE_VARS_SED) < $< > $@
 	chmod +x $@
 
+tools/users-setup: tools/users-setup.in $(REPLACE_VARS_SED)
+	sed -f $(REPLACE_VARS_SED) < $< > $@
+	chmod +x $@
+
 tools/vcluster-setup: tools/vcluster-setup.in $(REPLACE_VARS_SED)
 	sed -f $(REPLACE_VARS_SED) < $< > $@
 	chmod +x $@
diff --git a/tools/users-setup.in b/tools/users-setup.in
new file mode 100644
index 0000000000000000000000000000000000000000..8be0a0125e58f1a031fedb8cde4afcb647fe9467
--- /dev/null
+++ b/tools/users-setup.in
@@ -0,0 +1,26 @@
+#!/bin/sh
+#Create common groups
+addgroup --system @GNTDAEMONSGROUP@
+addgroup --system @GNTADMINGROUP@
+
+#Create user-specific groups
+addgroup --system @GNTMASTERUSER@
+addgroup --system @GNTRAPIUSER@
+addgroup --system @GNTCONFDUSER@
+
+#Create users
+adduser --system --ingroup @GNTMASTERDGROUP@ @GNTMASTERUSER@
+adduser --system --ingroup @GNTRAPIGROUP@ @GNTRAPIUSER@
+adduser --system --ingroup @GNTCONFDGROUP@ @GNTCONFDUSER@
+adduser --system @GNTNODEDUSER@
+
+#Add users to extra groups
+for u in @GNTMASTERUSER@ @GNTCONFDUSER@ @GNTRAPIUSER@
+do
+  adduser $u @GNTDAEMONSGROUP@
+done
+
+for u in @GNTMASTERUSER@ @GNTRAPIUSER@
+do
+  adduser $u @GNTADMINGROUP@
+done