banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành Windows Tự tạo sever hoàn chỉnh và bảo mật - Phần 1  XML
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 28/08/2009 18:33:57 (+0700) | #1 | 191354
[Avatar]
Mr.Kas
Member

[Minus]    0    [Plus]
Joined: 22/07/2009 14:36:56
Messages: 209
Offline
[Profile] [PM]
Được viết bởi Mr.Kas @ HVA (HVAOnline.net)
Copyright © 2009 Mr.Kas
“You have the rights to copy”
“Dành cho người mới, và rất rất mới ...”

Mở đầu:

- Bạn đang có một máy vi tính cũ và cấu hình không đủ mạnh để chơi Games hay là đáp ứng nhu cầu giải trí đa phương tiện, và bạn nãy ra ý định tận dụng cái máy ấy để tự xây dựng một trang web riêng trên một sever, hoặc bạn đang làm việc cho một doanh nghiệp nhỏ và với sự phát triển của Internet, doanh nghiệp bạn nhận ra lợi thế khi sử dụng các phương tiện quản cáo trên Internet, chắc chắn sẽ thu được kết quả cao hơn việc quản cao bằng các phương tiện truyền thống.

- Trong cả hai trường hợp trên, điều bạn cần là một web site cho doanh nghiệp hoặc là một forum do chính bạn tự tạo ra và bạn tự vận hành nó với quyền admin. Và ý định của tớ là giúp các bạn tận dụng những gì sẵn có và tiết kiệm nhất để có thể đáp ứng những đòi hỏi của các bạn. Hôm nay tớ xin viết một bài về thiết lập một web site hoặc một forum tự tạo chạy trên một sever riêng của bạn. Kèm với đó là những kĩ thuật bảo mật cơ bản và hạn chế sự tấn công từ hacker.

(Trong bài viết này sẽ hạn chế trình bày hình ảnh, lí do vì khi upload ảnh lên net thì ảnh chỉ tồn tại được một thời gian rồi die, thế nên không giữ bài viết toàn vẹn được. Nhưng trong những trường hợp cần thiết, tớ sẽ kèm hình ảnh minh họa).

- Với tiêu chí chung khi viết hướng dẫn của tớ là “Dành cho người mới, và rất rất mới ...” nên một số bước trong này sẽ được trình bày rất kĩ, nếu bạn đã có kinh nghiệm trong các bước này rồi thì bạn có thể đọc lướt qua.

Chuẩn bị:

- Một máy tính có cấu hình đủ để chạy Windows Sever 2003 (HDD, RAM, CPU, ...)
- Một chiếc đĩa Windows Sever 2003 (Sỡ dĩ tớ chọn windows 2003 vì Windows 2003 tương đối dễ cấu hình, hỗ trợ phần - cứng và tương thích hơn Windows Sever 2008 rất nhiều)
- Một cái modem hoặc thiết bị tương tự có nhiều hơn 2 port để cho phép kết nối ra ngoài Internet.
- Thời gian và sự kiên nhẫn.
- Và một vài thứ khác mà trong lúc làm chúng ta sẽ tự thêm sau.

Tiến hành:

Phần 1: Chuẩn bị một sever sẵn sàng để đáp ứng nhu cầu của bạn.


Bước 1: Cài đặt Windows Sever 2003 và cấu hình mạng.

- Các bạn tiến hành cài đặt Windows Sever 2003 như Windows XP, lưu ý phần password admin bạn nên điền theo đúng quy tắc an toàn là có cả chữ số, số và một vài kí tự đặt biệt như !@#$%^&*{}[] …

- Phần cài đặt các thông số Network (nếu Windows ngay lập tức nhận ra Network Card của bạn, nếu là Card onboard thì sẽ có thể không có phần này), Tại bước “Workgroup or Computer Domain”, chọn “No, this computer is not on a network...”. Trong text box WORKGROUP nhận vào khoảng trắng (Alt-255)

- Sau khi cài đặt xong Windows 2003, việc tiếp theo của bạn là phải làm cho Sever có thể kết nối vào mạng và bên ngoài có thể truy cập vào bên trong Sever. Để làm được việc này, bạn phải login vào trong modem/router để sử dụng chức năng NAT của modem/router đó, chức năng NAT cho phép những gói tin ngoài Internet có thể vào trong LAN và tới một máy tính được bạn định dạng sẵn, gói tin này muốn vào trong phải qua port mà bạn open khi NAT, trong trường hợp của chúng ta, bạn open port 80 và cho Nat trỏ về LAN IP (private IP) của Sever đã cài Windows 2003.

Để tìm hiểu thêm về Nat, bạn có thể tham khảo ngay những bài viết trong diễn đàn HVA này, bạn phải chịu khó tìm một tí thì sẽ ra và sẽ hiểu hơn về cơ chế Nat, còn nếu không bạn có thể search google với keyword là “Nat là gì”.

Bước 2: Login vào Windows và cài đặt Web Sever

Lưu ý: Hiện nay ASP đã ít thông dụng hơn PHP, vì vây mà trong phần này tớ sẽ hướng dẫn tạo Web Sever cho phép chạy các applications viết bằng ngôn ngữ PHP + hệ quản trị cơ sở dữ liệu MySQL.

- Dùng IIS + PHP

- Tiến hành cài đặt IIS: Vào Start => Control Panel => Add/Remove Programs => Add/Remove Windows Components Và sau đó đánh dấu chọn vào phần Internet Informations Services (IIS) => Ok.

- Nếu sau khi cài đặt xong Windows 2003 đã có IIS thì bạn khỏi cần tiến hành bước cài đặt IIS này, mà thay vào đó là vào trong IE gõ vào thanh address của nó là “localhost”, nếu một trang mới hiện ra có nội dung giới thiệu về IIS thì có nghĩa là IIS đã có sẵn trên máy bạn và đang chạy như một dịch vụ của hệ thống, bạn có thể dùng ngay nó.

- Sau khi cài đặt xong IIS, bạn tiến hành vào trong đường dẫn sau để Download PHP: http://www.php.net/downloads.php nhớ là chọn phần Windows Binaries và chọn gói mới nhất của PHP để download.

- Tiếp đó, bạn tiến hành Download MySQL trên trang chủ của MySQL, link download MySQL : http://dev.mysql.com/downloads/mysql/5.4.html

Sau khi download cả hai về máy, bạn tiến hành cài đặt cả hai vào trong máy.

Chú ý khi cài đặt MySQL, bạn cài đặt theo hướng dẫn sau:

Click vào trong file Setup chọn “next >” => Chọn Typical => “next >” => “next >” => Install

Sau khi install xong, sẽ có thông báo yêu cầu config MySQL, bạn tiến hành làm theo cách sau đây: Chọn Skip Sign-Up => Chọn vào trong Configure the MySQL Sever now => Fnish.

- Giờ tiến hành Config: Bạn chọn “Next >” => Chọn Detailed Configuration => “next >” => Chọn Sever Machine => “Next >” => Chọn Multifunctional Database => “Next >” => “Next >” => Decision Support (DDS)/OLAP => “Next >” =>

Chọn Enable TCP/IP Networking, tại Port number chọn 3306. => “Nex >” => Chọn Standard Charcter Set => “next >” => Chọn vào cả Install As Windows Sevice và Include Bin Directory in Windows PATH => “Next >” => Chọn Medify Security Setting, điền Password vào trong ô Password. => “Next >” => Execute

- Vậy là chúng ta đã xong phần cài đặt và cấu hình MySQL, khá vất vả, nhưng bạn chịu khó vậy.

- Sau khi cài đặt xong PHP và SQL, công việc kế tiếp của chúng ta là cho phép PHP + MySQL hoạt động trên IIS.

- Sau khi download và cài đặt PHP + MySQL, bạn tiến hành chỉnh sửa lại một tí. Bạn vào My Computer => Property => Tab Advance => Environment Variables => Path => Edit > Thêm C:\[path] với [path] là đường dẫn đến nơi Php vừa được cài đặt trong máy tính của bạn và bạn thêm cả C:\[path]\mySQL\bin vào sau nếu chưa có path này, mỗi path cách nhau bằng một dấu “;” [path] cũng chính là đường dẫn đến nơi mysql được cài đặt .

Sau đó restart lại máy tính của bạn.

- Sau đó bạn vào trong thư mục cài đặt Php copy file php4isapi.dll ra ngoài thư mục gốc C:\[pact to PHP]\ . Tiếp theo bạn chuyển tên file php.ini-dist thành php.ini.

- Vào Start > Run > gõ php.ini. Nếu báo lỗi nghĩa là bước Variables Path chưa thành công, cần kiểm tra lại. Edit vài thông số trong php.ini lại, cụ thể tìm dòng extension_dir = thay thành dòng extension_dir = "C:\[path to php]\Extensions” và save file php.ini lại.

- Giờ chỉnh IIS để nó có thể chạy php.

- Vào trong Start => Administrative Tool => Internet Information Services (IIS) Manager

- Chọn Defaults Web Site => Defautlts Web Site Propertices => Home Directory => Add...

- Tại Executable điền vào path dẫn đến file php4isapi.dll. Chọn vào trong All verbs, chọn Scrip Engine và Verify that file exists. Sau đó chọn OK. Restart lại IIS.

- Cũng ở Internet Information Services (IIS) Manager => Chọn Web Service Extension => Add new web service extension. Phần extension ghi vào là PHP ISAPI, chọn vào trong Set extension … và click vào trong All... xuất hiện hộp thoại mới. Chọn Browse... chọn path đến file php4isapi.dll và chọn Ok.

- Sau đó restart lại IIS.

Để kiểm tra PHP đã hoạt động bằng cách tạo một file với nội dung như sau

Code:
<?php
phpinfo();


save lại với tên phpinfo.php và đặt vào folder C:\Inetpub\wwwroot\

Mở IE, gõ http://localhost/phpinfo.php. Nếu IE hiển thị nội dung như hình bên dưới là bạn đã thành công.




- Nếu IE báo lỗi "The page cannot be found", chúng ta cần kiểm tra lại permission của file php4isapi.dll. Mở C:\PHP, chọn file php4isapi.dll > chọn Property. Kiểm tra các user cần thiết như NETWORK SERVICE, ISUR_computername, đã có quyền read ? Nếu không có, các bạn sẽ phải add vào. Xem hình bên dưới :




- Sau khi add permission, các bạn thử lại sẽ thành công. Nếu vẫn còn báo lỗi khác, các bạn có thể post lỗi lên đây, mọi người sẽ giúp các bạn.

- Để kiểm tra PHP và MySQL đã hoạt động tốt. Cách đơn giản nhất là check phpinfo. Nếu bạn có được kết quả như hình bên dưới nghĩa là bạn đã thành công




- Dùng Apache + PHP.

- Nếu trong máy có sẵn IIS, bạn cần tắt nó đi hoặc là xóa nó, hoặc là đổi port của nó, nhưng theo tớ thì nên tắc nó. Bạn tiến hành theo các bước để tắt nó: Vào Start => Control Panel => Add/Remove Programs => Add/Remove Windows Components Và sau đó bỏ dấu chọn vào phần Internet Informations Services (IIS) => Ok.

- Sau khi xóa xong, bạn tiến hành cài đặt Apache và PHP, thường thì mọi người chọn giải pháp là cài đặt từng thành phần PHP, SQL, Apache. Nhưng tớ thì tớ chọn giải pháp mì ăn liền, có nghĩa là thay vì chọn từng cái, tớ sẽ chọn 1 gói phần mềm bao gồm cả 3 món đó và tiến hành cài đặt nó. Và gói phần mềm tớ muốn giới thiệu với các bạn ở đây là XAMPP.

- Bạn có thể Download XAMPP tại địa chỉ: http://www.apachefriends.org/en/xampp-windows.html , download và cài đặt nó như một phần mềm. XAMPP gồm có các phần râu ria sau: Apache, MySQL, PHP + PEAR, Perl, mod_php, mod_perl, mod_ssl, OpenSSL, phpMyAdmin, Webalizer, Mercury Mail Transport System for Win32 and NetWare Systems v3.32, Ming, JpGraph, FileZilla FTP Server, mcrypt, eAccelerator, SQLite, and WEB-DAV + mod_auth_mysql.

- Sau khi cài đặt xong, bạn vào trong IE, gõ vào trong address là localhost, nếu xuất hiện màng hình welcome thì bạn thành công rồi đấy. Giờ chúng ta cùng nghía 1 tí qua XAMPP.

\xampp\apache\conf\httpd.conf => nơi chứa file config cho apache.

\mysql\bin\my.ini => nơi chứa file config cho mySQL

\xampp\php\php.ini => nơi chứa file config cho PHP
Và vài phần phụ mà bạn có thể xem thêm qua tại : http://www.apachefriends.org/en/xampp-windows.html

- Giờ chúng ta cùng tìm hiểu một tí về httpd.conf. Các bạn chỉ cần chú ý vài điểm cơ bản sau: (những thiết lập khác bạn có thể xem thông tin giải thích – viết bằng tiếng anh – ngay trên thiết lập đó):

ServerRoot : đây là nơi mà Apache cài đặt. Bạn đừng có đổi nó.

Timeout 300 : thiết lập này định thời gian Timeout mà server nhận trả lời.

listen 80 : Đây là port mà apache đang lắng nghe, nếu bạn nên để là 80, vì 80 là port mặc định cho các ứng dụng web.

LoadModule : đây là thông báo những modue đang được kích hoạt. Khi thêm module cho Apache, bạn sẽ kích hoạt nó tại đây. Ngay tại đây, bạn cần cài thêm vào mod_security (sẽ đề cập sau).

ServerName, ServerAdmin: Giữ nguyên thông số.

DocumentRoot
: thư mục web chủ. Nơi mà bạn đặt các trang web. Bạn có thể thay đổi, nhưng theo mình là không nên (vì không cần thiết).

DirectoryIndex index.php index.html index.html.var : khi truy cập vào trong một folder trên Sever thì những tập tin được kèm theo sau sẽ load, nếu trường hợp không có tập tin tương ứng thì apache sẽ list toàn bộ những tập tin đang có trong fordel trên.

AccessFileName .htaccess : cho phép chạy .htaccess.

- Việc tìm hiểu về file php.ini tớ nghĩ là không cần, vì vậy nếu các bạn muốn tìm hiểu thêm các bạn có thể tự tìm trên google.

= Done =

Vậy là chúng ta xong phần 1 của loạt bài viết. Ở phần sau tớ sẽ trình bày thêm những vấn đề khác. Cụ thể ở phần 2, tớ sẽ trình bày việc cài đặt thêm các forum, website, các chương trình khác trên sever và phân quyền trên sever. Kèm với đó là việc tối ưu các giao thức mà sever đang dùng + cấu hình IIS nâng cao một tí.

/hvaonline/posts/list/0/31022.html#191437
Treo chuột, gác phím, cất modem, cắt NET. Lên núi luyện công chờ ngày trở lại ...
[Up] [Print Copy]
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 02/09/2009 10:26:25 (+0700) | #2 | 191756
ttbenle
Member

[Minus]    0    [Plus]
Joined: 01/09/2009 10:22:53
Messages: 3
Offline
[Profile] [PM]
Bài của bạn rất hay. Rất cám ơn.
[Up] [Print Copy]
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 12/09/2009 11:27:33 (+0700) | #3 | 192522
o0badboy0o
Member

[Minus]    0    [Plus]
Joined: 17/07/2009 14:57:37
Messages: 7
Offline
[Profile] [PM]
anh ơi cho e hỏi là sau khi làm như vậy thì ng ta truy cập vào web server mình = tên gì??? không lẽ mình cho ng ta ip public ah?
[Up] [Print Copy]
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 12/09/2009 11:44:41 (+0700) | #4 | 192525
[Avatar]
Ikut3
Elite Member

[Minus]    0    [Plus]
Joined: 24/09/2007 23:47:03
Messages: 1429
Location: Nhà hát lớn
Offline
[Profile] [PM] [Yahoo!]
anh ơi cho e hỏi là sau khi làm như vậy thì ng ta truy cập vào web server mình = tên gì??? không lẽ mình cho ng ta ip public ah?  


Bạn cấu hình Nat trong MODEm của bạn .Chỉ rõ đúng IP local của máy bạn .Open Port cổng mấy , mặc định là 80 . Sau đó dùng đến giải pháp Dyndns để kiếm 1 tên miền động

Tham khảo thêm ở đây http://dalat.wordpress.com/2007/05/01/cach-t%E1%BA%A1o-home-server-gi%E1%BA%A3i-phap-cho-c%C6%A1n-khat-hosting/

p/s : khuyến khích đồng chí Kas viết thêm 1 bài làm home server ^^
[Up] [Print Copy]
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 12/09/2009 13:35:24 (+0700) | #5 | 192535
smile_sad
Member

[Minus]    0    [Plus]
Joined: 15/08/2006 19:15:08
Messages: 96
Offline
[Profile] [PM]
Win2k3 server vẫn nên chạy ở cấu hình tốt nhất có thể. Chứ ko phải tối thiểu để giảm chi phí như bạn Kas đã nói.

Thêm 1 chú ý nữa là nên sử dụng bản Enterprise chứ ko nên xài mấy bản khác.

Việc phát triển 1 website cá nhân tại nhà với cấu hình như trên thì website của bạn sẽ rất ít người biết đến. Nếu bạn mạnh dạn quảng cáo nó cho nhiều người thì ....... smilie
[Up] [Print Copy]
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 12/09/2009 21:16:51 (+0700) | #6 | 192549
[Avatar]
WhySoSerious
Member

[Minus]    0    [Plus]
Joined: 11/09/2009 01:18:49
Messages: 5
Offline
[Profile] [PM]
Thankz bạn smilie Bài viết rất hay smilie
[Up] [Print Copy]
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 13/09/2009 00:12:19 (+0700) | #7 | 192568
[Avatar]
Mr.Kas
Member

[Minus]    0    [Plus]
Joined: 22/07/2009 14:36:56
Messages: 209
Offline
[Profile] [PM]

smile_sad wrote:
Win2k3 server vẫn nên chạy ở cấu hình tốt nhất có thể. Chứ ko phải tối thiểu để giảm chi phí như bạn Kas đã nói.

Thêm 1 chú ý nữa là nên sử dụng bản Enterprise chứ ko nên xài mấy bản khác.

Việc phát triển 1 website cá nhân tại nhà với cấu hình như trên thì website của bạn sẽ rất ít người biết đến. Nếu bạn mạnh dạn quảng cáo nó cho nhiều người thì ....... smilie  


- Dĩ nhiên là thế, nếu có một máy tính cấu hình rất good thì không sao, nhưng chỉ có một máy không có cấu hình cao thì cũng không thành vấn đề.

- Thậm chí có thể dùng Windows XP nếu muốn, không nhất thiết là Windows Sever 2003.

- Vấn đề DDOS thì trên Forum cũng có trình bày nhiều rồi. Nếu là làm Web site cho doanh nghiệp hoặc các Ngân Hàng thì tự config xong thuê hẳng một nơi trong các trung tâm data để họ vận hành máy chủ giúp mình, mình sẽ ngồi nhà remote. Và khi nào cần làm việc trực tiếp thì lên chỗ máy chủ đăt để làm việc.
Treo chuột, gác phím, cất modem, cắt NET. Lên núi luyện công chờ ngày trở lại ...
[Up] [Print Copy]
  [Article]   Tự tạo sever hoàn chỉnh và bảo mật - Phần 1 13/09/2009 03:36:55 (+0700) | #8 | 192591
smile_sad
Member

[Minus]    0    [Plus]
Joined: 15/08/2006 19:15:08
Messages: 96
Offline
[Profile] [PM]

Mr.Kas wrote:


- Dĩ nhiên là thế, nếu có một máy tính cấu hình rất good thì không sao, nhưng chỉ có một máy không có cấu hình cao thì cũng không thành vấn đề.

- Thậm chí có thể dùng Windows XP nếu muốn, không nhất thiết là Windows Sever 2003.

- Vấn đề DDOS thì trên Forum cũng có trình bày nhiều rồi. Nếu là làm Web site cho doanh nghiệp hoặc các Ngân Hàng thì tự config xong thuê hẳng một nơi trong các trung tâm data để họ vận hành máy chủ giúp mình, mình sẽ ngồi nhà remote. Và khi nào cần làm việc trực tiếp thì lên chỗ máy chủ đăt để làm việc. 


Bạn sử dụng OS nào làm home server ko thành vấn đề. Ý mình tham gia topic này là nói lên hạn chế của việc tiết kiệm chi phí đem lại. Nếu như ko có cấu hình tốt đồng nghĩa với với việc bạn ko thể có 1 line ADSL tốt. Như vậy khi bạn phát triển website đương nhiên băng thông ko đủ. Ở đây mình cũng chưa đề cập gì đến DDos cả smilie Còn nếu bạn có điều kiện thuê máy chủ ở data center thì ko còn gì phải bàn smilie
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|