การเชื่อมต่อระหว่าง Server กับ Client ผ่าน FTP

การเชื่อมต่อระหว่าง Server กับ Client เพื่อรับส่งแฟ้มจำนวนมากได้อย่างรวดเร็ว นักพัฒนามักเลือกใช้บริการ FTP และโปรแกรมที่ได้รับความนิยม คือ Filezilla ซึ่งโปรแกรม Filezilla ติดตั้งมาพร้อมกับโปรแกรม XAMPP ทำให้สามารถเปิดบริการ FTP Server ได้โดยง่าย ในฝั่งเครื่อง Server เมื่อเปิดส่วนของ Admin ต้องเริ่มต้นจากการสร้าง user และ password พร้อมกับกำหนด home directory และ permission เมื่อสร้างเสร็จแล้ว ก็ให้เครื่อง Client เชื่อมต่อเข้าไปผ่าน user ที่สร้างใหม่ โดยโปรแกรมที่ใช้ติดต่อเข้าไปจากเครื่อง Client มีหลายวิธีให้เลือกใช้ อาจเป็น Filezilla client หรือ FTP program ที่ทำงานบน android , linux, ios หรือ dos แล้วกิจกรรมการ put และ get ก็เกิดขึ้นหลังจากการ connect ได้สำเร็จแล้ว

ขั้นตอนการใช้งาน Filezilla บน Xampp 7.1.7

  1. Download xampp จาก apachefriends.org
    xampp-win32-7.1.7-0-VC14-installer.exe
  2. รุ่นนี้มีโปรแกรมมาเยอะ
    ทั้ง Server : Apache, MySQL, FileZilla FTP Server, Mercury Mail Server, Tomcat
    ทั้ง Program Languages : PHP, Perl
    ทั้ง Script : phpMyadmin, Webalizer, Fake Sendmail
    แล้วกำหนดห้องคือ c:\xampp71 เพราะก่อนหน้านี้ลงแบบ unzip ในห้อง c:\xampp56 ไว้แล้ว
  3. เปิด XAMPP Control Panel (C:\xampp\xampp-control.exe)
    แล้ว Start : FileZilla ทำให้เปิด port 21 (ftp) และ port 14147 (admin)
  4. คลิ๊ก Admin ของ FileZilla ใน XAMPP Control Panel เข้า admin ผ่าน port 14147
    จะเปิดโปรแกรม Filezilla Server สำหรับ Admin เดิมไม่ได้กำหนด Admin Password ไว้ ก็จะเข้าได้
  5. ถ้าต้องการให้ปลอดภัย ในการเข้า Admin หรือเข้าผ่าน Remote ได้
    เข้า Menu bar, Edit, Settings, Admin Interface setting
    คลิ๊ก Change admin password
    “Minimum password length is 6 characters. Leave empty to remove password. A password is required for remote administrationn to work.”
  6. สร้าง user ให้เค้าได้ใช้งาน
    เข้า Menu bar, Edit, Users, พบ Add Remove Rename Copy
    new user = “admin”
    General Page : Check – Enable account
    General Page : Check – Password = “p”
    Shared folders Page : Add – c:\xampp71\htdocs [Read, Write]
  7. Window+R, cmd จะพบกับ DOS prompt
    C:> ipconfig มองหาตัวเลขหลัง IPv4 Address
    C:> ftp 127.0.0.1
    user: admin
    password: p
    ftp> ?
    ftp> ls
    ftp> bye
  8. Download Filezilla client : https://filezilla-project.org
    แล้วก็ใช้ติดต่อกับ Filezilla server ที่มีแล้ว

http://www.thaiall.com/learn/useftp.htm

#เล่าสู่กันฟัง 63-032 ฐานข้อมูลต่างรุ่น

ผู้ให้บริการแต่ละราย ให้บริการเครื่องโฮส
ที่มีภาษา และฐานข้อมูลต่างรุ่นกันไป
บางเครื่องมีภาษาให้เลือกเปลี่ยนได้ง่าย
บางเครื่องมีฐานให้เลือกติดตั้ง
แต่เปลี่ยนหลังติดตั้งไปมาไม่ได้

ภาพตัวอย่างพูดถึงรุ่นของ mysql
ระหว่าง 5.5.30 และ 5.6
ที่บางระบบกำหนดฐาน รุ่น 5 ไว้ให้
ปัจจุบันพัฒนาไปถึง Mariadb 10.5 กับ Mysql 8
แต่เครื่องที่ผมมีใช้ 5.0.12 กับ php7
ที่ http://www.thaiall.com/moodle

เครื่องที่ใช้คือแชร์เครื่อง
ไม่ใช่เครื่องที่ติดตั้ง xampp หรือ appserv

มีโปรแกรมเก่า wp ที่ถูกบังคับเปลี่ยน
ให้ใช้ภาษารุ่น 7 ทำงานกับฐานรุ่น 5 ได้
แต่กับ moodle ไม่ได้ออกแบบให้ทำกับ
ฐานรุ่น 5 ต้องแก้ไข code
ทั้ง deprecated และ constructor
แล้วก็ไปเล่าเรื่องการเปลี่ยน script
ที่ http://www.thaiall.com/php/php7.htm

ถ้ามีโอกาสก็จะเล่าเรื่อง glossary
บน moodle
ใน http://www.thaiall.com/e-learning

พูดคุยแลกเปลี่ยนใน github

อ้างอิง
https://en.m.wikipedia.org/wiki/MySQL

https://en.m.wikipedia.org/wiki/MariaDB

https://www.000webhost.com/forum/t/mysql-version-with-pro-and-free-hosting/61652

ทดสอบการทำงานของเครื่องบริการ กับเครื่องลูก

การเชื่อมต่อเข้ามาพร้อมกัน 10 connection
การเชื่อมต่อเข้ามาพร้อมกัน 10 connection

ที่มา ที่ไป
เตรียมสอนนักศึกษาเรื่องศักยภาพของเครื่องบริการ
ไม่ได้อยู่ที่ RAM อย่างเดียว ยังมีรายละเอียดอีกมาก
แม้เครื่องจะอยู่ใน Cloud ก็ยังสุ่มเสี่ยงต่อการเดี้ยงกลางอากาศได้เช่นกัน
เพราะเวลาเช่าเครื่องบริการใน Cloud ก็ต้องกำหนดว่าจะจ่ายให้กับอะไรอยู่ดี

การเชื่อมต่อเข้ามา 1 connection ก็ยังรับไหว
การเชื่อมต่อเข้ามา 1 connection ก็ยังรับไหว

การทดสอบเครื่องที่ทำงาน
ทดลองใช้เครื่องหนึ่งร้องขอบริการจากอีกเครื่องหนึ่ง
ในที่นี้ desktop2 คือ เครื่องบริการเว็บและอีเมล
ส่วนเครื่อง notebook คือ เครื่องลูกที่ส่ง request ไปยังเครื่องบริการ
ด้วยการเปิดเว็บเพจเดียวกันพร้อม ๆ กัน 10 iframe ใน 1 หน้าต่าง
แต่ละ iframe เรียกไปยัง url แบบส่งค่า get ที่แตกต่าง
และ url คือ php ที่เรียกใช้ smtp ก็จะ load เครื่องบริการเกือบ 50 Kbps
โปรแกรมที่ monitor ใช้ tcpview for windows ซึ่ง download ได้ฟรี
จาก https://technet.microsoft.com/en-us/library/bb897437.aspx
และใช้ task manager ดู performance ของ ethernet ว่าขึ้นลงอย่างไร
เมื่อเครื่อง notebook ส่งคำขอใช้บริการไปยัง desktop2
เครื่องบริการทดสอบเปิดบริการด้วย xampp เฉพาะส่วนของ apache
ถ้าเปิด mercury ก็คงจะทำให้เกิดภาระกับเครื่อง desktop2 ขึ้นอีกเยอะ

ในขณะที่เครื่องลูกยังไม่ได้เชื่อมต่อเข้ามาผ่าน port 80
ในขณะที่เครื่องลูกยังไม่ได้เชื่อมต่อเข้ามาผ่าน port 80

สรุปผลการทดสอบเครื่องที่ทำงาน
เครื่อง desktop2 เป็นเพียงเครื่อง PC ที่มีทรัพยากรต่ำ
และ Bandwidth ต่ำ รองรับการ download ได้ไม่มาก
และไม่ได้ออกแบบให้ทำงานกับ Cache server : Static file แต่อย่างใด
ถ้ามี request เข้ามาสัก 20 – 30 คน พร้อม ๆ กัน
เครื่องนี้ก็คงจะรองรับการเชื่อมต่อไม่ไหวเป็นแน่ เพราะคอขวดเยอะครับ

ปั่นเพื่อแม่ (Bike for mom) ได้รับความสนใจเกินกว่าความคาดหมายจนล่มในช่วงแรก

ปั่นเพื่อแม่ (Bike for mom) ได้รับความสนใจเกินกว่าความคาดหมายจนล่มในช่วงแรก
ปั่นเพื่อแม่ (Bike for mom) ได้รับความสนใจเกินกว่าความคาดหมายจนล่มในช่วงแรก

ข้อความจาก thaibike.net ว่า
ผู้สนใจร่วมเป็นหนึ่งในเหตุการณ์ประวัติศาสตร์ “BIKE FOR MOM ปั่นเพื่อแม่
เพียง 15 นาทีมีผู้สนใจเข้าร่วมลงทะเบียนเป็นจำนวนมาก
ส่งผลให้เว็บไซต์มีปัญหาขัดข้อง และมีการเพิ่มเครื่องบริการอีกหลายตัวเพื่อแก้ปัญหา
ประชาชนที่สนใจเข้าร่วมกิจกรรม ในกรุงเทพ เต็มจำนวนแล้ว 40,000 คน
เช็คที่เหลือแต่ละจังหวัด ได้ที่ศาลากลางจังหวัด

https://www.youtube.com/watch?v=UDnLVEanwnM

ซึ่งผมก็จะร่วมกิจกรรมที่ลำปางด้วย ได้เข้าเว็บไซต์ http://bikemom2015.moi.go.th
หรือ http://www.bikeformom2015.com
เมื่อวันที่ 1 กรกฎาคม 2558 พบว่าหลังเปิดระบบให้ลงทะเบียนไม่กี่นาที ระบบก็ล่ม ลงทะเบียนไม่ได้
แต่ปัจจุบันลงทะเบียนได้แล้ว และเปิดไปถึง 9 สิงหาคม 2558 ปั่นร่วมกันอาทิตย์ที่ 16 สิงหาคม 2558
http://www.matichon.co.th/news_detail.php?newsid=1435733620
แล้ววันแรกพบภาพที่คุณ krisda ถ่ายจากทีวีว่าออกข่าวช่อง 3 ด้วย
โพสต์ในกลุ่ม “ลำปาง นครแห่งจักรยาน” ซึ่งการลงทะเบียนออนไลน์เป็นเพียงช่องทางหนึ่ง
อีกช่องทาง คือ การไปลงทะเบียนที่ศาลากลาง ของแต่ละจังหวัด
https://www.facebook.com/groups/723715197696029/permalink/877043582363189/
ส่วน ข่าวช่อง 7 ก็มีที่ http://news.ch7.com/detail/130336/

ที่น่าสนใจว่าเว็บไซต์ล้มนั้น หรือทำไมเว็บไซต์ช้า หรือล้ม
มีคำอธิบายวิธีป้องกันที่ blog.levelup.in.th โดยคุณ heha ซึ่งสรุปไว้ดังนี้
http://blog.levelup.in.th/2011/01/31/why-do-your-website-slow-or-crash%E0%B8%97%E0%B8%B3%E0%B9%84%E0%B8%A1%E0%B9%80%E0%B8%A7%E0%B9%87%E0%B8%9A%E0%B9%84%E0%B8%8B%E0%B8%95%E0%B9%8C%E0%B8%82%E0%B8%AD%E0%B8%87%E0%B8%84%E0%B8%B8%E0%B8%93/
Database ตอบสนองช้า
1. Database ไม่ได้ใส่ index key ต้องทำกันตั้งแต่ตอนออกแบบระบบฐานข้อมูลกันเลย
2. จำนวนคิวรี่ (Query) ต่อหน้ามีมากเกินไป ก็เป็นการออกแบบเว็บเพจ
3. เว็บไซต์ไม่มีการใช้ระบบ Cache อันนี้เป็นเรื่องการ config server
อยากรู้ว่าใช้ระบบ cache รึเปล่าใช้บริการได้ที่
https://developers.google.com/speed/pagespeed/insights/
ลองตรวจของ จังหวัดในประเทศไทยดูครับ มักพบปัญหา Leverage browser caching
เว็บไซต์ของผมก็มีปัญหา ยังไม่ได้ตามไปแก้ไขเลย
4. Table ถูก Lock บ่อย เนื่องจาก update หรือ insert บ่อย
และเปลี่ยนเป็น innodb แทน myisam เพราะ innodb จะ lock เฉพาะ row
ไม่ lock ทั้ง table จึงช่วยเรื่องความเร็วได้มาก

CPU Server ขึ้นสูง
1. Script php มีปัญหา ไม่ optimize code ให้ดี ไม่ clear ตัวแปรเมื่อเลิกใช้
วนลูปที่ไม่จำเป็น หรือสร้าง object แล้วไม่ใช้ หรือเขียน algorithm ไม่ดี
2. process กิน memory มากไป
เช็คตัวแปรต่าง ๆ และตั้งค่าให้เหมาะสม สำหรับ web server มีให้ตั้งเยอะ

Server Crash บ่อย
1. ลด MaxClients ใน apache config ลง จำกัดจำนวนผู้ใช้ ป้องกัน server ล้ม
2. ตั้งเวลา reboot เครื่อง หากมีเหตุผลที่ตอบได้ว่าจำเป็น
3. เพิ่ม max_connections ของ mysql ก็น่าจะรองรับได้เพิ่มขึ้น
4. อัพเกรดทุกอย่างที่คิดว่าน้อย เช่น cpu, memory, harddisk หรือ bandwidth

เตรียมบทเรียนสอนนักศึกษาเรียนรู้การใช้งาน linux

linux server
linux server

การสอนนักศึกษาเข้าใช้ linux ผ่าน secure shell
เตรียมการ โดยผมเข้าในฐานะ root
1.1 สร้าง user name ของแต่ละคนผ่าน #useradd
1.2 เปลี่ยนรหัสผ่านให้กับแต่ละคน หลังสร้าง user name แล้ว
1.3 สร้าง folder ในห้อง html ตาม user name
1.4 กำหนด owner ให้แต่ละ folder ตาม user name
1.5 chmod เป็น 777 จะได้เข้าถึงผ่าน url ได้

การใช้งาน โดยนักศึกษาเข้าใช้ในฐานะ user
2.1 ให้นักศึกษา download putty และ filezilla
2.2 ให้เข้า linux ผ่าน putty และเรียนรู้การเข้าไปใช้งานระบบ
มีบทเรียนคำสั่งที่ http://www.thaiall.com/isinthai
2.3 สร้างแฟ้ม index.html ของตนเอง
มีแนวทางการเขียนเว็บเพจที่ http://www.thaiall.com/html
2.4 ส่งแฟ้ม index.html เข้า linux ผ่าน ftps
2.5 เรียก index.html ผ่าน url ของแต่ละคน

http://www.putty.org/ [putty.exe]
https://filezilla-project.org/download.php
http://downloads.sourceforge.net/project/filezilla/FileZilla_Client/3.7.3/FileZilla_3.7.3_win32-setup.exe

เปลี่ยนรุ่นของ PHP จาก 4 เป็น 5 แล้ว script ใช้งานไม่ได้

เล่าสู่กันฟัง เรื่องปัญหาการปรับเปลี่ยนรุ่นของ server

URL กับ REQUEST_URIURL กับ REQUEST_URI
URL กับ REQUEST_URI

เนื่องจาก script ที่ใช้เคย สามารถใช้งานได้ปกติ
แต่เกิดปัญหาหลัง upgrade server
ที่ต้องใช้ PHP version ใหม่ ก็พบว่า script เดิมใช้งานไม่ได้
ตรวจดูก็พบว่าค่าของระบบ _SERVER ที่เคยส่งให้กับ script ภาษา PHP
ไม่ยอมส่งค่าให้ตามปกติ คือ ไม่ส่งอะไรคืนมาเลย
ต้องแก้ไขโดยกำหนดการรับค่าจากระบบ เป็นค่าใหม่

เดิมรับค่า “URL” ก็ต้องเปลี่ยนเป็นรับค่า “REQUEST_URI”

ซึ่งเหตุการแบบนี้เกิดขึ้นได้ในปัจจุบัน และเกิดขึ้นอีกอย่างแน่นอนในอนาคต
เมื่อต้องมีการ upgrade server ในปีต่อ ๆ ไป

การตรวจรหัสผ่านใน ldap server

apache directory studio : ldap server & client
apache directory studio : ldap server & client

http://directory.apache.org/studio/

ได้รับโอกาสจากคุณหนึ่งให้หาวิธีการตรวจสอบรหัสผ่านกับ ldap server ด้วย php
ซึ่งรหัสผ่านในเครื่องบริการถูกเข้ารหัสแบบ {SHA} ซึ่งเป็นการเข้ารหัสทางเดียว แบบคงที่
การตรวจสอบทำโดยเข้ารหัสผ่านของเรา แล้วส่งไปเปรียบเทียบรหัสที่ถูกเข้ารหัสไว้ว่าตรงกันหรือไม่
หากใน shell ของ linux สามารถใช้ # slappasswd -h {SHA} -s mypassword
สร้างรหัสผ่านที่ได้รับการเข้ารหัส
แต่ถ้าเป็น PHP ต้องใช้ $e =  base64_encode( pack( “H*”, sha1(“mypassword”)));
ตัวอย่าง code นี้เข้าไป scan ใน directory ต่าง ๆ เพราะไม่ทราบว่า user นี้อยู่ในกลุ่มใด

// verify user & password in ldap server
$ldap = ldap_connect(“127.0.0.1”,389);
$b = ldap_bind($ldap,”uid=sombat”,”loveyou”) or die(“bind died”);
//
$arr = array(
“ou=LAMPANG,ou=STAFF,ou=TEAM_A”,
“ou=LAMPANG,ou=MANAGER,ou=TEAM_A”,
“ou=BANGKOK,ou=STAFF,ou=TEAM_A”,
“ou=BANGKOK,ou=MANAGER,ou=TEAM_A”,
“ou=LAMPANG,ou=STAFF,ou=TEAM_B”,
“ou=LAMPANG,ou=MANAGER,ou=TEAM_B”,
“ou=BANGKOK,ou=STAFF,ou=TEAM_B”,
“ou=BANGKOK,ou=MANAGER,ou=TEAM_B”);
foreach ($arr as $key => $value) {
$dn = ‘uid=’. $_REQUEST[“uid”] .’,’.$value.’,dc=abc,dc=com’;
$result = ldap_search($ldap, $dn,”(uid=*)”,array(“uid”,”userpassword”));
$rec = ldap_get_entries($ldap,$result);
$encoded = “{SHA}” . base64_encode( pack( “H*”, sha1($_REQUEST[“pass”]) ) );
if (isset($rec[0][“userpassword”][0]) && $rec[0][“userpassword”][0] == $encoded) {
echo “<meta http-equiv=’refresh’ content=’0;url=http://www.abc.com/pass.php’ />“;
exit;
}
}
ldap_unbind($ldap);
header(“location: http://www.abc.com/login.php“);

ldap server สำหรับ windows

ldap for windows
ldap for windows

22 พ.ย.55 จากการทดสอบติดตั้งโปรแกรม ldap for windows เพื่อจัดตั้ง ldap server
สำหรับให้บริการข้อมูล ก็พบว่า OpenLDAP for Windows 2.4.30 ติดตั้งง่าย
ในการติดตั้งก็กด next เป็นส่วนใหญ่ ยกเว้นรหัสผ่านของ user name ที่ผมได้กำหนดไป
โดยกำหนดให้เหมือนค่า default password ของ server ที่มีมาให้
เมื่อใช้คำสั่ง netstat -na ก็พบว่า port 389 ถูกเปิดรอให้บริการอยู่แล้ว
แล้วใช้ Apache Directory Studio
เชื่อมต่อไปที่ host:localhost port:389
แล้วเลือก No Authentication ก็เข้าได้แล้วครับ

ldap : apache directory studio
ldap : apache directory studio

การติดตั้ง Apache Directory Studio นั้น ต้องมี JRE อยู่ในเครื่อง
แล้วผมก็ copy ห้อง /jre ไปไว้ใน  C:\Program Files\Apache Directory Studio
แล้วสามารถเรียกใช้โปรแกรมได้ตามปกติ เพราะพัฒนาด้วยภาษา Java
ถ้าเข้าระบบแบบ No Authentication จะมองเห็นข้อมูลทั่วไป
แต่ไม่เห็นรหัสผ่าน ของสมาชิก จะต้องกำหนด User และ Password สำหรับแบบ Simple Authentication
จึงจะเข้าแก้ไขข้อมูลที่ถูกปิดไว้ ได้แก่ password ของ member นั่นเอง

ldap ou=xxx,dc=xxx,dc=xxx
อาทิ ldap ou=xxx,dc=xxx,dc=xxx

ldap ในเครื่องบริการ .. ไม่ตื่นอีกแล้ว

ldap fail
ldap fail

ขั้นตอนการตรวจสอบ และแก้ไข
ในกรณี ldap server ล้มหลังไฟฟ้าดับ แล้ว ldap server ก็ตอบว่า ldap unbind

1. พบว่าสั่ง start บริการ ไม่สำเร็จ
#/etc/init.d/ldap start
Checking configuration files for slapd: [FAILED]
2. แก้ไขปัญหาด้วยการ recover
#/usr/sbin/slapd_db_recover -v -h /var/lib/ldap/myname
ได้แฟ้ม log.0000000001 มาใหม่ และดูเหมือน recover สำเร็จ
แต่ก็ยังใช้งานไม่ได้ จึง restart เครื่อง เพื่อล้างค่าต่าง ๆ
3. restart เครื่องคอมพิวเตอร์
4. เมื่อสั่ง start บริการ ก็พบคำว่า OK
สั่ง start กี่ครั้ง ก็ตอบว่า OK .. หมายความว่าไม่ OK
เมื่อตรวจดู status ก็พบว่าบริการไม่ได้ถูกเปิดให้ใช้
#service ldap start เป็นวิธีเปิดบริการ ldap อีกแบบ
#/etc/init.d/ldap status เป็นวิธีตรวจสอบสถานะว่า running รึเปล่า
5. ทดสอบสั่ง start อีกแบบด้วย #/usr/sbin/slapd หรือ slapd -d 10
เมื่อตรวจ status ก็พบว่า ระบบเปิดบริการแล้ว (เรียกว่าเปิดบริการแบบ manual)
แต่ก็ต้องหาว่าสาเหตุคืออะไรต่อไป เพราะ ไม่สามารถ start ตามปกติได้
6. พบสาเหตุว่าเจ้าของแฟ้มในห้อง myname ไม่ใช่ ldap:ldap แต่เป็น root:root
จึงต้องเปลี่ยนเจ้าของ #chown ldap:ldap * ในห้อง /var/lib/ldap/myname
สรุปว่า ใช้งานได้ปกติหลังเปลี่ยนเจ้าของ
7. ใช้โปรแกรมจาก http://www.ldapadministrator.com/
ซึ่งเป็น ldap client admin เข้าไปจัดการข้อมูลได้ครับ

28 ก.ค.58 คุณตั้งแจ้งว่า verify stdid ไม่ผ่านอีกแล้ว หลังไฟดับเมื่อเช้า
หารือกับคุณตุ้ย ก็พบว่ามีปัญหาจริง ซึ่งก็ไม่รู้ว่าเกี่ยวกับไฟฟ้าดับรึเปล่า
ใช้วิธีข้างบนไม่ขลังเหมือนก่อน  ทั้งคุณเปรม และผมปลุกตามวิธีเดิม ๆ ก็ไม่ขึ้น
แล้วเวลาสั่ง start พบคำว่า
Finding last valid log LSN: file: 7 offset 8689191
Recovery starting from [7][8689099]
Recovery complete at Tue Jul 28 15:31:48 2015
Maximum transaction ID 80000007 Recovery checkpoint [7][8689191]

สรุปว่าลองลบ log
แล้วแฟ้ม ___db.001 ก็มากันปกติ จึงได้ใช้ chown จากนั้นก็ ok
แต่ก็ไม่แน่ใจ เพราะปัญหาหายไปแล้ว ถ้าเกิดอีกค่อยตามร่องรอยกันใหม่

http://www.thaiall.com/blog/admin/4282/
http://www.thaiall.com/blog/burin/3713/
http://www.thaiall.com/blog/burin/3698/
http://www.thaiall.com/blog/burin/3680/

fail to restart ldap
fail to restart ldap

config smtp server on win2003

smtp server
smtp server

การตั้งค่าของ smtp server บน windows server 2003

ปรับระบบ smtp server ซึ่งเป็น SMTP Virtual Server ใน IIS บน Windows 2003
1. เปิดบริการ
2. ปรับ Properties, Delivery
– First,Second,Third retry interval เป็น 1, 2 และ 3
3. เปิด firewall ของเครื่อง ยอมรับ port 25
4. เปิด firewall ขององค์กร ยอมรับ port 25
5. telnet localhost 25 ตรวจสอบว่าส่งออกหรือไม่
HELO localhost.localdomain
MAIL FROM: from_who@domain.com
RCPT TO: to_who@domain.com
DATA
— Enter message, end with “.” on a line by itself
Subject: subject goes here
— Message goes here and ends with a dot
QUIT
6. ถ้าผลการส่งบอกว่าปกติ
ให้ไปตรวจใน C:\Inetpub\mailroot\Queue ว่ามีเมลค้างหรือไม่
7. ไปตรวจใน mail box ว่าได้รับใน inbox หรือ spam box หรือไม่