วิธีการติดตั้ง และตั้งค่า Apache2 พร้อมเปิดใช้งาน HTTPS ด้วยวิธี Self-Sign บน Ubuntu 18.04.1 LTS

ดีจร้า วันนี้ช่วงเช้าว่างเลยมาเขียนบทความเพิ่มเติมเกี่ยวกับการติดตั้ง และตั้งค่า Apache2 ให้สามารถใช้งานผ่าน HTTPS ได้กันมาเริ่มกันเลยครับ

ขั้นแรกติดตั้ง Ubuntu 18.04.1 LTS กันถ้าใครไม่รู้วิธีก็คลิกที่นี่
ขั้นต่อไปก็ตามข้างล่างเลยครับ

MySQL remote backup with python

สวัสดีครับเพื่อน ๆ วันนี้ผมมาพร้อมกับความขี้เกียจครับ ดังนั้นผมเลยจะมาแชร์ความขี้เกียจให้ได้อ่านกัน เนื่องจากผมต้องทำการ backup MySQL database ทุกวันแต่ว่าบางทีเราก็มีอะไรต้องทำ และไม่ได้ว่างมานั่งทำตลอดดังนั้นจึงได้เขียน Python script ขึ้นมาเพื่อสนองความขี้เกียจของตัวเองนะครับ (ปล. จริง ๆ เอาไปใช้ในงานกลุ่มได้ด้วย อิอิ)

อันดับแรก Library ที่ผมใช้จะมี 2 ตัวคือ Paramiko ใช้สำหรับทำ remote ssh และ time ใช้สำหรับสแตมป์วันที่ต่อท้าย backup file นะครับ ไปดู code กันเลยดีก่าครับ

import paramiko
import time

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
try:
    ssh.connect('Your Remote IP', username='Your remote account', password='Your remote password')
except paramiko.SSHException:
    print("Connection Failed")
    quit()

stdin, stdout, stderr = ssh.exec_command("mysqldump -u Your account -pYour password Target-DB > backup.sql")
tFormat = "%d-%m-%Y"
timeStartDay = time.strftime(tFormat)
backup_name = "backup-from-" + timeStartDay + ".sql"
sftp = ssh.open_sftp()
sftp.get('backup.sql', backup_name)
sftp.close()

ssh.close()

...

จะเห็นว่า Code เพียงสิบกว่าบรรทัดก็ทำให้ชีวิตผมดีขึ้นกว่าแต่ก่อนเยอะมากครับ

ถ้าเขียน Python ได้ลองอ่านดูคงเข้าใจครับ อาจจะต้องไปอ่าน SQL เพิ่มด้วยครับ

ปัญหาที่พบกับ Fluentd

หลังจากทะเลาะกับ Fluentd มาสองวันเต็ม ๆ ก็ได้ฤกษ์สร้าง Post นี้เพื่อเอาไว้จดรายละเอียดการแก้ไขว่าจะทำยังไงเมื่อเกิดปัญหาขึ้นครับ อาจจะมีการปรับปรุงเรื่อย ๆ เป็นระยะ ๆ นะครับการทดลองแรก กับการทดลองที่ 2 ทำเมื่อวันที่ 14 กุมภาพันธ์ วันวาเลนไทน์พอดีครับ


การทดลองแรก

DNSEnum VS DNSMap ต่างกันอย่างไร

          วันนี้ได้มีโอกาสมาเขียนบทความแชร์กันในเรื่องของ Tool ที่ใช้สำหรับทำ Information Gathering ประเด็นเกิดจากอาจารย์ให้ไปศึกษาบทความเกี่ยวกับเครื่องมือที่ใช้ในการโจมตีระบบเครือข่ายตามหลัก Penetration Testing Method ผมก็คิดอยู่ว่าจะทำไรดี มันมีหลายอย่างมาก ๆ เพื่อนก็เลือกของดี ๆ ไปหมดแล้ว ตอนแรกว่าจะทำ SQLMap แต่ก็มีเพื่อนเลือกแล้ว จะไปทำ Metasploit ก็เนื้อหาเยอะไปไม่รู้จะทำบทความไหนดี บวกกับตอนนั้นต้องทำเรื่อง DNS เลยคิดว่าเอา DNS นี่แหละมาทำ แต่จะใช้เครื่องมืออะไรดีดูแล้วมีหลายตัวเลือก ตอนแรกก็จะทำแค่ DNSEnum แต่ว่ามันก็จะดูน้อยเกินไป เลยคิดว่าไม่เอาละ ไปทำ DNSMap ดีกว่า แต่ก็นะ น้อยไม่แพ้กัน ความช้าเร็วก็ต่างกัน ก็เลยคิดขึ้นมาได้ว่าเอ้าไหน ๆ ก็จะทำเรื่อง DNS ละแล้วไอ้ Tools สองอย่างนี้มันต่างกันยังไงล่ะเนี่ย เลยเอาหัวข้อนี้มาทำซะเลย อิอิ เพื่อไม่ให้เป็นการเสียเวลา จัดเลยแล้วกันนะครับ

ติดตั้ง EFK Stack บน Ubuntu 18.04 LTS

วันนี้จะมาทำขั้นตอนการติดตั้ง EFK Stack บน Ubuntu 18.04 LTS Bionic ครับสิ่งที่ต้องเตรียมกันก่อนใน Lab ของผมวันนี้นะครับ เครื่องเซิฟเวอร์ 4 เครื่องดังนี้

  1. สำหรับติดตั้ง Elastic Search
  2. สำหรับติดตั้ง Fluentd
  3. สำหรับติดตั้ง Kibana
  4. สำหรับติดตั้ง Fluent-bit เพื่อทำตัวเป็น Log Forwarder
โดยขั้นตอนการติดตั้งผมจะทำเป็น Syntax Highlight อาจจะเป็นแบบยาว ๆ พิมพ์คำสั่งไปด้วยอธิบายไปด้วยนะครับ เริ่มกันเลยครับที่เครื่องเซิฟเวอร์ทุกเครื่องให้อัพเดท repository ให้เป็นรุ่นล่าสุด

ทำความรู้จักกับ Fluent Bit

ทำความรู้จักกับ Fluent Bit

Fluent Bit คือ Agent ตัวเล็ก ๆ ตัวนึงที่ทำหน้าที่สำหรับเป็นตัว Log Forwarder (ที่เรียกแบบนี้เพราะเราติดตั้งเพื่อกระทำกับ Log นะครับ จริง ๆถ้าจะเรียกให้เข้ากับความเป็น Fluent ควรเรียกว่าเป็น Data Forwarder เพราะ Fluentd เค้าเคลมตัวเองเป็น Data Collector ไม่ใช่ Log Collector ครับ )

Fluentd VS Fluent Bit

          ที่ทำหัวข้อนี้ขึ้นมาเพื่อทำให้คนที่ยังไม่รู้เผื่อเข้ามาอ่านจะได้เข้าใจว่ามันต่างกันยังไงนะครับ ซึ่งจริง ๆ แล้วมันก็คือ Software ตัวลูกของ Fluentd นั่นเองครับ คือผมเขียนจากความเข้าใจของผมนะครับดังนั้นถ้าอยากได้ความชัวร์ให้ไปอ่านเพิ่มเติมได้ที่นี่ มาเริ่มกันเลยดีกว่าตัว Fluentd นั้นทำหน้าที่หลัก ๆ อยู่ 3 อย่างคือ เป็น Log Collector, Processor และ Aggregator และตัว Fluent Bit นี้จะทำหน้าที่เหมือนกับ Fluentd ครับเพียงแต่ไม่มีความสามารถในการทำ Aggregator นั่นเองเปรียบเทียบความสามารถได้จากตารางด้านล่างครับ หรือถ้าอยากได้ข้อมูลเปรียบเทียบเพิ่มเติมคลิกที่นี่

เริ่มต้นศึกษา Fluentd



วันนี้ผมจะมาเริ่มศึกษาลงลึกทีละส่วน โดยจะเริ่มจาก Fluentd ซึ่งเป็น Free Opensource Software สำหรับทำ Data Collector นั่นเองหรือจะเรียกว่า Log Collector ก็ได้อยู่นะครับ โดยเจ้า Fluentd เนี่ยทางบริษัทผู้ผลิตเคลมว่าสามารถรองรับระบบได้มากกว่า 125 ชนิดกันเลยทีเดียว [อ้างอิง] โดย Fluentd นั้นจะเก็บรวบรวม Log ในรูปแบบของ JSON Format ทำให้ง่ายต่อการทำความเข้าใจ และมันถูกเขียนขึ้นมาจากภาษาซีเป็นหลัก แล้วใช้ Ruby ผสมผสานเข้าด้วยกันเพื่อเพิ่มความยืดหยุ่นในการทำงานนั่นเอง

ติดตั้ง Graylog 2.5 ใน Ubuntu 18.04



เนื่องด้วยมีความจำเป็นที่จะต้องศึกษาเรื่องของการทำ Centralize Log Server ด้วย EFK Stack เลยต้องมาลองเล่นทีละตัว วันนี้จะลองมาทำ Graylog โดยการติดตั้งไว้ใน Cloud ก่อนเพื่อให้เพื่อน ๆ ของผมได้ลองเล่นด้วยว่าใช้งานได้มั๊ยเป็นไงบ้าง จะบอกว่าไม่ได้คิดเองทำเองนะครับ ไปดูของต่างประเทศมาแต่มันมีหลายลิงค์เลยจะเอามารวมกันเป็นอันเดียว และเขียนด้วยภาษาไทย

EFK Stack (Elasticsearch, Fluentd, Kibana) กับความท้าทายของผม

ดีจ้า สบายกันดีมะครับ ยินดีกับตัวเองที่ลาออกจากที่เก่าแล้วมาเริ่มงานที่ใหม่ได้แล้ว เนื่องจากต้องการพัฒนาตัวเอง และที่เก่าไม่มีอะไรน่าค้นหาอีกต่อไปสำหรับผม เพราะทำมาครบลูปละ เลยต้องมาทำอะไรใหม่ ๆ บ้างซึ่งได้ย้ายงานมาทำให้กับหน่วยงานทางด้านการเงินที่นึง มาอยู่ในทีม IT-Security คิดถึงการเขียนบล็อคเลยกลับมาเขียนครับ


วันนี้ผมจะมาเขียนบทความเกี่ยวกับการทำระบบ Centralize Log Server กับ Open Source Solution ที่เป็นตัวเลือกอันนึง ที่ผ่าน ๆ มา System Admin หลาย ๆ คนอาจจะคุ้นเคยกับ ELK Stack ซึ่งประกอบไปด้วย Open Source Software ทั้งสิ้น 3 ตัวคือ



How to add Network connection shortcut to Desktop on Windows 10

เคยมั๊ยที่จะเข้าไปดู IP หรือแก้ IP ใน Windows 10 แล้วมันเข้าหลายต่อเหลือเกิน

พอกันทีกับนวัตกรรมใหม่ ๆ ที่ซับซ้อน วันนี้ Phaonix Blog ขอนำเสนอ การเข้าถึง Network Connection รูปแบบใหม่ที่จะช่วยให้คุณสามารถกลับมาตรวจสอบ และบริหารจัดการ IP ได้รวดเร็วเหมือนเดิม

Python3 :: Cisco Configuration Audit Tools

พอดีอยากรู้ว่า Cisco device นั้นเวลาทำ SNMP คุยกันด้วย Community String นั้นทำยังไง แล้วการตั้งค่านั้นปลอดภัยมั๊ย เลยต้องจัดกันสักหน่อย เริ่มต้นกันเลยจะได้ไม่ต้องคอย

เตรียมเครื่องมือกันก่อน เราจะใช้งาน Module 2 ตัวดังนี้นะครับ

  1. CraSSH ซึ่งเป็น Module ที่เอาไว้ทำ Remote Management กับอุปกรณ์ของ Cisco
  2. Logging ซึ่งจะเอาไว้เก็บ Log ที่ได้จากการทำงานของตัวโปรแกรมนะครับ
สำหรับตัว Logging นั้นมีมาอยู่แล้วกับ Python เราไม่ต้องติดตั้งเพิ่มนะครับ แต่สำหรับ CraSSH ต้องติดตั้งเพิ่มครับ โดยใช้คำสั่งด้านล่างสำหรับติดตั้งครับ

วิธีการติดตั้ง และตั้งค่า Apache2 พร้อมเปิดใช้งาน HTTPS ด้วยวิธี Self-Sign บน Ubuntu 18.04.1 LTS

ดีจร้า วันนี้ช่วงเช้าว่างเลยมาเขียนบทความเพิ่มเติมเกี่ยวกับการติดตั้ง และตั้งค่า Apache2 ให้สามารถใช้งานผ่าน HTTPS ได้กันมาเริ่มกันเลยครับ ...