Thứ Hai, 27 tháng 6, 2011

Giới thiệu SAMBA, Lab SAMBA trên CentOS Linux





Samba (Server Message Block) là giao thức giúp các máy tính trong hệ thống mạng Windows truyền thông với nhau, chia sẻ file và máy in.

Samba cũng là tên 1 phần mềm sử dụng giao thức Samba kết nối hệ thống mạng Linux với hệ thống mạng Windows.


CÀI ĐẶT VÀ CẤU HÌNH SAMBA SERVER

Mô hình bài thực hành


Nội dung của bài thực hành
Xây dựng 1 máy ảo Linux chạy hệ điều hành CentOS-5 và 1 máy thật Windows kết nối theo mô hình trên.

Cài đặt và cấu hình máy Linux làm Samba Server và Samba Client để chia sẻ file giữa máy Linux với máy Windows và máy Windows với Linux.

Địa chỉ IP sử dụng trong bài thực hành
Máy Linux : 192.168.1.1/24.
Máy Windows : 192.168.1.2/24.

Bước 1 : Đặt địa chỉ IP trên máy Samba Server và máy Windows. Tắt firewall trên máy Samba Server
[root@sambaserver]# ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up
[root@sambaserver]# service iptables stop

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x510



Bước 2 : Kiểm tra package “samba” đã được cài đặt hay chưa. Nếu chưa tiến hành cài đặt package này qua yum hoặc rpm
[root@sambaserver]# rpm -qa | grep samba
[root@sambaserver]# yum install samba
[root@sambaserver]# rpm -qa | grep samba
samba-3.0.33-3.29.el5_5.1
samba-common-3.0.33-3.29.el5_5.1

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x506


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x512

Bước 3 : Mở file cấu hình tổng thể của samba và xem một số thông tin cấu hình chính.
[root@sambaserver]# less /etc/samba/smb.conf
...
[global] # phần cấu hình tổng thể cho dịch vụ

# ----------------------- Network Related Options -------------------------

workgroup = MYGROUP # gia nhập vào workgroup có tên “MYGROUP”
server string = Samba Server Version %v # thông tin mô tả server

# --------------------------- Logging Options -----------------------------
#
# Log File let you specify where to put logs and how to split them up.
; log file = /var/log/samba/%m.log # Vị trí đặt log file
# max 50KB per log file, then rotate
; max log size = 50

# ----------------------- Standalone Server Options ------------------------

security = user # Xác thực dựa trên user account
passdb backend = tdbsam # Sử dụng tdbsam (smbpasswd) để xác thực

[homes] # Chia sẻ thư mục home của từng người dùng
comment = Home Directories # Thông tin mô tả thư mục
browseable = no # Không hiển thị thư mục này khi browse
writable = yes # Cho phép user ghi file lên thư mục home
; valid users = %S # Giới hạn truy cập cho từng user, %S sẽ được thay thế bằng tên của user truy nhập
; valid users = MYDOMAIN\%S

[printers] # Chia sẻ các máy in
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes
...

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 743x506


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x509

Bước 4 : Tạo thư mục chia sẻ trên máy Samba Server và copy 1 số file vào thư mục đó.
[root@sambaserver]# mkdir /smbsharing
[root@sambaserver]# cp /var/log/*.log /smbsharing

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x507

Bước 5 : Tạo user có tên “sambauser" trên hệ thống và đưa user này vào danh sách user của samba.
[root@sambaserver]# useradd sambauser
[root@sambaserver]# smbpasswd -a sambauser
New SMB password:
Retype new SMB password:
[root@sambaserver]# chmod 600 /etc/samba/smbpasswd

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x505

Bước 6 : Backup file cấu hình của samba và cấu hình file cấu hình này để :
Chỉ cho phép các client ở subnet 192.168.1.0/24 được truy cập vào thư mục chia sẻ.

Chia sẻ thư mục /smbsharing và chỉ cho phép user “sambauser” truy cập vào thư mục chia sẻ này.

[root@sambaserver]# cd /etc/samba
[root@sambaserver]# cp smb.conf smb.conf.backup
[root@sambaserver]# vi /etc/smb.conf


host allow 127. 192.168.1.

[myshare]
comment = Shared Folder
path = /smbsharing
browseable = yes
public = yes
writeable = yes
valid users = sambauser

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x512


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 743x504


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x511

Bước 7 : Kiểm tra file cấu hình và khởi động dịch vụ samba.
[root@sambaserver]# testparm /etc/samba/smb.conf
[root@sambaserver]# service smb start
Starting SMB services: [ OK ]
Starting NMB services: [ OK ]

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x508


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 743x509

Bước 8 : Trên máy ảo Windows truy cập vào địa chỉ \\192.168.1.1 và login bằng account "sambauser" để xem thư mục chia sẻ.





Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 798x594


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 797x594

Bước 9 : Trên máy Windows thử tạo 1 file hoặc folder trong thư mục chia sẻ /smb/sharing. Mặc định thì việc tạo file/folder này sẽ không thành công.

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 800x596

Bước 10 : Trên máy Samba Server thay đổi lại quyền trên thư mục chia sẻ /smbsharing, thêm quyền ghi cho các user khác trên thư mục này.
[root@sambaserver]# ls -l /smbsharing
[root@sambaserver]# chmod o+w /smbsharing
drwxr-xrwx 2 root root 4096 Mar 22 01:36 smbsharing

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x508


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 742x508

Bước 11 : Trên máy Windows thử lại tạo 1 file/folder trong thư mục chia sẻ /smbsharing và việc tạo 1 file/folder sẽ thành công.

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 799x715


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 800x598


CÀI ĐẶT VÀ CẤU HÌNH SAMBA CLIENT


Bước 12 : Kiểm tra package “samba-client” đã được cài đặt trên máy ảo Samba Server ra chưa. Nếu chưa tiến hành cài đặt package này qua yum hoặc rpm.
[root@sambaserver]# rpm -qa | grep samba-client
[root@sambaserver]# yum install samba-client
[root@sambaserver]# rpm -qa | grep samba-client
samba-client-3.0.33-3.29.el5_5.1

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 744x508

Bước 13 : Trên máy ảo Windows tạo thư mục C:\myshare, tạo 1 số file/folder trong thư mục này và chia sẻ thư mục này.

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 798x599


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 797x598



Bước 14 : Trên máy ảo Samba Server tạo 1 mount point và thực hiện việc mount thư mục chia sẻ từ máy Windows. Kiểm tra việc mount.
[root@sambaserver]# mkdir /mnt/smb
[root@sambaserver]# mount -o username=Administrator,password=yourpassword //192.168.1.1/myshare /mnt/smb
[root@sambaserver]# mount
//192.168.1.1/myshare on /mnt/smb type cifs (rw,mand)
[root@sambaserver]# ls /mnt/smb

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x510

Bước 15 ( Tùy chọn ) : Tạo 1 file chứa thông tin về account username và password login vào máy Windows. Cấu hình file /etc/fstab để tự động mount thư mục chia sẻ mỗi khi hệ thống khởi động.
[root@sambaserver]# vi /etc/samba/cred
username=Administrator #username sử dụng để login
password=mypassword #password sử dụng để login
[root@sambaserver]# vi /etc/fstab

//192.168.1.1/myshare /mnt/share cifs credentials=/etc/samba/cred 0 0

Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x507


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x510


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x507


Hình này đã được thu nhỏ, nhấn vào đây để xem nguyên bản. Kích thước ban đầu của ảnh này là 745x509

Chủ Nhật, 19 tháng 6, 2011

Thứ Bảy, 18 tháng 6, 2011

Hạn chế để trở thành Zombie...

Hệ thống đặt ra
Hệ thống máy tính tại cty có mô hình và sử dụng các dịch vụ như sau:

LAN -------- Proxy\Firewall ----------- Internet.

LAN:
Workstation:
• Có khoảng 20 users sử dụng 20 computer.
• Sử dụng các phần mềm văn phòng như office, Photoshop, yahoo messenger, skype … browser.
• Sử dụng Email (Google Apps).
• Dùng Symantec để phòng Virus.
Server: 1 Windows Server 2008, sử dụng các dịch vụ:
• DNS
• DHCP
• VPN
• WSUS
• File Server.

Proxy\Firewall: 1 Cent OS
Proxy:
• Tất cả các máy tính trong LAN phải qua proxy trước khi ra internet.
• Chỉ cho đi internet trong giờ làm việc.
• Cho server được phép đi thẳng.
• Ngăn chặn không cho download các file thực thi (.exe, .bat, …)
Firewall:
• LAN -------- Internet:
Mở các port sử dụng email (IMAPs, POP3s, SMTP)
Server được phép đi thẳng.
Cấm tất cả traffic còn lại

• Internet --------- LAN:
Nat port VPN vào LAN. 


Giải quyết 
Mô hình trên là mô hình thông thường và vẫn còn nhiều kẻ hở cho hiểm hoạ, đặc biệt những tiện ích như yahoo messenger, skype và mail bên ngoài là những chỗ cho phép những dữ liệu nguy hiểm có thể đi vô máy của người dùng. Biện pháp duyệt web phải đi xuyên qua proxy (có ít nhiều cản lọc) chỉ tập trung ở luồng web traffic và nếu chỉ lọc theo mime (.exe, .bat...) thì cũng không đủ bởi vì ngày nay mã độc vẫn có thể được chèn vô một word doc hoặc một pdf file.

Nếu xét về việc "hạn chế để trở thành zombie" thì cần xét hai khía cạnh:

1. Khả năng bị biến thành zombie (lây nhiễm đường vô).
2. Khả năng bị điều khiển để tấn công các nạn nhân khác (phát tán và tấn công đường ra).

Với hai khía cạnh trên, việc "phòng cháy" luôn luôn quan trọng và cần thiết hơn "chữa cháy" bởi vì nếu để cho "lửa" bốc ra và đốt cháy thì khó dập mà có dập được thì cũng bị hư hoại phần nào. Vậy, để "phòng cháy" một cách triệt để:

- Không cho sử dụng chat clients hoặc bất cứ tiện ích nào cho phép gởi files hoặc gởi file đính kèm.

- Không cho sử dụng free emails mà phải sử dụng hệ thống mail của công ty. Hệ thống này phải được thiết kế để rà quét và kiểm tra cẩn thận files được đính kèm có độc hại hay không rồi mới chuyển về hòm thư của nhân viên.

- Không cho sử dụng USB từ bên ngoài bởi vì đây là nguồn phát tán không kém phần khủng khiếp.

- Không cho kết nối đến các cổng dịch vụ khác ngoài 80 và 443 (và 80 / 443 phải đi xuyên qua hệ thống cản lọc chặt chẽ). Cái này nhằm hạn chế tình trạng máy con đã bị biến thành zombie và có thể tự động truy cập đến hệ thống của tin tặc (còn gọi là "call home").

- Không cho duyệt các trong web độc hại. Nếu có kinh phí, nên dùng các hệ thống lọc cao cấp để đọc nội dung trang web theo thể loại (ví dụ, weapons, drugs, hacks, pornography, chit chat.....). Nếu không có kinh phí, nên dùng DNS của openDNS và áp dụng Family Shields http://www.opendns.com/landings/familyshield) hoặc nếu có tiền một chút thì dùng "Comprehensive Web Content Filtering". Bảo đảm sẽ ngăn 99.99% những thứ độc hại.

- Hệ thống mail cần phải có bộ phận rà lọc thông tin kỹ lưỡng. Nên nhớ, không phải lúc nào antivirus cũng có thể tóm được những malware mới. Bởi vậy, mail đi vào công ty cần phải xét kỹ xuất xứ trước khi xét đến tin đính kèm.



Việc "chữa cháy" có hai khía cạnh khác:
a. Máy con trong LAN bị biến thành zombies và bắt đầu tấn công thiên hạ.
b. Tìm và diệt zombies.

Thông thường, zombies dùng cho mục đích DDoS (hầu hết zombies ngày nay có mục đích này) cho nên sự thay đổi trong lưu lượng truy cập Internet sẽ nhảy vọt. Nếu sử dụng proxy trong LAN thì sẽ thấy những chuỗi requests đến một số websites với tầng số cao. Trước hết, block ngay các traffic ấy (nếu dùng squid thì có thể dễ dàng block bằng ACL, nếu có kèm theo firewall nào đó thì tìm cách block dst-ip [địa chỉ IP của nạn nhân đang bị tấn công]).

Cũng xuyên qua proxy logs, bạn có thể xác định máy nào trong LAN đã "dội bom" ra bên ngoài. Nếu được, nên tạo một "disk image" của hard disk này và gởi đến nhóm chuyên gia malware nào đó để nhờ họ phân tích (nếu antivirus không detect được). Nếu không, nên format lại disk và cài lại máy trọn bộ cho an toàn.

Nếu sự dụng proxy cho LAN, có thể setup proxy "mở cửa" và "đóng cửa" theo giờ làm việc thông thường của công ty (hoặc ít ra theo giờ giấc mà hầu hết nhân viên công ty có mặt và bạn có thể kiểm soát).


(Sưu tầm)

Thứ Tư, 23 tháng 3, 2011

Lý tưởng khoa học
SGTT.VN - Khi xây dựng lý thuyết khoa học, nhà khoa học theo đuổi những mục đích nhất định. Nhưng, bao trùm những mục đích ấy lại là những lý tưởng lý thuyết và thực hành; chúng mang lại ý nghĩa cho hoạt động khoa học. Người ta thường kể ra sáu “lý tưởng”: tính chân lý, tính giản dị, tính mạch lạc, năng lực giải thích, năng lực tiên đoán và năng lực hành động.
“Tiệm cận” và con đường ngắn nhất
Lý tưởng rõ ràng nhất là tính chân lý. Kỳ cùng, mục tiêu hàng đầu của mọi nỗ lực nghiên cứu khoa học là cung cấp một sự mô tả đúng đắn về những gì thực sự diễn ra. Những khẳng định như “hôm nay trời sẽ mưa” chỉ đòi hỏi một phương pháp kiểm chứng đơn giản để biết đúng hay sai. Thế nhưng, khó khăn lớn đối với lý tưởng hàng đầu này ở chỗ không phải lúc nào cũng có thể đạt được kết quả “đúng” hoặc “sai” một cách đơn giản. Lý do thường gặp: các lý thuyết khoa học hoặc quá tổng quát nên khó kiểm chứng, nhất là đối với những đối tượng khó quan sát chính xác, hoặc đơn giản chỉ vì chúng quá phức tạp hay mơ hồ.
Chính vì thế, các nhà khoa học luận thường sử dụng khái niệm “tính tiệm cận chân lý” hay tính gần đúng. Karl Popper luôn viện dẫn khái niệm này trong học thuyết kiểm sai của ông đối với sự phát triển khoa học (Sài Gòn Tiếp Thị, Khoa học phát triển như thế nào?, 22.2.2011). Theo Popper, mức độ tiệm cận của một lý thuyết là phạm vi mà lý thuyết ấy tỏ ra tương ứng với tổng thể những sự kiện, hơn là với một số sự kiện cá biệt. Một lý thuyết là “sai” hiển nhiên, theo nghĩa nó vấp phải những trường hợp bị phản chứng, nhưng vẫn có thể được xem là một sự tiệm cận chân lý khá tốt, vì nó giải thích được rất nhiều sự kiện khác. Chẳng hạn, theo Popper, cơ học Newton, tuy có nhiều chỗ không phù hợp đối với những vật thể quá nhỏ, vẫn được xem là ưu việt hơn lý thuyết của Galileo, bởi nó có thể giải thích được nhiều sự kiện hơn, ở phạm vi rộng lớn hơn và hợp nhất được cơ học mặt đất và cơ học bầu trời vốn trước đó còn bị tách rời. (Tất nhiên, ta nhớ rằng các nhà công cụ luận có thể vẫn không chịu thừa nhận chân lý và sự tiệm cận chân lý là mục đích của khoa học!)
Một nguyện vọng khác của lý thuyết khoa học là tính giản dị. Mức độ của tính giản dị trong một lý thuyết là ở chỗ có nhiều khái niệm được phân biệt minh bạch, những giả định, những định luật gọn gàng và “trang nhã” để dễ rút ra những tiên đoán. Công thức nổi tiếng e = mc2 của Einstein là một ví dụ điển hình. “Nếu trước mặt bạn có nhiều con đường và bạn muốn mau đến đích, chẳng ai hỏi tại sao bạn lại chọn con đường ngắn nhất! Ta chọn lý thuyết giản dị nhất, không hẳn vì nó có vẻ đúng nhất mà vì nó là hợp lý nhất. Ta chuộng tính giản dị và hy vọng vào chân lý” (Nelson Goodman, 1972).
Tính mạch lạc và khó khăn của nó
Các nhà khoa học cũng mong muốn lý thuyết của mình tỏ rõ tính mạch lạc, nhất quán. Tính mạch lạc của một lý thuyết thể hiện ở mức độ tương thích với những lý thuyết khác có liên quan. Ngay trong đời sống thường ngày, ai cũng thấy “giả thuyết” rằng trời đang mưa tương thích với việc chiếc áo mưa ướt sũng hơn là với việc tôi không thích mặc áo mưa hay 2 + 2 = 4! Nếu có hai giả thuyết giải thích cùng một hiện tượng, có năng lực tiên đoán gần như nhau, thì nhà khoa học luôn ưa chuộng giả thuyết nào có mức độ nhất quán nhiều hơn (với các lý thuyết khác đã được biết trước đó).
Tuy nhiên, dù giữ vai trò khá quyết định trong việc xác định giá trị của lý thuyết, tính mạch lạc cũng gặp không ít khó khăn khi ta muốn đưa ra đánh giá về nó. Thứ nhất, tiêu chuẩn về tính mạch lạc có khi không song hành với tiêu chuẩn về tính chân lý: một lý thuyết có thể hết sức mạch lạc, nhất quán nhưng vẫn có thể là sai, bởi nó không tương ứng với thực tại. Sau nữa, bản thân tiêu chuẩn này cũng có tính lẩn quẩn. Nếu tính mạch lạc của một lý thuyết thể hiện ở mức độ tương thích với những lý thuyết khác, và nếu tính mạch lạc của chính những lý thuyết khác này cũng được đánh giá dựa vào tính mạch lạc của chúng với lý thuyết ban đầu, có khi người ta không biết phải sử dụng lý thuyết nào làm lý thuyết xuất phát! Thêm vào đó, bản thân khái niệm “tính mạch lạc” cũng khá mơ hồ. Phải chăng đó chỉ là tính mạch lạc logic? Hay chính nhờ sự mạch lạc với các lý thuyết khác mà một giả thuyết tỏ ra khả tín?
Sức cám dỗ của kinh nghiệm thực hành
Thí nghiệm làm giàu kiến thức. Sùng tín dẫn đến sai lầm.
Châm ngôn Árập
Yêu cầu cốt lõi đối với một lý thuyết khoa học là ở năng lực giải thích và tiên đoán của nó. Ta muốn biết tại sao sự việc nào đó lại xảy ra, nghĩa là, đồng thời muốn biết tại sao những sự việc khác lại không xảy ra. Chính vì thế, dường như có một sự đối xứng giữa năng lực giải thích và năng lực tiên đoán khoa học. Trong sự giải thích khoa học, ta biết lý do tại sao điều gì đó phải xảy ra. Còn trong sự tiên đoán khoa học, ta được cho biết điều gì đó sẽ xảy ra. Nói theo thuật ngữ nổi tiếng của Hempel và Oppenheimer (thường được viết tắt là “sơ đồ H-O”) về mô hình diễn dịch – giả thuyết, trong sự giải thích khoa học, ta đã biết “cái cần được giải thích” và cố gắng đi tìm cho nó “cái dùng để giải thích”. Ngược lại, trong sự tiên đoán, ta đã biết “cái dùng để giải thích” và muốn biết cái gì sẽ xảy ra (tức “cái cần được giải thích”).
Tóm lại, khoa học được đánh giá bằng năng lực áp dụng thực hành của nó, nghĩa là, những hành động nào ta có thể làm được trên cơ sở của những sự giải thích và tiên đoán. Tuy nhiên, năng lực thực hành bao giờ cũng là một sự cám dỗ nguy hiểm. Ta nhớ đến nhận định đáng giá sau đây của Michael Polanyi (1891 – 1976), nhà khoa học có nhiều đóng góp đa dạng trên nhiều lĩnh vực: vật lý, hoá học, kinh tế, triết học: “Hầu hết những sai lầm mang tính hệ thống thường lừa dối con người suốt hàng mấy ngàn năm đều dựa vào kinh nghiệm thực tiễn. Trước khi nền y học hiện đại ra đời, chiêm tinh, bói toán, ma thuật, phù thuỷ, chữa bệnh theo kiểu bí thuật đều được xác lập vững chắc qua nhiều thế kỷ trước mắt công chúng nhờ vào những thành công tưởng như rất hiển nhiên của chúng trong thực tế. Do đó, phương pháp khoa học hiện đại thực ra chẳng làm việc gì khác hơn là tiến hành giải thích và tiên đoán dựa trên những điều kiện được kiểm tra thận trọng hơn và những tiêu chuẩn nghiêm ngặt hơn so với những gì đã diễn ra trong thực tế trước đây” (Tri thức con người, 1958).
(còn tiếp)
Bùi Văn Nam Sơn - Minh hoạ: Hồng Nguyên
Theo Saigontiepthi