iRedMail mail server trên CenOS (Linux kernel) iRedMail mail server trên CenOS (Linux kernel) iRedMail mail server trên CenOS (Linux kernel)iRedMail mail server trên CenOS (Linux kernel) iRedMail mail server trên CenOS (Linux kernel)
Nhóm 8: AHKY MSSV HỌ VÀ TÊN 1112140 Trương Vũ Tuấn Khải 1212538 Võ Văn Ý 1212563 Hà Văn Hào 1 1. Thư điện tử (Email) • Thư điện tử là gì. • Là một phương tiện truyền thông tin rất hiện đại. • Truyền một mẫu thông tin(thư từ dạng text, hình ảnh, âm thanh, phim ảnh…) có thể được gửi đi ở dạng mã hóa hay dạng thông thường. • Được truyền thông qua mạng máy tính đặc biệt là mạng Internet. • Có thể chuyển mẫu thông tin từ một máy nguồn tới một hay rất nhiều máy nhận trong cùng lúc. 2 2. Cách thức hoạt động 3 2.1. Tên miền (Domain) Muốn gửi/nhận mail trên Internet phải mua domain quốc tế, domain local chỉ có thể gửi/nhận local và gửi Internet nhưng không thể nhận về. 4 2.2. Chiều gửi mail • Gọi tên – Mail server gửi(Sender). – Mail server nhận(Receiver). • Quy trình – Sender truy vấn DNS để tìm MX Record(IP) của domain đích. – Sender telnet port 25 của receiver để báo hiệu muốn gửi mail. – Receiver kiểm tra một số điều kiện để quyết định có nhận mail của sender không? – Nếu receiver đồng ý thì sender dùng protocol smtp để gửi mail cho receiver. – Kết thúc. 5 2.2. Chiều gửi mail • Port gửi mail: – SMTP – port 25 – Secure SMTP(SSMTP) – port 465 6 2.3. Chiều nhận mail • Để nhận mail được từ internet cần đáp ứng điều kiện: – Domain quốc tế. – Khai báo MX record trỏ về mail server. • Thường có 2 dạng: online và offline 7 2.3. Chiều nhận mail • Online: Mail từ internet gửi thằng về server của ta – Cài mail server nội bộ. – Publish port 25 của mail server ra Firewall. – NAT port 25 từ ADSL về Firewall. – Tùy theo tình huống thực tế sẽ có những điều chỉnh phù hợp. Ví dụ Firewall có IP public thì không cần công đoạn NAT port… 8 2.3. Chiều nhận mail • Offline: ta phải thuê server trung gian nào đó đứng ra nhận mail giúp, sau đó ta cấu hình mail server nội bộ kết nối đến server này tải mail về. • Mỗi mô hình đều có ưu/khuyết: – Mail online đòi hỏi phải có 1 hạ tầng hoàn chỉnh và ổn định nhưng ta sẽ làm chủ mọi thứ. – Mail offline thì không cần những thứ trên nhưng bù lại không làm chủ được mail. Ví dụ: rò rỉ thông tin, mất mail… 9 2.3. Chiều nhận mail • Mỗi mô hình đều có ưu/khuyết: – Mail online đòi hỏi phải có 1 hạ tầng hoàn chỉnh và ổn định nhưng ta sẽ làm chủ mọi thứ. – Mail offline thì không cần những thứ trên nhưng bù lại không làm chủ được mail. Ví dụ: rò rỉ thông tin, mất mail… 10 2.3. Chiều nhận mail • Port nhận mail: – POP3 – port 110. – Secure POP3(SSL-POP) – port 995. – IMAP – port 143. – Secure IMAP(IMAP4-SSL) – port 585. – IMAP4 over SSL(IMAPS) – port 993. 11 3. iRedMail 12 3.1. iRedMail là gì? • iRedMail là 1 đoạn mã shell có thể giúp bạn triển khai hệ thống giải pháp Mail Server mã nguồn mở 1 cách nhanh chóng, chỉ trong vòng 2 phút. • Hỗ trợ tốt Red Hat(R) Enterprise Linux và CentOS, Debian, Ubuntu, FreeBSD, đồng thời hỗ trợ cả các nền tảng i386 và x86_64. • Hầu hết các thành phần sử dụng trong iRedMail được cung cấp chính thức bởi Linux, điều này có nghĩa rằng người dùng iRedMail sẽ nhận được sự hỗ trợ về phần mềm và công nghệ theo vòng đời của sản phẩm. • Hỗ trợ OpenLDAP và MySQL để lưu trữ domain và user ảo. 13 3.2. Cài đặt iRedMail • Chuẩn bị • Trước khi cài iRedMail cần kiểm tra tên máy trong hệ thống. Để xem hostname hiện tại của máy dùng lệnh. 14 3.2. Cài đặt iRedMail • Đổi tên máy cho phù hợp với địa chỉ mail mong muốn. 15 3.2. Cài đặt iRedMail • Cấu hình IP tĩnh cho máy 16 3.2. Cài đặt iRedMail • Kiểm tra địa chỉ IP sau khi cài đặt 17 3.2. Cài đặt iRedMail • Cài đặt • Đầu tiên ta download bản mới nhất iRedMail về server và tiến hành cài đặt. 18 3.2. Cài đặt iRedMail • Cửa sổ chào mừng của iRedMail. Ta nhấn Yes để tiếp tục cài đặt 19 3.2. Cài đặt iRedMail • Cài đặt thư mục lưu trữ mailbox của người dùng, để mặc định và nhấn Next 20 3.2. Cài đặt iRedMail • iRedMail cung cấp 3 phương pháp lưu trữ dữ liệu người dùng gồm OpenLDAP, MySQL, PostgreSQL. Chọn MySQL và nhấn Next. 21 3.2. Cài đặt iRedMail • Nhập vào mật khẩu root của MySQL(mật khẩu root này không phải là mật khẩu của tài khoản root hệ thống) 22 3.2. Cài đặt iRedMail • Nhập vào tên domain của mail server.(để có thể sử dụng được tên miền này ta phải cấu hình DNS cho Client). 23 3.2. Cài đặt iRedMail • Hệ thống sẽ tạo một tài khoản postmaster(tài khoản quản trị mail), ta nhập mật khẩu cho tài khoản này. 24 3.2. Cài đặt iRedMail • Chọn các chương trình dùng để quản lý iRedMail nên để mặc định và nhấn Next để hệ thống tiến hành cài đặt. 25 3.2. Cài đặt iRedMail • Bạn chọn Y và nhấn Enter. Hệ thống sẽ tiến hành download các component mà bạn đã chọn lựa để cài đặt từ internet. 26 3.2. Cài đặt iRedMail • Cài đặt xong hệ thống yêu cầu ta cấu hình Firewall rule, MySQL, ClamAV. Ta chọn như hướng dẫn sau 27 3.2. Cài đặt iRedMail • Sau khi Update dữ liệu của ClamAV ta hoàn tất việc cài đặt iRedMail. 28 4. Quản trị và sử dụng iRedMail 29 4.1. Quản trị iRedMail • iRedAdmin Open Source Edition là trang quản trị dựa trên giao diện đồ họa web. Bạn có thể thêm, xóa, sửa các tên miền, tài khoản thư và tài khoản quản trị tên miền. • Đăng nhập trang quản trị với đường link: https://192.168.80.100/iredadmin • Chọn I Understand the Risks -> Add Exception. 30 4.1. Quản trị iRedMail 31 4.1. Quản trị iRedMail • Đăng nhập tài khoản quản trị: postmaster@ahky.com. Mật khẩu tài khoản quản trị: …… 32 4.1. Quản trị iRedMail • Sau khi đăng nhập hiển thị giao diện quản trị mail 33 4.1. Quản trị iRedMail • Tạo tên miền mới – Chọn tab Domains and Accounts – Ahky.com: tên miền tạo ra khi cài đặt – Add domain: Khi muốn tạo thêm 1 tên miền mới 34 4.1. Quản trị iRedMail • Nhập tên miền muốn tạo mới. Ở đây tôi tạo tên miền mới: khtn.com. Chọn Save changes. Sau khi Save changes báo hoàn thành quá trình tạo tên miền 35 4.1. Quản trị iRedMail • Thêm tài khoản quản trị – Chọn tab Admins – Tài khoản postmaster@ahky là tài khoản quản trị mặc định khi cài được tạo ra • Chọn Add admin 36 4.1. – – – – – Quản trị iRedMail Mail Address: nhập tên tài khoản muốn tạo New password : nhập mật khẩu tài khoản Confirm new password: nhập lại mật khẩu tài khỏa Display Name: Nhập tên hiển thị cho tài khoản Chọn Add 37 4.1. Quản trị iRedMail • Chọn Save changes 38 4.1. Quản trị iRedMail • Sau khi Save changes báo hoàn thành quá trình tạo tài khoản quản trị. 39 4.1. Quản trị iRedMail • Tạo tài khoản thư điện tử (E-Mail) – Tạo tài khoản thư điện tử kích Tab Add chọn User – Chọn Tab Add chọn User – Điền tên tài khoản thư cần tạo – Nhập mật khẩu tài khảo thư – Tên hiển thị cho tài khoản thư – Dung lượng sử dụng của tài khoản thư – Chọn Add hoàn thành tạo tài khoản thư 40 4.1. Quản trị iRedMail 41 4.1. Quản trị iRedMail 42 4.1. Quản trị iRedMail • Kiểm tra, quản lý danh sách tài khoản thư. • Hiển thị danh sách tài khoản thư được tạo. 43 4.1. Quản trị iRedMail • Giao điện đăng nhập Web iRedmail. Nhập tài khoản thư và mật khẩu, kích Login theo hình dưới. 44 4.1. Quản trị iRedMail • Giao diện hòm thư 45 5. Cài đặt DNS cho iRedMail server 46 5.1. Cài đặt gói BIND • BIND (Berkeley Internet Name Domain) là phần mềm miễn phí, nguồn mở sử dụng cho các máy chủ làm DNS Server. • Thư mục làm việc mặc định của BIND: /etc/named.conf • File cấu hình tổng quan cho BIND: /var/named/ 47 5.1. Cài đặt gói BIND • Kiểm tra gói BIND đã được cài đặt chưa 48 5.2. Cấu hình file named.conf 49 5.3. Tạo phân giải thuận 50 5.4. Tạo phân giải nghịch 51 5.5. Thiết lập bản ghi DNS cho spf • Kiểm tra 52 5.6. Thiết lập bảng ghi DNS cho DKIM • Copy thông tin trên vào file /var/named/ahky.thuan ta được 53 5.6. Thiết lập bảng ghi DNS cho DKIM 54 5.6. Thiết lập bảng ghi DNS cho DKIM • Sau khi thêm DKIM record, ta restart service named và kiểm tra xem nó có hoạt động hay không • Nếu pass là đã hoạt động 55 6. Tiến hành gửi nhận mail • iRedMail hỗ trợ mặc định gửi nhận mail thông qua webmail. • Ta cũng có thể sử dụng các ứng dụng như thunderbird hoặc outlook express để gửi nhận mail. 56 6.1 Gửi nhận mail thông qua webmail • Đầu tiên tạo hai tài khoản mail để tiến hành gửi nhận. 57 6.1 Gửi nhận mail thông qua webmail • Các tài khoản mail có thể giống domain hoặc không ví dụ: 1212538@mail.ahky.com và 1112140@g8.ahky.com • Nhưng phải chung domain cha là ahky.com 58 6.1 Gửi nhận mail thông qua webmail • Đăng nhập vào tài khoản để gửi mail. 59 Gửi mail 60 Nhận mail 61 6.2. Gửi nhận mail qua mạng internet • Đầu tiên muốn gửi nhận mail thông qua internet ta phải có một địa chỉ IP public và domain public. • Cấu hình sao cho domain trỏ về IP đó. • Có thể vào website godady.com hoặc godady.net để thuê tên miền. 62 6.2. Gửi nhận mail qua mạng internet • Ở đây tôi có tên miền corncob.biz trỏ về địa chỉ IP public là 128.199.145.174. • Có thể kiểm tra tên miền này có thật hay không bằng lệnh ping corncob.biz 63 Cấu hình của name server corncob.biz 64 6.2. Gửi nhận mail qua mạng internet • Tôi cài một máy centos có địa chỉ IP là 128.199.145.174 đề là iRedMail server. • Máy ảo của tôi là một VPS ( virtual private server ) • Truy cập digitalocean.com để tạo VPS. • Dùng ssh để điền khiển truy cập từ xa. • Ở đây tôi xài phần mềm BitviseSSH client. 65 6.2. Gửi nhận mail qua mạng internet 66 6.2. Gửi nhận mail qua mạng internet 67 6.2. Gửi nhận mail qua mạng internet • Trên máy ảo này cài iRedMail • Tạo các tài khoản ví dụ: 1212538@ahky.corncob.biz 1212565@ahky.corncob.biz 1112140@ahky.corncob.biz 68 6.2. Gửi nhận mail qua mạng internet 69 6.2. Gửi nhận mail qua mạng internet • Ở đây tôi gởi từ địa chỉ 1212538@ahky.corncob.biz tới địa chỉ vovany94@gmail.com 70 6.2. Gửi nhận mail qua mạng internet • Kiểm tra tại địa chỉ vovany94@gmail.com 71 6.2. Gửi nhận mail qua mạng internet • Gửi lại từ gmail vào iredmail 72 6.2. Gửi nhận mail qua mạng internet • Kiểm tra lại tại địa chỉ 1212538@ahky.corncob.biz 73 6.2. Gửi nhận mail qua mạng internet • Ta có thể xem quá trình gửi nhận mail ở file maillog • #vi /var/log/maillog • Ví dụ xem toàn bộ 1 quá trình gửi mail như hình sau: 74 6.2. Gửi nhận mail qua mạng internet • Một số lỗi khi gửi nhận mail qua internet: • Lỗi hay gặp nhất là clamav chặn thư. • Khi gửi mail từ địa chỉ 1212538@ahky.corncob.biz tới địa chỉ vovany94@gmail.com • Đầu tiên mail gửi lên iRedMail server tại đây clamav sẽ quét virut, nếu kiểm tra không có vấn đề gì thì sẽ gửi đến mail server của google. 75 6.2. Gửi nhận mail qua mạng internet • • • • • • Để cho chắc ăn ta gõ một số lệnh như sau # /etc/init.d/clamavd stop # /etc/init.d/amavisd stop # /etc/init.d/spamassassind stop # /etc/init.d/postfix restart Các lệnh trên có tác dụng tắt toàn bộ các chương trình quét virus cũng như spam mail tích hợp sẵn trong iRedMail server của chúng ta. • Có thể tìm hiểu thêm bằng cách search keyword : “why iredmail mark as spam” hoặc “turn off clamav in iredmail server” 76 6.3. Gửi nhận mail qua phần mềm trung gian (thunderbird) • Tạo các tài khoản mail 77 6.3. Gửi nhận mail qua phần mềm trung gian (thunderbird) • Các tài khoản sau khi tạo 78 6.3. Gửi nhận mail qua phần mềm trung gian (thunderbird) • Gửi mail 79 6.3. Gửi nhận mail qua phần mềm trung gian (thunderbird) Kiểm tra mail khi đã nhận được 80 6.3. Gửi nhận mail qua phần mềm trung gian (thunderbird) • và 81 6.3. Gửi nhận mail qua phần mềm trung gian (thunderbird) • Chú ý • Khi gửi mail thì dùng giao thức SMTP • Khi nhận mail thì dùng giao thức POP3 hoặc IMAP4 • POP3 nhận toàn bộ mail từ server về client. • IMAP4 chỉ liệt kê ra danh sách các mail, khi nào cần đọc mới nhận thư từ server về. 82 7. Link videos demo về toàn bộ hệ thống • Các bước chuẩn bị và cài đặt iRedMail • https://www.youtube.com/watch?v=c_Wk8hR v7Ak • Cấu hình DNS – SPF – DKIM cho iRedMail • https://www.youtube.com/watch?v=OfvbWH76Ds 83 7. Link videos demo về toàn bộ hệ thống • Gửi nhận mail cục bộ • https://www.youtube.com/watch?v=L6gwyOmG n08 • Gửi nhận mail qua internet • https://www.youtube.com/watch?v=lLSnfSZSfv4 • Gửi nhận mail qua phần mềm trung gian • https://www.youtube.com/watch?v=Z041ieHZjhc 84 HẾT 85 [...]... với địa chỉ mail mong muốn 15 3.2 Cài đặt iRedMail • Cấu hình IP tĩnh cho máy 16 3.2 Cài đặt iRedMail • Kiểm tra địa chỉ IP sau khi cài đặt 17 3.2 Cài đặt iRedMail • Cài đặt • Đầu tiên ta download bản mới nhất iRedMail về server và tiến hành cài đặt 18 3.2 Cài đặt iRedMail • Cửa sổ chào mừng của iRedMail Ta nhấn Yes để tiếp tục cài đặt 19 3.2 Cài đặt iRedMail • Cài đặt thư mục lưu trữ mailbox của người... 4.1 Quản trị iRedMail 31 4.1 Quản trị iRedMail • Đăng nhập tài khoản quản trị: postmaster@ahky.com Mật khẩu tài khoản quản trị: …… 32 4.1 Quản trị iRedMail • Sau khi đăng nhập hiển thị giao diện quản trị mail 33 4.1 Quản trị iRedMail • Tạo tên miền mới – Chọn tab Domains and Accounts – Ahky.com: tên miền tạo ra khi cài đặt – Add domain: Khi muốn tạo thêm 1 tên miền mới 34 4.1 Quản trị iRedMail • Nhập...2.3 Chiều nhận mail • Port nhận mail: – POP3 – port 110 – Secure POP3(SSL-POP) – port 995 – IMAP – port 143 – Secure IMAP(IMAP4-SSL) – port 585 – IMAP4 over SSL(IMAPS) – port 993 11 3 iRedMail 12 3.1 iRedMail là gì? • iRedMail là 1 đoạn mã shell có thể giúp bạn triển khai hệ thống giải pháp Mail Server mã nguồn mở 1 cách nhanh chóng, chỉ trong vòng 2 phút... dùng, để mặc định và nhấn Next 20 3.2 Cài đặt iRedMail • iRedMail cung cấp 3 phương pháp lưu trữ dữ liệu người dùng gồm OpenLDAP, MySQL, PostgreSQL Chọn MySQL và nhấn Next 21 3.2 Cài đặt iRedMail • Nhập vào mật khẩu root của MySQL(mật khẩu root này không phải là mật khẩu của tài khoản root hệ thống) 22 3.2 Cài đặt iRedMail • Nhập vào tên domain của mail server. (để có thể sử dụng được tên miền này ta... đặt iRedMail • Hệ thống sẽ tạo một tài khoản postmaster(tài khoản quản trị mail) , ta nhập mật khẩu cho tài khoản này 24 3.2 Cài đặt iRedMail • Chọn các chương trình dùng để quản lý iRedMail nên để mặc định và nhấn Next để hệ thống tiến hành cài đặt 25 3.2 Cài đặt iRedMail • Bạn chọn Y và nhấn Enter Hệ thống sẽ tiến hành download các component mà bạn đã chọn lựa để cài đặt từ internet 26 3.2 Cài đặt iRedMail. .. lựa để cài đặt từ internet 26 3.2 Cài đặt iRedMail • Cài đặt xong hệ thống yêu cầu ta cấu hình Firewall rule, MySQL, ClamAV Ta chọn như hướng dẫn sau 27 3.2 Cài đặt iRedMail • Sau khi Update dữ liệu của ClamAV ta hoàn tất việc cài đặt iRedMail 28 4 Quản trị và sử dụng iRedMail 29 4.1 Quản trị iRedMail • iRedAdmin Open Source Edition là trang quản trị dựa trên giao diện đồ họa web Bạn có thể thêm, xóa,... sử dụng trong iRedMail được cung cấp chính thức bởi Linux, điều này có nghĩa rằng người dùng iRedMail sẽ nhận được sự hỗ trợ về phần mềm và công nghệ theo vòng đời của sản phẩm • Hỗ trợ OpenLDAP và MySQL để lưu trữ domain và user ảo 13 3.2 Cài đặt iRedMail • Chuẩn bị • Trước khi cài iRedMail cần kiểm tra tên máy trong hệ thống Để xem hostname hiện tại của máy dùng lệnh 14 3.2 Cài đặt iRedMail • Đổi tên... 1 tên miền mới 34 4.1 Quản trị iRedMail • Nhập tên miền muốn tạo mới Ở đây tôi tạo tên miền mới: khtn.com Chọn Save changes Sau khi Save changes báo hoàn thành quá trình tạo tên miền 35 4.1 Quản trị iRedMail • Thêm tài khoản quản trị – Chọn tab Admins – Tài khoản postmaster@ahky là tài khoản quản trị mặc định khi cài được tạo ra • Chọn Add admin 36