Imapsync là một công cụ hoàn toàn miễn phí được sử dụng để sao chép emails từ một mail server đến một mail server khác thông qua giao thức IMAP. Công cụ này hỗ trợ cho các hệ điều hành Linux, Windows và MacOS. Imapsync hoạt động hoàn toàn trên command line và không có giao diện.
Nội Dung
Tính năng nổi bật
- Hỗ trợ cho tất cả các hệ điều hành Linux, Windows, Mac OS X.
- Imapsync hoạt động tuần tự nên bạn có thể ngưng tác vụ chuyển dữ liệu bất cứ lúc nào và thực hiện lại một cách hiệu quả mà không sợ bị trùng lặp mail.
- Có thể copy đầy đủ các folders, subfolders.
- Bạn có thể thực hiện chuyển mail thông qua công cụ online tại: https://imapsync.lamiral.info/X/
Hướng dẫn cài đặt Imapsync
Ở bài viết này, vHost sẽ hướng dẫn bạn thực hiện cài đặt Imapsync trên hệ điều hành Ubuntu 20.04. Thông tin chi tiết và cách cài đặt Imapsync trên các hệ điều hành khác, bạn có thể tham khảo tại link: https://imapsync.lamiral.info/
Bước 1 – Cài đặt Imapsync
Download source code từ Github.
git clone https://github.com/imapsync/imapsync.git
Chạy các lệnh sau để cài đặt.
cd imapsync
cp imapsync /usr/bin/
Bước 2 – Cài đặt các packages cần thiết
Bắt đầu với việc cài đặt các packages cần thiết cho Imapsync.
sudo apt-get install \
libauthen-ntlm-perl \
libclass-load-perl \
libcrypt-ssleay-perl \
libdata-uniqid-perl \
libdigest-hmac-perl \
libdist-checkconflicts-perl \
libencode-imaputf7-perl \
libfile-copy-recursive-perl \
libfile-tail-perl \
libio-compress-perl \
libio-socket-inet6-perl \
libio-socket-ssl-perl \
libio-tee-perl \
libmail-imapclient-perl \
libmodule-scandeps-perl \
libnet-dbus-perl \
libnet-ssleay-perl \
libpar-packer-perl \
libreadonly-perl \
libregexp-common-perl \
libsys-meminfo-perl \
libterm-readkey-perl \
libtest-fatal-perl \
libtest-mock-guard-perl \
libtest-mockobject-perl \
libtest-pod-perl \
libtest-requires-perl \
libtest-simple-perl \
libunicode-string-perl \
liburi-perl \
libtest-nowarnings-perl \
libtest-deep-perl \
libtest-warn-perl \
make \
cpanminus
Tiếp tục cài đặt các modules Python cần thiết.
sudo cpanm Crypt::OpenSSL::RSA Crypt::OpenSSL::Random --force
sudo cpanm Mail::IMAPClient JSON::WebToken Test::MockObject
sudo cpanm Unicode::String Data::Uniqid
Sau bước này, bạn đã sẵn sàng để chuyển dữ liệu email của mình từ một mail server đến một mail server khác bằng giao thức IMAP.
Hướng dẫn sử dụng Imapsync để chuyển dữ liệu email
vHost sẽ lấy ví dụ về việc chuyển email từ Gmail về server của dịch vụ Email Pro tại vHost. Trước khi tiến hành chuyển dữ liệu, bạn cần đảm bảo rằng cả 2 tài khoản email đều có thể truy cập được thông qua IMAP trên server mà bạn cài đặt Imapsync.
Bước 1 – Tạo App password tài khoản Gmail
- Truy cập và đăng nhập vào link https://myaccount.google.com/:
- Chọn phần Bảo mật, tại phần tìm kiếm bạn tìm kiếm với từ khóa mật khẩu ứng dụng và chọn Mật khẩu ứng dụng
- Tại phần này bạn điền Tên ứng dụng với tên imap.gmail.com sau đó nhấn Tạo,
- Tại đây sẽ xuất hiện một mật khẩu có 16 ký tự bạn lưu lại mật khẩu này sau đó nhấn Xong:
Bước 2 – Enable IMAP trên tài khoản mail Google
- Login vào tài khoản Gmail. Click vào biểu tượng bánh răng ở góc phải màn hình và chọn Xem tất cả chế độ cài đặt:
- Chọn tab Chuyển tiếp và POP/IMAP sau đó chọn Bật IMAP, Không hạn chế số lượng thư mục IMAP (mặc định) và nhấn Lưu thay đổi để lưu lại cài đặt:
Bước 3 – Thực hiện sync email
Trước khi tiến hành chuyển dữ liệu, bạn cần đảm bảo rằng cả 2 tài khoản email đều có thể truy cập được thông qua IMAP trên server mà bạn cài Imapsync. Sau đó bạn có thể chạy câu lệnh đơn giản sau để chuyển email:
imapsync --host1 imap.gmail.com \
--user1 user@domain.com \
--password1 AppPassword \
--ssl1 \
--host2 webmail.vhost.email \
--user2 user@domain.com \
--password2 Dest1nat10NPassw0rd \
--ssl2
Trong đó:
- host1, user1, password1: lần lượt là domain/địa chỉ IP của mail server nguồn (trong tình huống này là imap.gmail.com), tài khoản email và app password đã khởi tạo ở Bước 1.
- host2, user2, password2: lần lượt là domain/địa chỉ IP của mail server đích, tài khoản email và password trên mail server đích cần chuyển email đến.
Cảnh báo:
vHost không khuyến khích bạn sử dụng câu lệnh đơn giản này bởi vì lý do bảo mật thông tin. Khi thực hiện lệnh trên, bạn sẽ điền password email ngay trên câu lệnh dưới dạng plain text. Vì vậy nếu một người khác có quyền truy cập vào server đang chạy câu lệnh này, họ có thể sử dụng lệnh “history” hoặc câu lệnh “top -c” để xem được password email của bạn. Thay vào đó bạn có thể tạo 2 file chứa password và truyền vào câu lệnh với tham số –passfile1 và –passfile2. Khi đó câu lệnh Imapsync sẽ có dạng như sau:
imapsync --host1 imap.gmail.com \
--user1 user@domain.com \
--passfile1 /path/to/passfile1 \
--ssl1 \
--host2 webmail.vhost.email \
--user2 user@domain.com \
--passfile2 /path/to/passfile2 \
--ssl2
–passfile1 và –passfile2 lần lượt là đường dẫn đến 2 file chứa password mà bạn đã tạo. Bạn có thể tạo nhanh 2 file này với câu lệnh sau:
echo 'AppPassword' > passfile1
echo 'p@ssw0rd' > passfile2
Thay thế AppPassword bằng password bạn đã tạo ở Bước 1 và p@ssw0rd là password email ở mail server đích.
Nâng cao
Bạn có thể kết hợp 2 tham số –delete1 và –noexpungeaftereach để thực hiện xoá email trên mail server nguồn để tiện kiểm tra mail đã sync đầy đủ hay chưa và có bị sót email nào hay không:
imapsync --host1 imap.gmail.com \
--user1 user@domain.com \
--passfile1 /path/to/passfile1 \
--ssl1 \
--host2 webmail.vhost.email \
--user2 user@domain.com \
--passfile2 /path/to/passfile2 \
--ssl2 \
--delete1 --noexpungeaftereach
Ngoài ra, để có thể chạy nhiều tiến trình Imapsync cùng một lúc bạn cần thêm vào tham số sau trên câu lệnh:
imapsync --host1 imap.gmail.com \
--user1 user@domain.com \
--passfile1 /path/to/passfile1 \
--ssl1 \
--host2 webmail.vhost.email \
--user2 user@domain.com \
--passfile2 /path/to/passfile2 \
--ssl2 \
--pidfile ""
Để rút ngắn thời gian chuyển email, bạn cũng có thể thêm 2 tham số –nofoldersizes và –nofoldersizesatend. Tuy nhiên khi thêm 2 tham số này, Imapsync sẽ không tính toán được thời gian dự kiến hoàn tất chuyển email của bạn.
Thời gian để hoàn tất chuyển dữ liệu email phụ thuộc vào dung lượng hộp thư của bạn. Sau khi chuyển dữ liệu hoàn tất, bạn sẽ nhận được output như hình bên dưới ở màn hình console:
Qua bài viết này, bạn đã biết được cách cài đặt cũng như sử dụng Imapsync để chuyển dữ liệu email giữa các mail server. Nếu có gì thắc mắc, bạn đừng ngần ngại gửi yêu cầu hỗ trợ đến email support@vhost.vn. Chúc bạn thành công!
Chia sẻ:
- Click to share on Twitter (Opens in new window)
- Click to share on Facebook (Opens in new window)
- Click to share on Reddit (Opens in new window)
- Click to share on Tumblr (Opens in new window)
- Click to share on WhatsApp (Opens in new window)
- Click to share on Pocket (Opens in new window)
- Click to share on LinkedIn (Opens in new window)
- Click to share on Pinterest (Opens in new window)
- Click to share on Telegram (Opens in new window)
- Click to print (Opens in new window)
- Click to email a link to a friend (Opens in new window)