Archive for the ‘debian’ Category
Posted by อัทศักดิ์ วงศ์กิตตะ on Monday, October 25th, 2010
สมัยนี้ไปไหนก็มีก็มี Wifi ให้เราใช้งาน ไม่ว่าจะเป็นแบบฟรี หรือ เสียเงิน วันนี้ผมเอาจุดอ่อน ที่ผู้ให้บริการ Hotspot มองข้ามคือ การเปิด Any DNS หรือ การเปิดให้ Client สามารถ Query DNS ข้างน้อกได้ โดยไม่ได้ทำการ Auth ซึ่ง Wifi หลายๆที่เปิดไว้เพื่อความสะดวก แต่ตรงนี้แหละเป็นจุดอ่อน ที่จะทำให้เราสามารถใช้งาน Internet ได้โดยไม่โดนจำกัด Bandwidth
สิ่งที่ต้องเตรียม
- ต้องมี Server ที่เป็น Fix IP ไว้ข้างนอก
- ติดตั้ง OpenVPN
ติดตั้ง Server
apt-get install openvpn
openvpn --genkey --secret /etc/openvpn/mysecret.key
vi /etc/openvpn/server-udp-53.conf
# File /etc/openvpn/server-udp-53.conf
dev tap
mode p2p
proto udp
#ping 1
port 53
ifconfig 10.10.10.1 255.255.255.252
secret /etc/openvpn/mysecret.key
tun-mtu 1500
tun-mtu-extra 32
mssfix 1400
push "route 192.168.10.0 255.255.255.0"
ติดตั้ง Client
Download Client จาก http://openvpn.net/index.php/openvpn-client.html และทำการติดตั้ง
Copy file mysecret.key มาไว้ในเครื่อง และสร้างไฟล์ config โดยใช้ชื่อ client.ovpn
#file client.ovpn
dev tap
mode p2p
proto udp
remote <IP Server>
#ping 1
port 53
ifconfig 10.10.30.2 255.255.255.252
secret mysecret.key
tun-mtu 1500
tun-mtu-extra 32
mssfix 1400
ping 5
แค่นี้ก็สามารถ Connect VPN ผ่าน UDP/53 ได้แล้วครับ
Tags: debian, OpenVPN, VPN
Posted in debian | No Comments »
Posted by อัทศักดิ์ วงศ์กิตตะ on Thursday, October 21st, 2010
วันนี้ติดตั้ง Xen Server และลง Debian ในเครื่อง Xen จะทำการ Add source ของ citrix ให้เองอัตโนมัตติ แต่เมื่อเราทำการ update package จะฟ้อง Error ว่าไม่พบ GPG key ของ Citrix เราสามารถติดตั้งได้ ดั่งนี้
server:~# wget -q http://updates.vmd.citrix.com/XenServer/5.5.0/GPG-KEY -O- | apt-key add -
แค่นี้เวลาเราสั่ง apt-get ก็จะไม่ฟ้อง error gpg key อีกแล้วครับ
Tags: apt-get, debian, xen
Posted in debian, Operating System | No Comments »
Posted by อัทศักดิ์ วงศ์กิตตะ on Sunday, May 9th, 2010
พูดถึงปัญหาของเว็บใหญ่ๆทั่วไป ก็คงไม่เว็บเรื่องระบบ File System เพราะปัจจุบันมีแค่ NFS เท่านั้นที่ทำการ Share ไฟล์ได้ใน Unix หากจะหันไปให้ SAN หรือ iSCSI ราคาก็แสนแพง เพราะฉนั้นระบบใหญ่แค่ไหนก็มีปัญหาที่ระบบไฟล์ทุกที เราจึงต้องลบ Traffic ที่จะวิ่งไปดึงจาก NFS ให้น้อยที่สุด วันนี้ผมมีอีกทางออกให้คือการแยก Static และ Dynamic Content ออกจากกัน เพราะหากเราแยกได้แล้ว เราสามารถที่จะ Sync Dynamic Content ให้ไปอยู่ใน Local disk ได้หรือ จะทำการเลือกใช้ Web Server ให้เหมาะสมกับระบบที่เราดูแลได้ง่ายขึ้น

Continue reading “Speedup Dynamic and Static Content with Nginx” »
Tags: NFS, Nginx, Web Server
Posted in debian, Operating System | No Comments »
Posted by อัทศักดิ์ วงศ์กิตตะ on Sunday, May 9th, 2010
แนวคิดคือ Server ที่เราดูแลมี System Admin หลายคนที่สามารถ Access เป็น Root ได้ แล้วเราจะรู้ได้ไงว่า ใคร Login เข้าไปยัง Server ทางออกของผมคือ Allow User ที่ sshd ให้มีแค่ admin เท่านั้นที่เข้าได้ และให้ sudo เป็น root และจะมีอีเมล์แจ้งเตือนมายัง ผู้ดูแล เพื่อทราบว่าเข้าไปทำอะไร
1. sshd ให้แก้ไขไฟล์ /etc/ssh/sshd_config เพิ่ม AllowUsers เช่น
AllowUsers auttasak
2. แก้ไข /usr/local/etc/sudoers ดั่งนี้
Defaults mailto=admin@domain.com,mail_always
root ALL=(ALL) ALL
auttasak ALL=(ALL) NOPASSWD: ALL
หลังจากนั้นให้ทำการ Restart SSH ครับ เมื่อใดที่มีคน sudo จะมีอีเมล์แจ้งไปยัง admin@domain.com แบบนี้ทำให้เราทราบได้ว่ามีคน sudo เป็น root เมื่อใดบ้าง
Tags: FreeBSD, ssh
Posted in CentOS, debian, FreeBSD, Operating System, ubuntu | No Comments »
Posted by อัทศักดิ์ วงศ์กิตตะ on Tuesday, March 23rd, 2010
หายไปนานครับ วันี้เอาเรื่องเก่าๆมาหากินใหม่ IPTables ที่ทำๆอยู่ทุกวันนี้แหละครับ พอดีทำ Shell Script ทิ้งไว้เลยเอามาแจกจ่ายให้เพื่อนๆเอาไปใช้งาน หลายๆคนถามว่าทำไมต้องเขียนเอง ก็เหตุผลง่ายๆครับ เราเขียนเองเรารู้ทุกๆ rules ที่มันทำงานอย่างไร เวลาเกิดปัญหา เราสามารถแก้ไขปัญหาได้ รวดเร็ว มาดูความสามารถของ script firewall ตัวนี้ครับ
ความสามารถ:
– State full firewall
– สามารถกำหนด Interface ที่ทำงานได้
– สามารถกำหนด VIP IP ได้
– สามารถกำหนด Band IP ได้
– มีการเก็บ Log ลง syslog
– ป้องกันการ Scan port ได้
– ป้องกัน IP Spoofig
– ป้องกัน SSH Attatch
Continue reading “IPTables statefull firewall for Linux” »
Tags: centos, debian, firewall, INPUT, iptables, Linux, Shell
Posted in CentOS, debian, Development, Operating System, Shell script, ubuntu | 4 Comments »
Posted by กวิน ชัยเลิศ on Friday, January 16th, 2009
สำหรับผู้ดูแลระบบที่มีความจำเป็นต้องใช้งาน Remote Login ผ่าน OpenSSH Client อยู่เป็นประจำไม่ว่าจะใช้งานบน Linux, *BSD, Mac OS X คงจะเกิดอาการเบื่อไม่น้อยที่ต้องพิมพ์ Password ทุกๆ ครั้งที่ต้องการจะ Login (ไม่นับ Password จำพวก 123456 นะครับ) ทางออกสำหรับผู้ที่ต้องการ Login โดยไม่ต้องพิมพ์ Password แถมยังคงความปลอดภัยตามแบบฉบับของ OpenSSH สามารถทำได้ตามวิธีดังต่อไปนี้ครับ
ระบบที่ทำการทดสอบ
- OpenSSH Client บน Mac OS X 10.5.6
- OpenSSH Server บน Ubuntu 8.04
ขั้นตอนแรก ทำการสร้าง keys สำหรับยืนยันตัวตนระหว่าง Client และ Server (ทำบนเครื่อง Client ในที่นี้คือ Mac OS X)
MacClient:~ UserA$ ssh-keygen -t rsa
MacClient:~ UserA$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/UserA/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/UserA/.ssh/id_rsa.
Your public key has been saved in /Users/UserA/.ssh/id_rsa.pub.
The key fingerprint is:
a4:74:0b:bc:2f:d1:f5:c7:4e:90:51:7f:f4:45:84:a0 UserA@MacClient
Continue reading “SSH โดยไม่ต้องใส่รหัสผ่าน” »
Tags: *BSD, centos, Linux, Mac OS X, OpenSSH, password, ssh, ubuntu, รหัสผ่าน
Posted in CentOS, debian, FreeBSD, Mac OS X, Operating System, ubuntu | 1 Comment »
Posted by กวิน ชัยเลิศ on Friday, January 16th, 2009
กรณีที่ผู้ดูแลระบบได้รับมอบหมายให้ดูแล server ที่ตนเองไม่ได้ติดตั้ง คงจะอยากรู้ว่า Linux / Unix server ที่ใช้อยู่เป็น version อะไร …
สามารถตรวจสอบได้จากคำสั่งต่อไปนี้ครับ
ได้ Output ประมาณนี้ครับ
Linux version 2.6.27-9-generic (buildd@rothera) (gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu11) ) #1 SMP Thu Nov 20 21:57:00 UTC 200
หรือดู version ในไฟล์ /etc/issue
(issue – pre-login message and identification file)
ได้ Output ประมาณนี้ครับ
* ทดสอบบน Ubuntu 8.10
Tags: *BSD, command, Distribution, Linux
Posted in CentOS, debian, Operating System, ubuntu | 1 Comment »
Posted by อัทศักดิ์ วงศ์กิตตะ on Thursday, January 15th, 2009
สวัสดีอีกครั้งครับหลังจากหายหน้าหายตาไปนาน จริงๆก็ไม่ได้ไปไหนแค่หลังๆมางานที่ office ค่อนข้างมากแล้วผมเองก็ไปเที่ยวสะบ่อยๆ เลยไม่ค่อยได้มาเขียนบทความให้อ่านกัน วันนี้เป็นเรื่องการทำ VPN โดยใช้ OpenVPN ทำไมต้องเป็น OpenVPN สาเหตุของผมคือ ผมเองต้องติดตั้งระบบ Auth System (Radius + Chillispot + Syslog-ng) แต่ละที่ดันเป็น Dynamic IP หมด เวลาจะแก้ไขอะไรก็ต้องไป set router ซึ่งมันไม่ใช่ทางเลือกที่ดีเลย ทางแก้ผมเลย set up ที่ Center แล้วให้ Site แต่ละที่ทำการสร้าง VPN Connection ไปยัง Center
Server# apt-get install openvpn
Server# vi /etc/openvpn/server.conf
# ไฟล์ /etc/openvpn/server.conf
dev tap0
proto tcp-server
ping 1
ping-restart 5
port 10000
ifconfig 10.10.10.1 255.255.255.0
Client# apt-get install openvpn
Client# vi /etc/openvpn/client.conf
# ไฟล์ /etc/openvpn/server.conf
dev tap0
proto tcp-client
ping 1
ping-restart 5
port 10003
ifconfig 10.10.10.2 255.255.255.0
remote 203.1.1.1
Server# /etc/init.d/openvpn start
Client# /etc/init.d/openvpn start
Tags: debian, install, OpenVPN, Server, VPN
Posted in debian, Operating System | No Comments »
Posted by อัทศักดิ์ วงศ์กิตตะ on Monday, September 1st, 2008
คือมี case ที่ต้องทำ transparent proxy ครับ แต่ว่าเวลา proxy มีปัญหา ผมอยากให้ทำการ ปลด proxy ออกเอง ผมเลยเขียน shell script มาเพื่อทำการ ตรวจสอบว่า proxy ทำได้หรือเปล่า ถ้าทำงานได้ ก็จะเพิ่ม iptables ทำการสร้าง DNAT ไปยังเครื่อง Proxy ครับ
Continue reading “Check Transparent Proxy” »
Tags: iptables, Linux, Proxy, Shell script, Squid, Transparent, TransparentProxy
Posted in debian, Development, FreeBSD, Shell script | 1 Comment »
Posted by อัทศักดิ์ วงศ์กิตตะ on Sunday, August 24th, 2008
ตามที่ พรบ ได้กำหนดให้ “ผู้ให้บริการ” เก็บ log การใช้บริการ โชคดีที่ผมมี Revert Proxy วางไว้หน้า Web Server ทำให้สามารถเก็บ Log ได้ง่ายหน่อย ตัว script ที่ผมเขียนนี้ จะทำการ rotate log และ compress log ไว้ ใน version ต่อไป จะทำการ ftp ไปไว้ยัง Log Server อื่น แทนครับ 
Continue reading “พรบ. การกระทำความผิดเกี่ยวกับคอมพิวเตอร์ – Revert Proxy Log Rotate” »
Tags: Apache, Log, Proxy, Revert, Rotate, Squid, พรบ
Posted in debian, Development, Shell script | 3 Comments »