Revision: 134
http://postfixadmin.svn.sourceforge.net/postfixadmin/?rev=134&view=rev
Author: GingerDog
Date: 2007-10-05 01:58:36 -0700 (Fri, 05 Oct 2007)
Log Message:
-----------
convert-passwd-to-postfixadmin.pl: initial attempt; wrote due to request by plip0 on irc
Added Paths:
-----------
trunk/ADDITIONS/convert-passwd-to-postfixadmin.pl
Added: trunk/ADDITIONS/convert-passwd-to-postfixadmin.pl
===================================================================
--- trunk/ADDITIONS/convert-passwd-to-postfixadmin.pl (rev 0)
+++ trunk/ADDITIONS/convert-passwd-to-postfixadmin.pl 2007-10-05 08:58:36 UTC (rev 134)
@@ -0,0 +1,41 @@
+#!/usr/bin/perl -w
+#
+# Postfix Admin
+#
+# LICENSE
+# This source file is subject to the GPL license that is bundled with
+# this package in the file LICENSE.TXT.
+#
+# Further details on the project are available at :
+# http://www.postfixadmin.com or http://postfixadmin.sf.net
+#
+# @version $Id$
+# @license GNU GPL v2 or later.
+#
+#
+# Really crude attempt at taking all users from a local
+# passwd file (/etc/shadow) and creating postfixadmin mailboxes for them.
+#
+# The script outputs some SQL, which you need to then insert into your database
+# as appropriate.
+#
+# Notes:
+# 1) Change $mydomain and $true as required.
+# 2) Ideally it should parse /etc/passwd, or call the getpw()? function and
+# populate someone's name if known.
+# 3) There's plenty of room for improvement.
+#
+# Original author: David Goodwin <david at palepurple-co-uk> - 2007/10/05.
+#
+use strict;
+
+open(FH, '</etc/shadow') or die ('Cannot open shadow file; you need to be root - ' . $!);
+my $mydomain = "test.com";
+my $true = "t"; # t for pgsql; 1 for mysql
+foreach(<FH>) {
+ my ($username, $password) = split(':', $_);
+ next if $password eq '!';
+ next if $password eq '*';
+ my $maildir = "$username\@$mydomain/";
+ print "insert into mailbox (username, password, domain, active, maildir) values ('$username', '$password', '$mydomain', $true, '$maildir');\n";
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|