How to go about migrating from ISPConfig 2 to 3

Discussion in 'General' started by bswinnerton, Feb 3, 2010.

  1. bswinnerton

    bswinnerton New Member

    Hey everyone,

    I'm thinking more and more about creating a new virtual machine for ISPConfig 3. Right now I'm running ESXi on my server and have ISPconfig 2 installed on it with around 10-15 domains and 20-30 email accounts.

    How should I go about migrating from ISPconfig 2 to 3, while maintaining all of the user accounts, passwords and emails and domains?

    I don't really mind manually re-entering things like domains and DNS info, but the thing that I definitely cannot lose from the old server is the email addresses, emails and their passwords (simply because I cannot manually re-create them).

    Thanks
     
  2. jerume

    jerume New Member

    I will be very interested in an answer too :eek:
     
    Last edited: Feb 3, 2010
  3. damir

    damir New Member

    I'm afraid that you are left with the manual moving of the files. Ispc2 and 3 are not compatible because they are two totally different systems.

    You need to re-create all the users and emails but both ispc 2 and 3 are using Courier so it is possible to move emails between servers.

    I'm in process to migrate one of my iscp2 servers to ispc3 and alot of stuff needs to be re-created but the data can be moved between servers.
     
  4. jerume

    jerume New Member

    and what about the passwords ?
     
    Last edited: Feb 3, 2010
  5. damir

    damir New Member

    Passwords need to be re-created as well because ispc3 uses virtualusers that are not stored and treated as unix users. They are all stored in database.
     
  6. bswinnerton

    bswinnerton New Member

    Can we somehow use the /etc/shadow or /etc/passwd file to recreate the passwords?
     
  7. till

    till Super Moderator Staff Member ISPConfig Developer

    The passwords in ispconfig 2 AND 3 use the same encryption method. This means that you can copy them from the /etc/passwd file to the password field in the mail_user, ftp_user and shell_user table without having to know them in cleartext nor having to recreate them.

    Regarding the email accounts, in ispconfig 3, there is no separate username for email accounts as the email address itself is the username, this means that after you recreated the email mailboxes, you will have to tell your users that the new username is the email address and the password will remain the same if you copy it as explained above.

    When it comes to the mailbox contnst, ispconfig 2 and 3 use both courier with maildir format, so you can copy the content of the maildir directories to the the new server. Just make sure that all maildirs in ispconfig 3 are owned by user and group vmail instead ofy a individual system user, so just chown them after you copied the files.
     
  8. bswinnerton

    bswinnerton New Member

    Thanks Till,

    What should the permissions look like on the web side? www-data owner?

    Also, what are the main folders I should be bringing over? Anything besides /var/www/web*
     
  9. till

    till Super Moderator Staff Member ISPConfig Developer

    The files inside the website directory (the "web" subdirectory created by ispconfig 3) should have the same owner then the "web" directory itself.

    You can not bring over any main folders as the folder structure between ispconfig 2 and 3 is different. Also do not copy over the content of /var/www/web* as they are not compatibe, you can only copy over /var/www/web*/web/ to the /var/www/domain.com/web/ folder on the new server. and then after you created the email mailboxes, you can copy the content of e.g. /var/www/web*/users/user1/Maildir/* to /var/vmail/domain.com/user/
     
  10. bswinnerton

    bswinnerton New Member

    Thanks once again Till!

    If it weren't for you guys, I wouldn't even have a server :)
     
  11. bswinnerton

    bswinnerton New Member

    One last question,

    If I keep the same domain name, can I safely move over the SSL certificate from the old server to the new one?

    Are they going to the same directories? How should I go about doing this?
     
  12. falko

    falko Super Moderator ISPConfig Developer

    Yes.

    Not necessarily - the web ID might differ.
     
  13. bswinnerton

    bswinnerton New Member

    Okay, this is a more general question but what is the purpose (and do I need to port them over) of these files:

    1. courierimaphieracl
    2. courierimapkeywords
    3. courierimapsubscribed (I figured this one out, it's subscribe to certain subfolders.. and is needed)
    4. courierimapuiddb
    5. courierpop3dsizelist
     
    Last edited: Mar 5, 2010
  14. radim_h

    radim_h Member

    transferring mail accounts

    Hello Till,

    i'm migrating old ISPC2 server to ISPC3 and have 2 questions:

    1. I'm using multiserver setup on ISPC3. After i copy password hash from /etc/shadow to master database on ispc3, is there any way how to make slave mail server synchronise all db changes (new passwords) ?
    I don't want to click to every mail account and change for example quota to have pass changes synchronized

    2. all passwords in ISPC3 are starting with $1$ which has to be MD5, is it right?

    some accounts in ISPC2 which password hasn't been changed for couple years doesnt start with $1$, the new ones do
    Had ISPC2 been using some different encrypting earlier?
    does it mean i'm not able transfer those accounts NOT starting with $1$ ?

    I don't knot passwords corresponding to this old hashes, co i can't test
     
  15. till

    till Super Moderator Staff Member ISPConfig Developer

    1) Changes that were done in the mysql db manually dont get synced to the slaves. Either you do the changes with the ISPConfig remote API so that ispconfig recognizes them or you will have to edit and save every user manually after you changed the settings in mysql.

    2) The passwords are in crypt-md5 format. Older ispconfig 2 versions used a different format, but the old format should work as well as it has a different prefix which shows the Linux crypt library that a different encryption mechanism is used.
     

Share This Page