从Plesk服务器获取旧电子邮件,以移至具有相同域名的CPanel服务器

时间:2019-06-24 00:25:23

标签: dns migration cpanel plesk

我的客户以前有一个网站,该网站由另一个使用plesk的绅士主持。

此后,我已经接管了网站,并将域迁移到了我的服务器,所以它的名称服务器现在是我服务器的名称,而不是普通用户的名称。

我知道这家伙使用123reg进行托管。而且我也有IP地址,记录和诸如此类,但没有名称服务器。

我的问题是:我的客户没有告诉我他们需要将这些电子邮件与网站一起迁移,因此现在他们无法访问将网站移交给我之前存在的电子邮件。 在您说之前,我已经在线阅读了许多文章和主题以尝试找到答案,但是它们有不同的问题或使用过时的解决方案。

我需要知道如何访问旧的电子邮件收件箱,以通过FTP传输电子邮件或手动传输电子邮件。

这是座位:

  • 该域目前使用我的名称服务器托管于我。
  • 我需要来自同一域和整个地址的收件箱中的电子邮件。
  • 这些电子邮件是在不同名称服务器的旧服务器上发送和接收的。
  • 我的服务器是CPanel,旧服务器是Plesk。
  • 旧主人是123reg。
  • 新主人是克里斯塔尔。
  • 我有旧服务器的IP和记录,但没有名称服务器。
  • 我拥有每个邮箱的所有密码。
  • 我无法访问旧服务器(不是我的服务器)的仪表板。
  • 我有3天。

请帮助我纠正此菜鸟错误!我再也不会认为他们不需要电子邮件了!

任何问题,请问。我知道我有能力修复它,但不知道如何解决。

谢谢! Kieron

2 个答案:

答案 0 :(得分:1)

问题在于,旧服务器使用的是Plesk,后者使用的是Postfix电子邮件服务器,而新服务器使用的是cPanel,后者使用的是Exim。因此,没有直接的方法来传输电子邮件。您应该使用IMAP手动迁移电子邮件。如果只有几个电子邮件帐户,请尝试使用以下步骤:

  • 在新服务器上创建与旧服务器上相同的电子邮件帐户。使用相同的拼写和大写字母。
  • 为新的电子邮件帐户提供与旧服务器相同的密码。如果需要,您可以在完成迁移过程后更改密码。

  • 在本地电子邮件客户端中,创建两个新的电子邮件帐户。

    • 这些都将用于相同的电子邮件地址。
    • 他们都将使用相同的密码。
    • 必须将它们都配置为使用IMAP进行连接。
    • 每个帐户的传入服务器(或IMAP服务器)将有所不同。您应该尽可能将IP地址用于新服务器,并将访问域或IP地址用于旧服务器,而不要使用域名。这样可以避免任何可能的DNS冲突。
  • 两个帐户都在线时,打开连接到旧服务器的帐户的收件箱。将邮件从此收件箱拖放到新服务器上的收件箱中。
  • 就是这样!如果您有很多电子邮件,请给这些帐户几分钟时间以完成同步。完成后,您的旧电子邮件将在新服务器上的邮箱中。

答案 1 :(得分:1)

如果您有权访问新服务器中的控制台,则可以尝试安装imapsync,例如在 CentOS 中:

  

如果您不具有访问控制台的权限或无法安装imapsync,则始终可以在此处使用在线版本:https://i005.lamiral.info/X/

首先通过yum安装对Epel存储库的访问权限:

  yum install epel-release

然后安装imapsync及其依赖项:

  yum install imapsync

然后,您可以创建一个脚本,该脚本读取txt文件并同步所需的所有IMAP邮箱(仅将旧邮件服务器的IP地址用作源服务器):

#!/bin/sh
#
# $Id: sync_loop_unix.sh,v 1.8 2018/02/12 21:53:40 gilles Exp gilles $

# Example for imapsync massive migration on Unix systems.
# See also http://imapsync.lamiral.info/FAQ.d/FAQ.Massive.txt
#
# Data is supposed to be in file.txt in the following format:
# host001_1;user001_1;password001_1;host001_2;user001_2;password001_2;
# ...
# Separator is character semi-colon ";" it can be changed by any character changing IFS=';' 
# in the while loop below.
# # Each line contains 6 columns, columns are parameter values for 
# --host1 --user1 --password1 --host2 --user2 --password2
# and a trailing empty fake column to avoid CR LF part going 
# in the 6th parameter password2. Don't forget the last semicolon.
#
# You can add extra options after the variable "$@" 
# Use character backslash \ at the end of each supplementary line, except for the last one.
# You can also pass extra options via the parameters of this script since
# they will be in "$@"

# The credentials filename "file.txt" used for the loop can be renamed 
# by changing "file.txt" below.


echo Looping on account credentials found in file.txt
echo

{ while IFS=';' read  h1 u1 p1 h2 u2 p2 fake
    do 
        { echo "$h1" | tr -d '\r' | egrep '^#|^ *$' ; } > /dev/null && continue # this skip commented lines in file.txt
        echo "==== Starting imapsync from host1 $h1 user1 $u1 to host2 $h2 user2 $u2 ===="
        imapsync --host1 "$h1" --user1 "$u1" --password1 "$p1" \
                 --host2 "$h2" --user2 "$u2" --password2 "$p2" \
                 "$@"  
        echo "==== Ended imapsync from host1 $h1 user1 $u1 to host2 $h2 user2 $u2 ===="
        echo
    done 
} < file.txt

这是.txt文件的示例(您必须将其与邮箱数据进行编译才能进行同步)。

  

格式为:

     

源服务器;源用户;源密码;目标服务器;目标用户;目标密码

# Example file.txt for imapsync massive migration.
#
# $Id: file.txt,v 1.14 2018/02/11 13:42:58 gilles Exp gilles $ 
#
# Each line contains 6 columns, columns are parameters for 
# --host1 --user1 --password1 --host2 --user2 --password2
# and a trailing empty fake column to avoid CR LF part going 
# in the 6th parameter password2. Don't forget the last semicolon.
#
# Windows: see the script examples/sync_loop_windows.bat 
# Unix:    see the script examples/sync_loop_unix.sh 
#
# Lines starting with a # are comments and ignored
# Blank lines are ignored as well


# Now the data example 
host001_1;user001_1;password001_1;host001_2;user001_2;password001_2;
host002_1;user002_1;password002_1;host002_2;user002_2;password002_2;
host003_1;user003_1;password003_1;host003_2;user003_2;password003_2;

# Another comment blabla
host004_1;user004_1;password004_1;host004_2;user004_2;password004_2;

# This last example is a real one, ie, truly working in the real world.
test1.lamiral.info;test1;secret1;test2.lamiral.info;test2;secret2;