ผลต่างระหว่างรุ่นของ "การศึกษาเรื่อง EAI/en"
Photchanan (คุย | มีส่วนร่วม) (สร้างหน้าด้วย "<languages/> == What is EAI == *RFC Definition *How to allow EAI - our solution ==Internationalized Email Installation == *Base Installation...") |
Photchanan (คุย | มีส่วนร่วม) (สร้างหน้าด้วย " More Settings-> Outgoing Server -> Checked - My Outgoing server(SMTP) requires authentication More Settings-> Advance -> POP3 110, SMTP 25 , Use the fo...") |
||
แถว 6: | แถว 6: | ||
+ | <div class="mw-translate-fuzzy"> | ||
==Internationalized Email Installation == | ==Internationalized Email Installation == | ||
*[[Base Installation]] - Supports SMTPUTF8, SMTP Auth (unencrypted & TLS), imap/pop3 (unencrypted &TLS) | *[[Base Installation]] - Supports SMTPUTF8, SMTP Auth (unencrypted & TLS), imap/pop3 (unencrypted &TLS) | ||
แถว 11: | แถว 12: | ||
*[[Upgrade installation 2]]- Configure Postfix to modify sender's email address when sending to Non-EAI enabled mail server using Pipe Filter | *[[Upgrade installation 2]]- Configure Postfix to modify sender's email address when sending to Non-EAI enabled mail server using Pipe Filter | ||
*[[Upgrade installation 3]] - Multiple virtual domain support | *[[Upgrade installation 3]] - Multiple virtual domain support | ||
+ | </div> | ||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | === การติดตั้งขั้นพื้นฐาน === | ||
+ | รองรับ SMTPUTF8, SMTP Auth (unencrypted & TLS), imap/pop3 (unencrypted &TLS) | ||
+ | *[[ฉบับย่อ - การติดตั้งแบบรวดเร็ว]] (วิธีนี้ไม่สามารถใช้ได้กับชื่อผู้ใช้ที่เป็น NON-ASCII , สามารถใช้ alias แทนได้) | ||
+ | *[[ฉบับเต็ม - อธิบายอย่างละเอียดทีละขั้นตอน]] ('''แนะนำ''') | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | *ตัวอย่างไฟล์ตั้งค่า [http://tool.ts8.se.in.th/wikieai_th/files/vclass.info_main.cf] | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ==== Centos ==== | ||
+ | *[[Centos - การติดตั้งขั้นพื้นฐาน]] | ||
+ | *[[Centos - คำถามที่พบบ่อย]] | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ==== Freebsd ==== | ||
+ | *[[Freesbsd - ฉบับเต็ม - อธิบายอย่างละเอียดทีละขั้นตอน]] | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ===พัฒนาการติดตั้งครั้งที่ 1=== | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | Configure Postfix to automatically add SMTPUTF8 when sending to EAI Address using Pipe Filter | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | คุณจะต้องมี Mail server ที่ทำการติดตั้งขั้นพื้นฐานไว้แล้ว | ||
+ | </div> | ||
+ | |||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ติดตั้ง php5-cli, script จะใช้ PHP | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo apt-get install php5-cli | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | get ไฟล์ script แล้ววางไว้ใน /etc/postfix | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | cd /etc/postfix | ||
+ | sudo wget https://raw.githubusercontent.com/padillareyj/eaifilter/master/eai-add-smtputf8.php | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ปรับปรุง ownership และ permission | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | cd /etc/postfix | ||
+ | sudo chown root:root eai-add-smtputf8.php | ||
+ | sudo chmod +x eai-add-smtputf8.php | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ปรับปรุง master.cf ของคุณ ซึงจะกรองจดหมายขาเข้าที่มาจากพอร์ต 25 และ ส่งกลับไปยังพอร์ต 10025 (สามารถเข้าถึงจากภายในเท่านั้น) มันจะแนบท้าย SMPTUTF8 ใน MAIL FROM เมื่อคำสั่งถูกดำเนินการ MAIL FROM: <MAIL> SMPTUTF8 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | smtp inet n - - - - smtpd -o content_filter=eaifilter -o receive_override_options=no_header_body_checks | ||
+ | eaifilter unix - n n - - pipe flags=RXhu user=nobody argv=/etc/postfix/eai-add-smtputf8.php -f ${sender} -d ${recipient} | ||
+ | 127.0.0.1:10025 inet n - n - - smtpd | ||
+ | -o content_filter= | ||
+ | -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks,no_milters | ||
+ | -o smtpd_helo_required=no | ||
+ | -o smtpd_helo_restrictions= | ||
+ | -o smtpd_data_restrictions= | ||
+ | -o smtpd_client_restrictions= | ||
+ | -o smtpd_sender_restrictions= | ||
+ | -o smtpd_recipient_restrictions=permit_mynetworks,reject | ||
+ | -o mynetworks_style=host | ||
+ | -o in_flow_delay=0 | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ปรับปรุง main.cf | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | content_filter =eaifilter:[127.0.0.1]:10025 | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ===พัฒนาการติดตั้งครั้งที่ 2=== | ||
+ | Configure Postfix to modify sender's email address when sending to Non-EAI enabled mail server using Pipe Filter | ||
+ | คุณจะต้องมี Mail server ที่ทำการติดตั้งขั้นพื้นฐานและไม่ได้ติดตั้งการพัฒนาการติตตั้งครั้งที่ 1 | ||
+ | </div> | ||
+ | |||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ติดตั้ง php5-cli, script จะใช้ PHP | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo apt-get install php5-cli | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | get ไฟล์ script แล้ววางไว้ใน /etc/postfix | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | https://github.com/padillareyj/eaifilter/blob/master/eaifilter.php | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ตัวกรองนี้จะตรวจสอบ mail server ขาออก ว่า server รองรับ SMTPUTF8 หรือไม่ แลัวมันจะเขียนที่อยู่ของผู้ส่งในรูปแบบ non-ascii บนพื้นฐานของ alias mapping ทับลงไป | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | smtp inet n - - - - smtpd -o content_filter=eaifilter -o receive_override_options=no_header_body_checks | ||
+ | eaifilter unix - n n - - pipe flags=RXhu user=nobody argv=/etc/postfix/eaifilter.php -f ${sender} -d ${recipient} | ||
+ | 127.0.0.1:10025 inet n - n - - smtpd | ||
+ | -o content_filter= | ||
+ | -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks,no_milters | ||
+ | -o smtpd_helo_required=no | ||
+ | -o smtpd_helo_restrictions= | ||
+ | -o smtpd_data_restrictions= | ||
+ | -o smtpd_client_restrictions= | ||
+ | -o smtpd_sender_restrictions= | ||
+ | -o smtpd_recipient_restrictions=permit_mynetworks,reject | ||
+ | -o mynetworks_style=host | ||
+ | -o in_flow_delay=0 | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ปรับปรุง main.cf | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | content_filter =eaifilter:[127.0.0.1]:10025 | ||
+ | </syntaxhighlight> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ===พัฒนาการติดตั้งครั้งที่ 3=== | ||
+ | Multiple virtual domain support | ||
+ | ข้อมูล: | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | * คุณจำเป็นต้องมีการติดตั้งขั้นพื้นฐาน | ||
+ | * MySQL ไม่สามารถทำงานกับ Virtual Domains ได้ domain และ user ส่งคืนข้อความที่อ่านไม่ออกในการตรวจสอบการ login | ||
+ | * ใช้ Virtual Alias Domain แทน (ใช้งานได้) | ||
+ | * วิธีนี้น่าจะใช้งานได้กับ Ubuntu, Centos และ Freebsd | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo postconf "virtual_alias_domains = yourdomain1.com yourdomain2.com yourdomain3.com youretc.com โดเมนคุณ.ไทย" | ||
+ | sudo postconf "virtual_alias_maps = hash:/etc/postfix/virtual" | ||
+ | </syntaxhighlight > | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | สร้าง หรือ แก้ไขไฟล์ '''/etc/postfix/virtual''' | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | yourdomain1.com DOMAIN | ||
+ | someuser@yourdomain1.com user1 | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | yourdomain2.com DOMAIN | ||
+ | anotheruser@yourdomain2.com user2 | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | yourdomain3.com DOMAIN | ||
+ | admin@yourdomain3.com user3 | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | youretc.com DOMAIN | ||
+ | admin@youretc.com user1 | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | โดเมนคุณ.ไทย DOMAIN | ||
+ | แอดมิน@โดเมนคุณ.ไทย user1 | ||
+ | </syntaxhighlight > | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | ปรับปรุงการเปลี่ยนแปลง | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo postmap /etc/postfix/virtual | ||
+ | </syntaxhighlight > | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | <!-- | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
+ | *[[การติดตั้งขั้นพื้นฐาน]] - รองรับ SMTPUTF8, SMTP Auth (unencrypted & TLS), imap/pop3 (unencrypted &TLS) | ||
+ | *[[พัฒนาการติดตั้งครั้งที่ 1]] - ตั้งค่า Postfix ให้เพิ่ม SMTPUTF8 อัตโนมัติเมื่อทำการส่ง EAI Address โดยใช้ Pipe Filter | ||
+ | *[[พัฒนาการติดตั้งครั้งที่ 2]] - ตั้งค่า Postfix ให้แก้ไข ที่อยู่ email ของผู้ส่งเมื่อทำการส่งไปยัง mail server ที่ไม่ได้เปิดใช้งาน EAI โดยใช้ Pipe Filter | ||
+ | *[[พัฒนาการติดตั้งครั้งที่ 3]] - รองรับ Multiple virtual domain | ||
+ | --> | ||
+ | </div> | ||
{| class="wikitable" | {| class="wikitable" | ||
แถว 52: | แถว 258: | ||
* [https://github.com/padillareyj/eaifilter EAI Filter Scripts] | * [https://github.com/padillareyj/eaifilter EAI Filter Scripts] | ||
+ | <div class="mw-translate-fuzzy"> | ||
+ | [[Category: EAI]] | ||
+ | </div> | ||
+ | |||
+ | <div lang="th" dir="ltr" class="mw-content-ltr"> | ||
[[Category: EAI]] | [[Category: EAI]] | ||
+ | </div> |
รุ่นแก้ไขเมื่อ 17:26, 12 กรกฎาคม 2564
เนื้อหา
What is EAI
Internationalized Email Installation
- Base Installation - Supports SMTPUTF8, SMTP Auth (unencrypted & TLS), imap/pop3 (unencrypted &TLS)
- Upgrade installation 1 - Configure Postfix to automatically add SMTPUTF8 when sending to EAI Address using Pipe Filter
- Upgrade installation 2- Configure Postfix to modify sender's email address when sending to Non-EAI enabled mail server using Pipe Filter
- Upgrade installation 3 - Multiple virtual domain support
การติดตั้งขั้นพื้นฐาน
รองรับ SMTPUTF8, SMTP Auth (unencrypted & TLS), imap/pop3 (unencrypted &TLS)
- ฉบับย่อ - การติดตั้งแบบรวดเร็ว (วิธีนี้ไม่สามารถใช้ได้กับชื่อผู้ใช้ที่เป็น NON-ASCII , สามารถใช้ alias แทนได้)
- ฉบับเต็ม - อธิบายอย่างละเอียดทีละขั้นตอน (แนะนำ)
- ตัวอย่างไฟล์ตั้งค่า [1]
พัฒนาการติดตั้งครั้งที่ 1
Configure Postfix to automatically add SMTPUTF8 when sending to EAI Address using Pipe Filter
คุณจะต้องมี Mail server ที่ทำการติดตั้งขั้นพื้นฐานไว้แล้ว
ติดตั้ง php5-cli, script จะใช้ PHP
sudo apt-get install php5-cli
get ไฟล์ script แล้ววางไว้ใน /etc/postfix
cd /etc/postfix
sudo wget https://raw.githubusercontent.com/padillareyj/eaifilter/master/eai-add-smtputf8.php
ปรับปรุง ownership และ permission
cd /etc/postfix
sudo chown root:root eai-add-smtputf8.php
sudo chmod +x eai-add-smtputf8.php
ปรับปรุง master.cf ของคุณ ซึงจะกรองจดหมายขาเข้าที่มาจากพอร์ต 25 และ ส่งกลับไปยังพอร์ต 10025 (สามารถเข้าถึงจากภายในเท่านั้น) มันจะแนบท้าย SMPTUTF8 ใน MAIL FROM เมื่อคำสั่งถูกดำเนินการ MAIL FROM: <MAIL> SMPTUTF8
smtp inet n - - - - smtpd -o content_filter=eaifilter -o receive_override_options=no_header_body_checks
eaifilter unix - n n - - pipe flags=RXhu user=nobody argv=/etc/postfix/eai-add-smtputf8.php -f ${sender} -d ${recipient}
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks,no_milters
-o smtpd_helo_required=no
-o smtpd_helo_restrictions=
-o smtpd_data_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks_style=host
-o in_flow_delay=0
ปรับปรุง main.cf
content_filter =eaifilter:[127.0.0.1]:10025
พัฒนาการติดตั้งครั้งที่ 2
Configure Postfix to modify sender's email address when sending to Non-EAI enabled mail server using Pipe Filter คุณจะต้องมี Mail server ที่ทำการติดตั้งขั้นพื้นฐานและไม่ได้ติดตั้งการพัฒนาการติตตั้งครั้งที่ 1
ติดตั้ง php5-cli, script จะใช้ PHP
sudo apt-get install php5-cli
get ไฟล์ script แล้ววางไว้ใน /etc/postfix
https://github.com/padillareyj/eaifilter/blob/master/eaifilter.php
ตัวกรองนี้จะตรวจสอบ mail server ขาออก ว่า server รองรับ SMTPUTF8 หรือไม่ แลัวมันจะเขียนที่อยู่ของผู้ส่งในรูปแบบ non-ascii บนพื้นฐานของ alias mapping ทับลงไป
smtp inet n - - - - smtpd -o content_filter=eaifilter -o receive_override_options=no_header_body_checks
eaifilter unix - n n - - pipe flags=RXhu user=nobody argv=/etc/postfix/eaifilter.php -f ${sender} -d ${recipient}
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks,no_milters
-o smtpd_helo_required=no
-o smtpd_helo_restrictions=
-o smtpd_data_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks_style=host
-o in_flow_delay=0
ปรับปรุง main.cf
content_filter =eaifilter:[127.0.0.1]:10025
พัฒนาการติดตั้งครั้งที่ 3
Multiple virtual domain support ข้อมูล:
- คุณจำเป็นต้องมีการติดตั้งขั้นพื้นฐาน
- MySQL ไม่สามารถทำงานกับ Virtual Domains ได้ domain และ user ส่งคืนข้อความที่อ่านไม่ออกในการตรวจสอบการ login
- ใช้ Virtual Alias Domain แทน (ใช้งานได้)
- วิธีนี้น่าจะใช้งานได้กับ Ubuntu, Centos และ Freebsd
sudo postconf "virtual_alias_domains = yourdomain1.com yourdomain2.com yourdomain3.com youretc.com โดเมนคุณ.ไทย"
sudo postconf "virtual_alias_maps = hash:/etc/postfix/virtual"
สร้าง หรือ แก้ไขไฟล์ /etc/postfix/virtual
yourdomain1.com DOMAIN
someuser@yourdomain1.com user1
</div>
<div lang="th" dir="ltr" class="mw-content-ltr">
yourdomain2.com DOMAIN
anotheruser@yourdomain2.com user2
</div>
<div lang="th" dir="ltr" class="mw-content-ltr">
yourdomain3.com DOMAIN
admin@yourdomain3.com user3
</div>
<div lang="th" dir="ltr" class="mw-content-ltr">
youretc.com DOMAIN
admin@youretc.com user1
</div>
<div lang="th" dir="ltr" class="mw-content-ltr">
โดเมนคุณ.ไทย DOMAIN
แอดมิน@โดเมนคุณ.ไทย user1
ปรับปรุงการเปลี่ยนแปลง
sudo postmap /etc/postfix/virtual
Installation | LOCAL EAI | SEND TO NON-EAI AS EAI | RECEIVE EAI MAIL | REPLY TO EAI WITH NON-EAI MAIL CLIENT | REPLY TO EAI BY NON-EAI WEBMAIL | REPLY TO EAI BY MODIFIED WEBMAIL | RECEIVE/REPLY/SEND using Gmail as a Client |
---|---|---|---|---|---|---|---|
Base Installation | NO | NO | YES | NO | NO | YES | YES |
Upgrade installation 1 | NO | NO | YES | YES * | YES* | YES | YES |
Upgrade installation 2 | YES | YES | YES | YES* | YES* | YES | YES |
Upgrade installation 3 | - | - | - | - | YES | YES |
*This will work only if the Mail client will allow a NON-ASCII character or the NON-ASCII character email address will not become garbled.
List of EAI Enabled Mail Client
Outlook 2016 - (Base Installation)Send to EAI as NON EAI (address is copy pasted) - Yes - using Coremail Server as EAI (Receiving) (Base Installation)Receive from EAI as NON EAI - Yes - using Coremail Server as EAI (Receiving) (Base Installation)Reply From EAI as NON EAI - No (The EAI email address is garbled when received) using Coremail Server (Receiving)
List of EAI Enabled Webmail
As the time of writing, there are no Webmail that works.
NONE
NONE
Configuring Gmail to work as a EAI Client
Gmail is the best option to use as a Client.
Configuring Outlook 2016
More Settings-> Outgoing Server -> Checked - My Outgoing server(SMTP) requires authentication More Settings-> Advance -> POP3 110, SMTP 25 , Use the following type of encrypted connection TLS