การเชื่อมต่อระหว่าง 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

รับส่งแฟ้มหว่าง PC กับ Smartphone ผ่าน wireless usb

ปกติผมจะแนะนำนักศึกษาให้ใช้  Cloud storage
อาทิ 4shared, dropbox, google drive, onedrive
แต่ถึงทีผมแล้วไม่ได้ใช้กับห้อง DCIM ครับ
เพราะถ่ายภาพไว้เยอะ และยังไม่ได้คัดภาพบางกลุ่ม
จะต้องนำมาคัดแยก folder ทำบน PC ง่ายกว่า
จะใช้ cloud ก็กลัวเต็ม
พบเครื่องมือย้ายข้อมูลผ่านแอพบน smartphone
ลองใช้แล้วก็ง่ายดี

หากต้องการ คัดลอกภาพ วีดีโอ หรือแฟ้มออกจากโทรศัพท์
หรือจะส่ง app ที่สกุล .apk เข้าไปประมวลผลบนเครื่อง android
ก็อาจใช้สาย Data link ซึ่งเป็นวิธีที่นิยมกัน
แต่อีกวิธีที่น่าสนใจคือใช้ app : wireless usb (มีมาให้ในเครื่อง)
ซึ่งสามารถหาดาวน์โหลดได้ มีหลาย app ให้เลือก (แนะนำด้านล่าง)
เมื่อเปิดบริการผ่าน wireless และ app นี้แล้ว
ก็ถือว่า smartphone เป็น ftp server
ที่เครื่องในเครือข่ายเดียวกับ access point
จากนั้นในเครื่อง PC ก็ติดตั้ง ftp client เช่น filezilla หรือ wsftp
แล้วระบุ ip พร้อม port หรือ user(anonymous) แล้ว
เพียงเท่านี้ ก็สามารถ upload หรือ download แฟ้ม
จัดการเชื่อมโยงกันระหว่างเครื่อง PC กับโทรศัพท์ได้แล้ว
กรณีของผมใช้ i-mobile รุ่น IQ Big2 ราคา 3990 บาท
ภาพตัวอย่างคือการ download ภาพทั้งหมด
จากโทรศัพท์มาเก็บในเครื่อง จำนวน 2 ร้อยกว่าแฟ้ม
รวมขนาด 1 GB ก็ใช้เวลาไม่นานนัก

wireless usb and filezilla
wireless usb and filezilla


แนะนำ WiFi FTP (WiFi File Transfer)
https://play.google.com/store/apps/details?id=nalic.app.wifishare&hl=th

แนะนำ WiFi File Transfer – FTP
https://play.google.com/store/apps/details?id=com.wifi.filetransfer.sharing.file.data.ftp&hl=th

แนะนำ FTPServer ซึ่งตัวนี้มีตัวเลือกมากมาย เคยใช้แล้วครับ ติดใจเลย
https://play.google.com/store/apps/details?id=lutey.FTPServer&hl=th

เรื่อง FTP Server กับ Client เคยเล่าไว้ที่
http://www.thaiall.com/learn/useftp.htm

ช่วยเพื่อน config ให้ใช้งาน ftp ใน google cloud ได้ ครั้งที่สอง

google cloud
google cloud

มีโอกาสช่วยเพื่อน config Linux ซึ่งอยู่ใน google cloud
หรือ http://cloud.google.com ให้สามารถใช้ ftp
สำหรับ upload script เข้าไปในระบบ
ครั้งนี้เป็นครั้งที่สอง ดีกว่าครั้งแรก เพราะใช้ user bitnami ที่มีอยู่
แต่ครั้งแรกคลำทางไม่ถูก สร้าง user ใหม่ เข้าไปครอบ folder เดิมเลย
.. แต่ก็พอใช้งานได้ครับ สรุปว่าต้องใช้ bitnami ถึงจะถูกแนวที่เขากำหนดไว้

ขั้นตอนเริ่มต้นก่อนเข้า ssh (Secure shell)
1. เข้า Compute, Compute Engine, VM instances
2. พบ instance ที่สร้างขึ้น ของเพื่อนผมเป็น nginxstack
3. ในบรรทัดนั้นมีคำว่า default ใต้ network ก็เข้าไป
4. เพิ่ม default-allow-ftp
มี Allowed protocols / ports เป็น tcp:21
มี Source tag/ IP range เป็น 0.0.0.0/0 เพื่ออนุญาตจากที่ใด เฉพาะ port ที่กำหนด
มี Target Tags เป็น Apply to all targets
ขั้นตอนการเข้าจัดการด้วย secure shell
#sudo su
#cd /etc
#vi vsftpd.allowed_users
เปลี่ยนจากผู้ใช้ชื่อ bitnamiftp เป็น bitnami
#vi vsftpd.conf
เพิ่ม # หน้า listen_address=127.0.0.1
#cd /etc/init.d
#./vsftpd restart
#passwd bitnami
#ln -s /opt/bitnami/nginx/html html
#cd /opt/bitnami/nginx/conf/bitnami
#vi bitnami.conf
แล้วเติม index.php ไปหลัง index
เดิม index index.html index.htm;
เป็น index index.php index.html index.htm;
#/etc/init.d/bitnami restart

เพื่อให้แน่ใจผม upload index.php มี phpinfo() เข้าไป
เพื่อให้เห็นว่า php ทำงาน จะได้ติดตั้ง app ต่าง ๆ ได้

แก้ปัญหา child died เมื่อใช้ ftp ติดต่อกับ vsftp server

basic to ftp using
basic to ftp using
12 ก.ค.54 ใน ftp server ของ fedora 15 หลังจากติดตั้ง เปิดบริการ และสร้างสมาชิกเรียบร้อยแล้ว แต่เข้าระบบผ่าน client หรือใน server แล้วก็ถูกปฏิเสธหลังจากผ่านการ account authentication ซึ่งก่อนหน้านี้ปิด firewall ไปแล้ว แต่ก็ยังพบข้อความว่า
500 OOPS: cannot change directory:/home/someuser
500 OOPS: child died
ผมแก้ไขโดยการสั่ง (ใช้ -P ต้องรอหน่อย ช้า  อย่าใจร้อน)
#setsebool ftp_home_dir 1
#setsebool allow_ftpd_full_access
1
#setsebool httpd_read_user_content 1
#setsebool httpd_enable_homedirs 1
ถ้าต้องการทราบว่าแต่ละค่ากำหนดอะไรไว้ ก็ใช้ #getsebool
แฟ้ม config คือ /etc/selinux/targeted/modules/active/booleans.local
แต่อย่าแก้แฟ้ม config นะครับ เพราะไม่ได้ผล ต้องใช้ #setsebool -P  …

http://rackerhacker.com/2007/06/14/500-oops-error-from-vsftpd/
http://www.thaiall.com/learn/useftp.htm
http://www.thaiall.com/downloadx/ws_ftp32.exe
http://www.thaiall.com/downloadx/putty.exe
http://fedoraproject.org/wiki/SELinux/apache
http://www.thaiall.com/downloadx/putty.exe

เปิด port ด้วย VNC แล้วหนาว ๆ ชอบกล

vnc port
vnc port

ศุกร์ที่ 1 ก.ค.54 เกิดเห็นร้ายจากการเปิด port 21 (FTP) ในเครื่องอันนี่พอต (Honey pot : web server) แล้วมีการโจมตีเข้ามา เพราะไม่ได้เปิดแบบ secure port และรหัสผ่านไม่ได้มาตรฐาน ทำให้การโจมตีของสคริ๊ปประสงค์ร้าย (Intruder Script) สำเร็จ .. แล้วผลของการถูกบุกรุกเข้าสู่ระบบ คือ เกิดการลบแฟ้มทีละแฟ้มทีละโฟร์เดอร์ มาทราบผลตอนได้รับแจ้งจากผู้ใช้ (Monitor) ว่าเข้าข้อมูลที่เขาต้องการไม่พบ เมื่อหยุดระบบถึงทราบว่าห้องเก็บข้อมูลหายไปเกือบร้อยกว่าห้อง เมื่อกู้ด้วย recuva ก็ได้มาไม่ครบ ส่วนระบบสำรองข้อมูลก็ทำมาแล้ว 6 เดือน  (Innovation) แต่มีคำปลอบใจว่าโจรขึ้นบ้านสิบครั้งไม่เท่าไฟไหม้ครั้งเดียว (Awareness)

มาวันนี้ติดตั้ง RealVNC เพื่อทดสอบการ Remote Control เข้ามาดูแล ก็พบว่าหลังติดตั้งจะเปิด Port 5800 และ 5900 แล้วนึกได้ว่าไม่เปิดดีกว่า ถ้าจะใช้เมื่อไรก็ค่อยเปิด เพราะเปิดไว้มีปัญหา 2 เรื่อง คือ เครื่องทำงานมากขึ้นเพราะต้องรอให้บริการ และถ้าผู้ไม่ประสงค์ดียิงเข้ามาอาจมีสักวันที่ Hack Password ได้สำเร็จ เหมือนที่เคยถูกกระทำมาแล้ว

http://www.realvnc.com/products/download.html

การรับส่งข้อมูลที่ปลอดภัยผ่าน sftp

secure ftp
secure ftp

16 เมย.54 การเชื่อมต่อไปยังเครื่องบริการ (server) ด้วย ftp protocol ผ่านพอร์ตหมายเลข 21 อาจถูกโปรแกรมประเภท sniffer ดักจับข้อมูลที่ส่งไปมาแบบ plain text ได้ ดังนั้นการเข้ารหัสข้อมูลในระหว่างรับส่งข้อมูลจึงเป็นสิ่งที่ต้องถือปฏิบัติ มีวิธีเข้ารหัสอยู่หลายวิธี ซึ่งบริการนี้จะต้องทำงานร่วมกันทั้งฝั่งเครื่องบริการ และฝั่งผู้ใช้ โดยข้อกำหนดในการติดต่อจะกำหนดโดยฝั่งเครื่องบริการ ดังนั้นผู้ใช้บริการต้องเข้าไปศึกษาจาก faqs , knowledgebase หรือ q&a หรือไม่ก็โทรถามผู้ให้บริการครับ และสิ่งที่ต้องมี 4 อย่างที่ผู้ให้บริการเป็นผู้กำหนด คือ วิธีการเข้ารหัส ชื่อเครื่องบริการ รหัสผู้ใช้ และรหัสผ่าน
http://www.hypermart.net/knowledgebase/read_article.bml?kbid=7520
http://help.godaddy.com/article/4982?locale=en
http://www.thaihost.net/plan.html
http://3dpixel.net/web-hosting-features/secure-encrypted-ftp