Trao đổi với tôi

http://www.buidao.com

6/12/10

Net] Cấu hình HomeSever - Toàn tập

Chương 0:

- CONFIG HOMESERVER.


::. Project này hướng dẫn tự làm một Homeserver và cấu hình Homeserver chạy trên Domain thật. .::

::. Cấu hình Bảo mật tối ưu nhất cho Server của mình. .::

Yêu Cầu:

1. Máy tính có nối mạng Internet.
2. Có tối thiểu một Domain thật.

1. Domain name là gì?
Như chúng ta đã biết Internet là một mạng máy tính toàn cầu, do hàng nghìn mạng máy tính từ khắp mọi nơi nối lại tạo nên. Khác với cách tổ chức theo các cấp: nội hạt, liên tỉnh, quốc tế của một mạng viễn thông như mạng thoại chẳng hạn, mạng Internet tổ chức chỉ có một cấp, các mạng máy tính dù nhỏ, dù to khi nối vào Internet đều bình đẳng với nhau. Do cách tổ chức như vậy nên trên Internet có cấu trúc địa chỉ, cách đánh địa chỉ đặc biệt, rất khác cách tổ chức địa chỉ của mạng viễn thông.

Địa chỉ Internet (IP) đang được sử dụng hiện tại là (IPv4) có 32 bit chia thành 4 Octet ( mỗi Octet có 8 bit, tương đương 1 byte ) cách đếm đều từ trái qua phải bít 1 cho đến bít 32, các Octet tách biệt nhau bằng dấu chấm (.) và biểu hiện ở dạng thập phân đầy đủ là 12 chữ số.
Ví dụ một địa chỉ Internet: 146.123.110.224
(Địa chỉ IP tương lai được sử dụng là IPv6 có 128 bit dài gấp 4 lần của IPv4. Version IPv4 có khả năng cung cấp 232 = 4 294 967 296 địa chỉ. Còn Version IPv6 có khả năng cung cấp 2 128 địa chỉ ).
Do người sử dụng nhớ được địa chỉ dạng chữ số dài như vậy khi nối mạng là rất khó khăn và vì thế cạnh địa chỉ IP bao giờ cũng có thêm một cái tên mang một ý nghĩa nào đó, dễ nhớ cho người sử dụng đi kèm mà trên Internet gọi là Tên Miền. Ví dụ: Máy chủ Web Server của VNIT đang chứa Báo Quê hương có địa chỉ là 203.162.000.012, tên Miền của nó là quehuong.vnitweb.com. Thực tế người sử dụng không cần biết đến địa chỉ IP mà chỉ cần nhớ tên Miền là truy nhập được.
Vậy tên Miền là một danh từ dịch theo kiểu nghĩa của từng từ một (Word by Word) từ tiếng anh (Domain name). Thực chất tên miền là sự nhận dạng vị trí của một máy tính trên mạng Internet nói cách khác tên miền là tên của các mạng lưới, tên của các máy chủ trên mạng Internet.
Do tính chất chỉ có 1 và 1 duy nhất trên Internet, bạn không thể đăng ký được Domain name khi mà người khác đã là chủ sở hữu. Nếu bạn cần đăng ký 1 domain name tương ứng với tên doanh nghiệp của bạn trên Internet, hãy kiểm tra và đăng ký ngay lập tức trước khi người khác đăng ký mất tên miền đó của bạn.
2. Cấu tạo của tên miền?
Tên miền bao gồm nhiều thành phần cấu tạo nên cách nhau bởi dấu chấm (.) ví dụ home.vnitweb.com là tên miền máy chủ Web của VNIT. Thành phần thứ nhất “home” là tên của máy chủ, thành phần thứ hai “vnitweb” thường gọi là tên miền mức hai (second domain name level), thành phần cuối cùng “com” là tên miền mức cao nhất (top level domain name).
1/ Tên miền mức cao nhất (Top- level Domain “TLD”) bao gồm các mã quốc gia của các nước tham gia Internet được quy định bằng hai chữ cái theo tiêu chuẩn ISO -3166 như Việt nam là VN, Anh quốc là UK v.v.. và 7 lĩnh vực dùng chung (World Wide Generic Domains), trong đó có 5 dùng chung cho toàn cầu và 2 chỉ dùng ở Mỹ.
a/ Dùng chung.
1- COM : Thương mại ( Commercial)
2- EDU : Giáo dục ( education )
3- NET : Mạng lưới ( Network )
4- INT : Các tổ chức quốc tế ( International Organisations )
5- ORG : Các tổ chức khác ( other orgnizations )
b/ Dùng ở Mỹ
6- MIL : Quân sự ( Military )
7- GOV : Nhà nước ( Government )
2/ Tên miền mức hai ( Second Level ) : Đối với các quốc gia nói chung tên miền mức hai này do Tổ chức quản lý mạng của quốc gia đó định nghĩa, có thể định nghĩa khác đi, nhiều hơn hay ít đi nhưng thông thường các quốc gia vẫn định nghĩa các Lĩnh vực kinh tế, xã hội của mình tương tự như 7 lĩnh vực dùng chung nêu trên.
3. Các loại Domain name?
Domain name cấp cao nhất
Domain name cấp cao nhất là tên miền bạn đăng ký trực tiếp với các nhà cung cấp Domain name. Theo sau ngay phần tên bạn tùy chọn là phần TLD (Top Level Domain) có dạng: .com, .net, .org, .gov, .edu, .info, .tv, .biz,… hoặc các TLD kết hợp với ký hiệu viết tắt của quốc gia: .com.vn, .net.vn, .org.vn, .gov.vn,…
Ví dụ:
www.vnitweb.com
www.chanhqua.vn
www.nickquang.com
Được coi là các tên miền cấp cao nhất. Các tên miền cấp cao nhất thể hiện sự chuyên nghiệp và uy tín trong kinh doanh trên Internet của các doanh nghiệp.
Domain name thứ cấp
Là tất cả những loại Domain name còn lại mà domain đó phải phụ thuộc vào một Domain name cấp cao nhất. Để đăng ký các Domain name kiểu này, thông thường bạn phải liên hệ trực tiếp với người quản lý Domain name cấp cao nhất.
Ví dụ:
http://home.vnitweb.com
Được coi là những tên miền thứ cấp.
4. Web Hosting là gì?
Web Hosting là nơi lưu trữ tất cả các trang Web, các thông tin, tư liệu, hình ảnh của Website trên một máy chủ Internet, Web Hosting đồng thời cũng là nơi diễn ra tất cả các hoạt động giao dịch, trao đổi thông tin giữa Website với người sử dụng Internet và hỗ trợ các phần mềm Internet hoạt động. Nói một cách đơn giản, Web Hosting tương đương với trụ sở làm việc của một doanh nghiệp trong đời thường
5. Các yêu cầu và tính năng của Web Hosting?
· Web Hosting phải có một dung lượng đủ lớn (tính theo MBytes) để lưu giữ được đầy đủ các thông tin, dữ liệu, hình ảnh,… của Website
· Phải hỗ trợ truy xuất máy chủ bằng giao thức FTP để cập nhật thông tin
· Phải có bandwidth (băng thông) đủ lớn để phục vụ các hoạt động giao dịch, trao đổi thông tin của Website
· Hỗ trợ các công cụ lập trình phần mềm trên Internet và các công cụ viết sẵn để phục vụ các hoạt động giao dịch trên Website như gửi mail, upload qua trang Web,…
· Hỗ trợ đầy đủ các dịch vụ E-mail như POP3 E-mail, E-mail Forwarding,…
· Không bị chèn các banner quảng cáo của nhà cung cấp.
6. Sự liên kết giữa Domain name và Web Hosting - Domain Name Servers (DNS)
Việc liên kết giữa Domain name và Web Hosting để tạo ra một nền móng cho Website đòi hỏi phải có một yếu tố trung gian trên Internet, đó chính là DNS Name Servers (các máy chủ phân giải tên).
Mỗi nhà cung cấp Web Hosting sẽ có một DNS riêng để làm nhiệm vụ nối kết giữa Domain name với Web Hosting bạn đã đăng ký. Khi bạn đăng ký dịch vụ Web Hosting, người ta sẽ cung cấp cho bạn các địa chỉ và dãy số IP để bạn trỏ Domain name của bạn tới. Thông thường, các dãy này được chia làm 2 phần, dãy thứ nhất gọi là Primary DNS, dãy tiếp theo (có thể từ 1 đến 5 dãy) sẽ là Secondary DNS.
Ví dụ:
Primary DNS: NS1.VNIT.COM 66.246.37.106
Secondary DNS: NS2.VNIT.COM 66.246.37.107
Khi có được các địa chỉ và dãy số IP này, bạn chỉ cần khai báo trong hệ thống quản lý Domain name của bạn (điền địa chỉ hoặc dãy số IP hoặc cả 2 tùy theo yêu cầu), Domain name sẽ tự động liên kết với Web Hosting trong vòng 24 giờ đồng hồ.
7. Các dịch vụ của Domain Name Servers (DNS) trong trường hợp không có Web Hosting
Trong trường hợp khách hàng không đăng ký Web Hosting, các nhà cung cấp Domain name sẽ hỗ trợ 1 DNS dành cho Domain name này để tránh trường hợp Domain name của người đăng ký không trỏ đến đâu cả.
Tùy vào tính chất hỗ trợ khách hàng nhiều hay ít mà mỗi DNS của các nhà cung cấp khác nhau sẽ có những dịch vụ miễn phí khác nhau. Sau đây là 1 số dịch vụ của DNS (có sự so sánh giữa 2 nhà cung cấp Domain name):
· URL Forwarding Gắn thêm banner quảng cáo: www.enom.com
· URL Frame (Phải trả tiền: www.register.com)
· Quản lý DNS/MX record (Phải trả tiền: www.register.com)
· E-mail Forwarding (Phải trả tiền: www.register.com)
· Sub Domains (Phải trả tiền: www.register.com)
Vì vậy, trong trường hợp bạn muốn tiết kiệm chi phí phải trả hàng năm cho Domain name và Web Hosting, việc lựa chọn nhà cung cấp hợp lý là điều rất quan trọng.
8. Các cách liên kết 1 Domain name với 1 Web space (Web Hosting ảo): URL Frame, URL Forwarding
Web Space là nơi lưu trữ các trang Web của Website trên máy chủ. Tính chất của Web Space khác hẳn Web Hosting thông thường, Web Space chỉ là một phần nhỏ nằm trong lòng 1 Web Hosting. Các Web Hosting thông thường liên kết với Domain name qua các địa chỉ và dãy số IP, còn Web Space thì không. Web Space cũng có 1 địa chỉ URL độc lập để truy xuất đến nó (chính vì vậy nó có thể được coi như là 1 Website độc lập) và liên kết với Domain name thông qua 2 dịch vụ (có thể miễn phí hoặc không miễn phí tùy thuộc vào DNS của nhà cung cấp Domain name). Đó là các dịch vụ URL Frame và URL Forwarding
Dịch vụ URL Frame sẽ tạo ra 1 Frame để liên kết với Web Space. Khi người sử dụng duyệt qua các trang Web trong Web Space, địa chỉ URL của trình duyệt Web sẽ vẫn giữ nguyên là tên Domain name của bạn, đảm bảo tính chuyên nghiệp cho Website.
Dịch vụ URL Forwarding sẽ tự động chuyển trình duyệt Web của bạn tới 1 Web Space hoặc 1 Website nào đó đã có sẵn khi người sử dụng truy cập tới Domain name của bạn.
9.Tại sao bạn cần một tên miền riêng?
Sẽ có vẻ không chuyên nghiệp nếu chúng tôi sử dụng một tên miền miễn phí như SafeShopper.com/vnitweb/ hay một tên miền cấp 2 như vnitweb.domain.com.
Khi bạn đã có một tên miền riêng đồng nghĩa với việc bạn có thể sử dụng rất nhiều địa chỉ email trên tên miền của bạn một cách rất chuyên nghiệp. Khách hàng của bạn luôn tin tưởng một địa chỉ email theo chức năng của một công ty như sales@tencongty.com, orders@tencongty.com hay info@tencongty.com hơn là một địa chỉ email tencongty@yahoo.com.
Bây giờ bạn đã đồng ý là mình cần có một tên miền riêng hay chưa?. Hy vọng là bạn đã đồng ý. Vậy tôi sẽ chọn TLD nào?. “.com”, “.net” hay “.org”?.
Xin trả lời như sau: nếu bạn sử dụng tên miền đó vào mục đích kinh doanh thì TLD của bạn phải là “.com”, không có ngoại lệ.
Tất cả mọi người đều nhớ đến “.com” trước tất cả các loại “DOT” khác. Có người còn cho là mọi tên miền trên thế giới đều có phần đuôi là “.com”. Nếu bạn đang sử dụng một tên miền “.net” và cố gắng quảng cáo thương hiệu của mình, chẳng hạn nếu chúng tôi sử dụng tên miền www.webservicevn.com và nhấn Enter. Điều gì sẽ xảy ra?. Chúng tôi đang làm giàu cho người có tên miền www.webservicevn.com mà không phải là chúng tôi, www.webservicevn.com và cố gắng làm cho mọi người nhớ đến chúng tôi qua cụm từ “WSW”.
Còn một điều nữa, nếu người truy cập quên không gõ vào trình duyệt của họ phần đuôi (TLD) thì bất cứ mọi trình duyệt nào hiện nay điều mặc định thêm vào phần đuôi “.com”. Làm thế nào để tìm được một tên miền hoàn hảo cho công việc kinh doanh của bạn?.
Trước hết hãy dùng tên công ty hay thương hiệu của bạn. Nhưng hơn 80% khả năng sẽ không còn tên miền đó vì có rất nhiều công ty có tên trùng nhau. Hơn nữa, có nhiều đối thử sừng sỏ đang tìm cách đăng ký tên miền của bạn. Để làm gì?. Để hạn chế cạnh tranh khi họ khai thác khách hàng trên Internet.
Nếu không còn tên thương hiệu của bạn thì cũng không sao. Hãy nghĩ tới tên sản phẩm, thêm bớt một số từ ghép…
10. Làm thế nào để tìm được một tên miền hoàn hảo cho công việc kinh doanh của bạn?
Trước hết hãy dùng tên công ty hay thương hiệu của bạn. Nhưng hơn 80% khả năng sẽ không còn tên miền đó vì có rất nhiều công ty có tên trùng nhau. Hơn nữa, có nhiều đối thử sừng sỏ đang tìm cách đăng ký tên miền của bạn. Để làm gì?. Để hạn chế cạnh tranh khi họ khai thác khách hàng trên Internet.
Nếu không còn tên thương hiệu của bạn thì cũng không sao. Hãy nghĩ tới tên sản phẩm, thêm bớt một số từ ghép… Nhưng cách nhanh nhất là hãy liên hệ với chúng tôi để có được một sự tư vấn phù hợp.
11. Tôi có thể có bao nhiêu tên miền?
Còn phụ thuộc vào túi tiền của bạn nhưng bạn có thể có bao nhiêu tên miền tuỳ ý. Điều quan trọng là những tên miền này phải có ý nghĩa với công việc kinh doanh của bạn.
Bạn có thể đăng ký mỗi tên miền cho mỗi sản phẩm của bạn. Điều này không có nghĩa là bạn phải tạo 100 website. Tất cả những gì bạn cần làm là chuyển huớng 99 tên miền còn lại tới một miền chính. Bạn vẫn chưa rõ tại sao lại phải có 100 miền, có đúng vậy không?. Vây bạn hay dạo qua website này www.abc.com bạn sẽ hiểu rõ lí do tại sao, bạn thử nghĩ xem điều gì sẽ sảy ra khi một người bạn ngoại quốc quan tâm đến lễ hội thể thao lớn nhất khu vực muốn nghé qua tham quan.mà thay vì phải gõ www.abc.vn mà lại vào địa chỉ www.abc.com hoặc www.abc.com
Hiện nay do sự phát triển của thương mại điện tử một số công ty kinh doanh bằng cách đầu cơ mua hang oat tên miền của các công ty khác sau đó rao bán lại trên mạng với mức giá cao và khi đó nếu công ty bạn không mua lại thì các đối thủ cạnh tranh với công ty bạn chắc cũng sẽ không bỏ lỡ cơ hội vàng này.
Bạn đã từng gõ một địa chỉ website theo sự phỏng đoán của mình chưa?. Nếu bạn đang tìm đồ chơi cho đứa trẻ mới sinh bạn thử đánh www.babytoys.com?. Đây là cơ hội tốt cho bất kỳ ai không thành thạo Internet thử đoán địa chỉ bằng cách đánh tên sản phẩm họ đang tìm. Nếu bạn sở hữu 100 miền liên quan tới sản phẩm của bạn thì khách hàng đánh cái gì không thành vấn đề, họ sẽ tới được website của bạn (nếu bạn bán những gì họ đang tìm). Đó là cách rất hay để bạn đánh bại đối thủ cạnh tranh!!!
Hết Chương 0

Chương 1 - Thiết lập HomeServer -Phần Ngoại Mạng

Trong cách thành lập homeserver (Apache, PHP, MySQL, PHPMyAdmin) theo dạng chuẩn chung hiện nay là thường sử dụng những gói tích hợp sẵn, ví dụ như: Appserv, XAMPP, WAMPP v.v…

Trong Project này chúng ta sẽ cấu hình trên 2 gói cài đặt mẫu là: Appserv và XAMPP.

Làm theo thứ tự các bước sau:
1. Tạo một tài khoản tại http://www.dyndns.org. Đăng nhập vào tài khoản của mình và tạo 1 subdomain
Chọn Dynamic DNS Host


DynDNS sẽ cho 1 loạt các domain free để bạn tạo subdomain cho riêng mình. Ví dụ như hình sau:


Ghi chú: Mỗi một tài khoản trong DynDNS.Org chỉ cho phép tạo tối đa là 6 subdomain. Như hình trên là hết Quota.


Sau khi làm xong bước trên ta tải gói Client Tool của DynDNS.Org và cài vào máy để nó tự động cập cập nhật IP cho các SubDomain của chúng ta vừ tạo ở trên.
Tải gói Client Tool tại: http://www.download.com/DynDNS-Updater/3000-2381-10405775.html?part=dl-DynDNSUpd&subj=dl&tag=button


2. Tạo một tài khoản tại http://www.everydns.net. Sau đó đăng nhập vào tài khoản vừa tạo.


Tiếp theo, chúng ta add domain thật vào


Tiếp theo, vào Admin của Domain thật trỏ DNS về ns1.everydns.net, ns2.everydns.net, ns3.everydns.net, ns4.everydns.net, ns5.everydns.net

Ví dụ:

Tiếp theo ta tạo một File .Bat để làm Client Tool cập nhật IP cho Domain thật. Nội dung File .Bat theo cấu trúc sau:
edns.exe -u -p -ip <địa chỉ IP hiện thời>
ví dụ:
edns.exe -u thanhle003 -p matkhau -ip 125.212.225.55
Chú ý: Chúng ta có thể xem IP hiện thời của mình tại: http://checkmyip.com
và file .Bat này để chung với file .EXE của everydns cung cấp. Hoặc bạn có thể down tại đây. Mục đích là mỗi làn tắt mở máy thì có khi IP động của bạn thay đổi và phải cập nhật IP này cho everydns biết mà trỏ domain của bạn về IP mới này (Edit IP trong file .Bat)
Hết chương 1 - Phần Ngoại Mạng

Chương 2: Thiết Lập HomeServer - Phần Nội Mạng

Muốn làm 1 websever thì điều trước tiên cần làm là mình phải kiểm tra cái Router của mình nó thuộc hiệu nào, sau đó Port forwarding cái port của nó , sau đây chúng tôi sẽ nêu ra 1 số loại router và cách Port forwarding để tham khảo thêm

Trước khi Port forwarding port , ta cũng nên tìm hiểu Port và forwarding
A : Port
Các ứng dụng chạy trên giao thức TCP/IP mở các kết nối tới các máy tính khác sử dụng các port. Port cho phép nhiều ứng dụng tồn tại trên máy tính đơn - tất cả giao tiếp với nhau qua giao thức TCP/IP. Các port là một tập hợp các con số , đứng sau địa chỉ IP. Các ứng dụng thường ẩn các port này để giảm tính phức tạp của giao thức TCP/IP.
Ví dụ: Dịch vụ HTTP tồn tại trên port mặc định là port 80. Để tìm kiếm website, ta gõ vào browser http://www.webservicevn.com:80. Port 80 là port mặc định cho giao thức HTTP vì thế có thể không cần thiết phải gõ vào. Có tất cả 65535 port sẵn có.
B : Port Forwarding
Các router hoặc các ứng dụng NAT khác (chẳng hạn như ICS) tạo ra firewall giữa mạng trong của bạn và mạng internet. Một firewall sẽ giữ lại lưu lượng không mong muốn từ mạng internet vào mạng LAN của bạn.
Một đường hầm (tunnel) có thể được tạo ra xuyên qua firewall của bạn vì thế các máy tính trong mạng Internet có thể giao tiếp với một trong những máy tính trong mạng LAN của bạn thông qua một port đơn.
Điều này rất thuận tiện cho việc chạy Web server, game server, ftp server, thậm chí cả video conferencing. Việc tạo ra tunnel này được gọi là Port Forwarding. Một số máy tính của bạn sẽ chạy web server (port 80) trong khi các máy tính khác có thể chạy ftp server (port 23) trên cùng một địa chỉ IP.
Port forwarding có thể khó cấu hình nhưng nó cung cấp một phương pháp an toàn để chạy máy chủ trong firewall. Tóm lại port forwarding cho phép bạn chạy nhiều loại máy chủ trên các máy tính khác nhau trong mạng LAN.

Tuỳ theo loại Router của mỗi người mà có cấu hình cho thích hợp. Như Router của tác giả là ZyXEL 350W.
Với VD IP: 192.168.1.2 là IP của máy cấu hình làm Webserver.
Với User và Pass là tài khoản tại http://www.dyndns.org
Và sau đây là một vài cấu hình Router khác:
Các loại Router user và pass mặc định
Sở dĩ ở đây chúng tôi đưa ra các loại router và pass mặc định của nó, là vì các bạn sẽ gặp khó khăn trong vấn để user và pass của router, [FONT='Arial','sans-serif'][/font]
SpeedTouch[FONT='Arial','sans-serif'][/font]
Bạn mở trình duyệt IE lên và gỏ vào địa chỉ IP của router này là : http://10.0.0.138 (loại router này thì không cần user và pass)
Sau khi kết nối vào router này, nhìn góc bên trái của màn hình có chữ Advanced Click vào chữ này, bạn sẽ thấy hiện ra 1 khung nữa.
Click tiếp vào NAPT bây giờ thì Click vào NEW chọn giao thức cho port mà bạn muốn chuyển tiếp sử dụng thanh Protocol ( theo chúng tôi thì chọn TCP ) trong hộp thoại Inside port gõ vào port mà bạn cần chuyển đến. Trong hộp thoại Inside IP bạn gõ vào cái địa chỉ IP mà cái máy bạn muốn làm websever[FONT='Arial','sans-serif'] [/font]
Muốn kiểm tra địa chỉ IP của máy mình các bạn vào star==>run===>cmd gõ lệnh ipconfig dòng :
IP Adress: là địa chỉ IP máy bạn đang ngồi
Defautle Gateway: là địa chỉ của router
Còn trong hộp thoại outside IP thì bạn nên để mặc đinh cho nó là: 0.0.0.0
Click vào nút Apply ở ngay bên dưới, và bây giờ quan sát thấy cấu hình vừa được tạo ra trong bảng phía trên
SmartAT MX 800[FONT='Arial','sans-serif'][/font]
Mở trình duyệt IE lên Gõ địa chỉ IP của router này vào http://192.168.1.1 Router này nó yêu cầu nhập user và pass
User: admin
Pass: admin
( đây là pass mặc định của loại user này )
Sau khi login vào router này bạn sẽ thấy nó lung tung, nhưng không sao cả, nhìn vào màn hình bên tay trái click vào Other Settings 1 khung mới sẻ xuất hiện click chuột vào link NAT Click chuột tiếp vào nút Add để bổ sung rule mới.
Trong mục rule type bạn chọn Redirect trong hộp thoại Protocol bạn nên chọn là TCP trong mục Local IP gõ vào địa chỉ IP để chuyển tiếp port tới.
Đây sẽ là địa chỉ IP của máy tính có phần mềm yêu cầu portforwarding
nói nôm na thế này cho dể hiểu là IP của máy bạn muốn cài websever.
Trong hộp thoại Global Address From và Global Address To nên gõ vào các số 0.
Trong hộp thoại Destination Port From và Destination Port To chọn chọn Any other port Nếu bạn đang chuyển tiếp tới một port đơn, đánh số port đấy vào Destination Port From và Destination Port To.
Nếu bạn chuyển tiếp một vùng port, đánh số port nhỏ nhất của vùng vào trường Destination Port From. Sau đó đánh số port lớn nhất của vùng vào Destination Port To. Click vào Submit để kết thúc quá trình cấu hình này.
Trong menu bên trái màn hình click vào link Advanced Function. Trong này sẽ có các menu con, click vào link IP Filter.
ADE-3000 Router
Mở trình duyệt IE lên gõ vào địa chỉ IP http://10.0.0.2, nó sẽ yêu cầu bạn nhập user và pass, mặc định user và pass của router này là :
user: admin
pass: conexant
Đăng nhập vào router, các bạn nhìn bên trái của màn hình sẽ thấy chữ Virtual Server, click vào nó trong ô Public Port là port mà bạn cần forward ô Private Port cũng như vậy ( có nghĩa là 2 ô này bạn điền port giống nhau ) ô Port Type lựa chọn loại giao thức sử dụng ( ở đây chúng tôi chọn TCP )
Trong ô Host IP Address gõ vào cái địa chỉ IP máy tính của bạn
sau đó ấn vào Add This Setting hoặc là sumit gì gì đó.
Edd port xong rồi thì click vào Save settings để hoàn tất quá trình.
ZOOM X4
Mở trình duyệt IE lên gõ vào địa chỉ IP http://10.0.0.2, user và pass mặc định của loại router này là :
user : admin
pass : zoomadls
Login vào router, Click vào nút Advanced Setup Click tiếp vào NAT trong hộp NAT Options, chọn NAT Rule Entry Click chuột vào nút Add trong hộp Rule Flavor chọn RDR Điền số thứ tự vào Rule ID.
Trong ô IF Name chọn All Tại ô Protocol chọn Any
Gõ địa chỉ IP vào cả hai ô Local Address From và Local Address To ( đây là địa chỉ IP của máy tính bạn muốn làm websever )
Điền các số 0 0 0 0 vào cả hai ô Global Address From và Global Address To điền port mà bạn cần forwar vào ô Destination Port From Destination Port To và Local Port.
Sau đó thì Click vào Save changes đề kết thúc .
Để ghi lại thay đổi của router này bạn Click vào Advanced Setup click tiếp vào IP Filter trong ô Security Level chọn NONE.
Trong ô Private Default Action, Public Default Action và DMZ Default Action chọn Accept sau đó click vào sumit để kết thúc.
ZOOM X5
Mở trình duyệt IE lên gõ vào trình duyệt http://10.0.0.3 nó sẻ yêu cầu nhập user và pass
user : admin
pass : zoomadsl
Login vào router, click vào Advanced Setup click tiếp vào Virtual Server, Trong ô ID gõ vào số hiệu ID chưa sử dụng, trong ô Public Port gỏ vào port mà bạn cần FW ô private port cũng như vậy, nói chung là 2 ô này gỏ port cần FW giống nhau, ô Port Type chọn giao thức TCP ô Host IP Address gỏ vào địa chỉ ip máy của bạn.
Click vào Add This Settings để hoàn tất và xem cấu hình bạn vừa Fw, sau đó Click vào Write Settings to Flash and Reboot để lưu lại cấu hình bạn vừa làm và khởi động lại router.
ZyXel
Mở trình duyệt IE lên gõ vào http://192.168.1.1 nó yêu cầu nhập user và pass
user : admin
pass : 1234
Login vào router Click chuột vào NAT Click chuột vào tuỳ chọn Edit Detail kề bên cạnh SUA Only.
Gõ vào hộp thoại Start Port No số hiệu port nhỏ nhất và hộp thoại End Port No số hiệu port lớn nhất mà bạn muốn chuyển tiếp đi, hộp thoại IP Address điền vào địa chỉ IP máy tính của bạn cần làm websever.
Click vào Save để ghi lại cấu hình vừa thiết lập. Sau đó bạn sẽ quay trở lại menu NAT Settings. Quay về đầu và click chuột vào nút Apply để kết thúc.SpeedStream 5100
Mở trình duyệt IE gõ vào http://192.168.254.254 nhập user và pass
user : username
pass : password
Login vào router, khi login xong, trên menu chính click vào nút Login trong ô user name chọn Admin ô password , gõ password , click vào nút ok để quay trở lại menu chính.
Click vào nút setup sau đó click tiếp vào nút Portforwarding.
Kiểm tra xem tại hộp thoại Select service by name các dịch vụ mà bạn muốn chuyển tiếp đã được liệt kê hay chưa. Lựa chọn dịch vụ mà bạn muốn chuyển tiếp, sau đó click chuột vào nút Redirect selected protocol/service to ip address.
Trong hộp thoại này gõ vào địa chỉ IP mà bạn muốn chuyển tiếp (forward) tới. Click vào nút Apply để ghi lại cấu hình.
Trong trường hợp bạn không tìm thấy dịch vụ mà mình muốn chuyển tiếp trong hộp thoại Select service by name thì lựa chọn giao thức, sử dụng thanh cuộn Select protocol. Sau đó gõ vào hộp thoại TCP/UDP port(s) vùng port mà bạn muốn chuyển tiếp.
Số hiệu port nhỏ nhất điền vào ô bên trái, số hiệu port lớn nhất điền vào ô bên phải. Click chuột vào nút Redirect selected protocol/service to ip address. Gõ vào địa chỉ IP mà bạn muốn chuyển tiếp dịch vụ này tới. Đây sẽ là địa chỉ IP của máy tính có phần mềm yêu cầu portforwarding. Click vào nút Apply để ghi lại cấu hình.
Hết chương 2 - Phần Nội Mạng

Chương 3: Cài đặt Webserver theo Apache, MySQL, PHPMyAdmin

.:: Một số so sánh về apache và IIS ::.

Có thể bạn hỏi có 2 server như thế biết chọn cái nào đây? Sau đây là 1 số nhận xét của cá nhân tôi, hi vọng giúp ích cho bạn.
Với Apache:
* Ưu :
o Khá nhẹ bản apache_2.0.55-win32-x86-no_ssl.msi chỉ có 4,3Mb .
o Mã nguồn mở nên hoàn toàn free
o 60% máy chủ trên thề giới dùng apache
o Chạy với php khá nhanh (so với IIS)
o Chạy ổn định

* Khuyết
o Bạn phải tải về từ apache.org
o Cấu hình chủ yếu trên dòng lệnh và file text
o Chưa hổ trợ asp và asp.net ( thật ra có nhưng cách cấu hình khá phức tạp)
Với IIS:
* Ưu:
· Có sẳn trong dĩa cài của Window
· Cầu hình trên đồ họa và Wizard
· Hổ trợ Asp, Asp.net (mặc định )
* Khuyết
· So với apache chạy php khá chậm ( dù cài ở ISAPI module)
· Không phổ biến bằng apache
· Đôi khi không ổn định ( nếu dùng bản 6.0 trên xp còn bản 7.0 trên Window server 2003 khá ổn định)
Tóm lại: Nếu bạn dùng php, perl, cgi-bin thì apache là 1 sự lựa chọn tốt. Còn bạn muốn dùng thêm asp hay asp.net thì IIS tốt hơn apache.

Đầu tiên, tải gói Appserv tại http://www.appservnetwork.com hoặc gói XAMPP tại http://www.apachefriends.org/en/xampp.html
Cài đặt gói Appserv hoặc gói XAMPP trên máy mình.
Cài tới phần Network Domain và Server name bạn gõ vào: localhost. Mail: admin@localhost. Pass MySQL tùy chọn.
Toàn bộ cấu hình của apache là ở tập tin httpd.conf (\apache\conf\) bằng 1 trình soạn thảo văn bản thuần túy như NotePad hay EditPlus
Các dòng có # là các chú thích và cũng có chức năng là khóa 1 số module của Apache.
Bạn tạo thêm 1 thư mục D:\webserver (hay là gì cũng được). Toàn bộ mã nguồn Website chúng ta sẽ cho vào đây.
Mặc định của Appserv thư mục làm việc là C:\Appserv\www.
Mặc định của XAMPP thư mục làm việc là C:\xampp\htdocs.
Mở httpd.conf ta bắt đầu cấu hình. Chúng ta sẽ đi từ trên xuống.
1 chú ý là các đường dẫn trong apache là tuân theo linux tức là dấu / thay cho dấu \ nghĩa là C:\Appserv\apache2\ thì thành C:/Appserv/apache2/
ServerRoot “C:/Appserv/apache2/” bạn kiểm tra lại có dúng như mình cài không.
Tiếp tới dòng #LoadModule ssl_module modules/mod_ssl.so bạn thêm vào dòng
LoadModule php5_module bin/php5apache2.dll
AddType application/x-httpd-php .php .php3 .phtml .php4
Ý nghĩa là nạp module php5 và và đường dẫn là bin/php5apache2.dll. Nếu bạn không chép các dll như ở trên thì bạn phải chỉ rõ đường dẫn.
LoadModule php5_module D:/webserver/php/php5apache2.dll
AddType application/x-httpd-php .php .php3 .phtml .php4
Dòng dưới chỉ là đăng ký các file php.
Tìm tới dòng DocumentRoot sửa thành DocumentRoot “D:/webserver”
Tìm tới dòng thành
Lưu ý: Sau cấu hình file httpd.cof xong và lưu lại bạn phải khởi động lại dịch vụ Apache thì các cấu hình mới có tác dụng hoặc trong lần khởi động sau mới có tác dụng.
Ngoài ra nếu bạn sài MSSQL thì bạn có thể dùng extension=php_mssql.dll.
Tiếp theo bạn tạo 1 thư mục temp (hay gì cũng được chủ yếu là chứa các file tạm) trong d:\webserver\ và tìm dòng session.save_path trong file httpd.conf (apache\conf) thay bằng session.save_path = “D:\webserver\tmp”
Chúng ta đã làm xong cấu hình php.
Tiếp theo bạn cần phải chép các tập tin hổ trợ cho php .Bạn vào thư mục php5 chép các tập tin sau vào thư mục Apache\bin.

  • libmysql.dll : Thư viện hổ trợ mysql (cần khi dùng php_mysql.dll)
  • ntwdblib.dll : Thư viện hổ trợ Mssql (cần khi dùng php_mssql.dll )
  • ssleay32.dll, libeay32.dll : Thư viện hổ trợ SSL(cần khi dùng php_curl.dll)
  • gds32.dll : Thư viện hổ trợ InterBase Server (cần khi dùng InterBase Server)

Sau khi làm xong các bước trên ta mở trình duyệt và gõ localhost hoặc tên subdomain trong DynDNS.Org vd: http://freecodevn.homelinux.com để test xem homeserver đã chạy chưa.
Hết Chương 3 - Cài đặt Server theo Apache, MySQL và PHPMyAdmin

Chương 4: Cài đặt Server theo IIS - PHP5

IIS (Internet Information Services) 1 trong những webserver phổ biến trên thế giới. Bộ IIS có sẳn trong bộ cài đặt của window.
Cài đặt :
Chon Start-> Settings-> Control Panel -> Add or Remove Programs. Chọn mục Add /Remove Windows Componets.
Chọn tiếp Internet Information Services (IIS). Theo mặc định sẽ cài thêm SMTP Service (server mail) Thế nhưng SMTP Service không tiện dụng và thiếu nhiều chức năng nên ta sẽ không dùng nó .Nếu bạn cần 1 server mail bạn có thể dùng hMailServer (free). Để bỏ bạn chọn Details.. và bỏ dấu check ở mục SMTP Service.

Sau khi chọn xong bạn nhấn ok và next . Sau khi cài xong , mở IE ra gõ và localhost .Nếu quá trình cài thành công sẽ hiện ra cửa sổ chào mừng và giới thiệu chức năng của IIS.
Cấu hình:
Bạn vào Start-> Settings-> Control Panel -> Administrative Tools chọn Internet Information Services.
Tiếp mở tên máy của bạn (local computer) -> web sites-> default web site.
Nhấp chuột phải chọn Properties .Đây là phần cấu hình chính của IIS.
Chọn tab Home Directory
Mục local Path là đường dẫn tới nơi chứa các code của bạn . Nếu bạn thường xuyên cài lại máy và để bảo đảm an toàn của code thì bạn có thể chọn 1 nơi khác. Vd là D:\webserver\www.
Các tùy chọn bạn nên chọn
Read : Cho phép đọc file
Write : Cho phép ghi
Directory Browsing : cho phép xem cấu trúc thư mục
Tiếp theo ta sẽ cấu hình cho IIS nhận php. Cũng như apache ta cũng có 2 cách cài cho php là Cgi và ISAPI module .Ta sẽ cấu hình nó dạng ISAPI module .
Ở tab Home Directory . Chọn Configuration .. Chọn Add
Mục Executable Chọn browse -> chỉ dến thư mục php5.
Vd D:\Appserv\php5. Mục Files of Type bạn chọn Dynamic Link Libraries (*.dll) và chọn tập php5isapi.dll
Mục Extension gõ vào .php
Chọn ok .
Chọn Tab Documents. Chọn add.. Gõ vào index.php. Bạn có thể bổ sung thêm index.html .Đây là những tập tin sẽ load mặc định. Cuối cùng bạn chon Ok .
Vào Thư mục php5 bạn tìm file php.ini-recommended và thực hiên:

  • Đổi tên thành php.ini và chép vào thư mục C:\WINDOWS\

Dùng trình soạn thảo văn bản thuần túy như NotePad hay EditPlus để mở file này.

  • Tìm đến dòng extension_dir = “./” thay vào bằng extension_dir = “D:\webserver\php5\ext\”

Bỏ dấu ; ở đầu các thư viện mình dùng .Đây là 1 số thư viện cần thiết.

  • extension=php_gd2.dll ( dùng cho đồ họa)
  • extension=php_mysql.dll ( dùng kết nối vớ mysql)

extension=php_mysqli.dll (cũng là kết nối với mysql nhưng đây là bản nâng cấp giúp tối ưu hóa việc truy cập )
Hướng dẫn cài IIS bằng hình ảnh:
1. Hướng dẫn cài đặt webserver IIS
Sau khi đã hoàn thành việc cài đặt IIS, vào Control panel, Administrative tool, khởi động Interner Services Manager
1. Click chuột phải vào tên máy chủ (gốc của cây được đánh dấu bởi dấu hoa thị), chọn New, Website, cửa sổ Website Creation Wizard hiện ra, chọn Next.
2. Đánh vào phần mô tả của Website của bạn và chọn Next (Ví dụ: dyndns)
3. Trong trường IP address chọn All Unssigned.
4. Trong trường port chọn port 80 hoặc port khác nếu bạn sử dụng port thay thế (hoặc nếu ISP của bạn khóa port 80).
5. Trong trường Header gõ vào tên miền (ví dụ: dyndns.vnnic.net.vn) và chọn Next.
6. Chọn vào Browser và trỏ tới thư mục nơi lưu trữ các file của Website cho tên miền (domain) trên (ví dụ: C:\Document and Setting\Administrator\Mydocument\Website\Dyndns). Đảm bảo chắc chắn rằng hộp thoại “Allow anonymous access to website” đã được chọn nếu bạn muốn tất cả người dùng đều nhìn thấy website của bạn. Chọn Next
7. Có thể cấu hình thêm một số tuỳ chọn khác tuỳ theo yêu cầu của bạn
8. Chọn Finish để kết thúc quá trình thiết lập Website
Bạn có thể lặp lại các bước này để thiết lập các Website khác.
Bây giờ tên Website đã xuất hiện trong danh sách server.
- Để kiểm tra xem click chuột phải lên tên Website và chọn vào Browse hoặc bật cửa sổ Internet Explore (IE) lên và đánh tên miền của bạn vào trường URL (ví dụ: dyndns.vnitweb.com)
Bạn có thể lặp lại chu trình trên để thiết lập nhiều Website mà bạn muốn bằng IIS.
Cấu hình và sửa lỗi cho các Website:
Nếu bạn không nhìn thấy Website của mình hoặc chỉ nhìn thấy cửa sổ login bạn sẽ phải cấu hình lại cho chính xác quyền truy cập vào Website của mình hoặc file index mà bạn sẽ dùng cho Website của bạn.
1. Click chuột phải vào tên Website nằm trong danh sách server mà bạn mới thiết lập và chọn Property từ menu đó.
2. Chọn vào tad Directory Security và chọn vào mục Edit “Anonymous Access …”.3. Đảm bảo chắc chắn rằng Anonymous Access property được chọn và click chuột vào nút Edit.
4. Xem xét xem tài khoản của người sử dụng có được quyền truy cập vào máy tính hay thư mục Website của bạn không.
Để chắc chắn bạn có vấn đề về quyền truy nhập, hãy thử sử dụng tài khoản Administrator ở đây.
Sau khi đã giải quyết vấn đề về quyền truy nhập nhưng bạn vẫn nhận được thông báo “Directory Listing Denied”, chắc chắn bạn đã trỏ Website của bạn tới file index không phù hợp với file index được phép hoặc đã đăng ký cho Website của bạn.
1. Click chuột phải vào tên Website nằm trong danh sách server của bạn mà bạn mới thiết lập và chọn Property từ menu đó.
2. Click vào Document tab
3. Click Add và đánh vào tên file index của bạn rồi ấn OK (ví dụ: Website dyndns ở trên có file index dạng index.htm).
4. Ấn tiếp OK để kết thúc.
Bây giờ thử mở Browse và gõ vào trường URL tên miền của bạn, nếu cấu hình chính xác Website sẽ chạy.
Lặp lại chu trình trên để cấu hình cho tất cả các Website sử dụng IIS.
Bonus: tìm hiểu chuyên SQL bạn vào đây nhé:
http://www.vovisoft.com/SQLServer2000/Default.asp
Cả một khóa học về SQL server.
Hết chương 4

Chương 5: Bảo mật Webserver từ hệ điều hành hỗ trợ

.:: Sử dụng hệ điều hành Windows để cấu hình bảo mật Apache ::.

1. Vào Control Panel tạo 1 limited account vd là ’sibachao’, set pass. Mặc định account này sẽ nằm chung trong group “Users“.
2. Start > Run > cmd
C:\WINDOWS\system32>net localgroup users sibachao /del
>> remove ’sibachao’ ra khỏi group Users, mục đích là để mình có thể apply ACL (Access Control List) cho sibachao mà ko ảnh hưởng tới các users khác.
Bi giờ config lại Apache service run dưới quyền sibachao:
Start > Run > services.msc
Chọn Apache service property, chọn tab ‘Log On‘ set service logon as sibachao, enter passwd > OK. Stop Apache service lại.

OK, tui dùng winsp sp2, apache bundle là xampp mặc định sẽ cài vào C:\Program Files\xampp, htdocs là xampp\htdocs, apache path là xampp\apache\bin\apache.exe. Mấy bundle khác bạn dùng thì thay path tương tự.
Bi giờ để change ACLs trong win có 2 cách:
- GUI: right click 1 folder, chọn property, nếu có tab ‘Security’ thì nó cho phép config ACL, nếu ko có thì vào Explorer > Tools > Folder Options, scroll xuống dưới uncheck cái box Simple File Sharing sẽ hiện đc tab Security trong win.
- cmd line: cacls.exe có sẵn là 1 program để view/change ACLs.
Start > Run > cmd.
Nói thêm ở đây là do mình đã remove ’sibachao’ ra khỏi group Users nên nó ko còn inherite (kế thừa) perm (quyền) từ Users nữa.
Kể từ bước dưới đây, LUÔN LUÔN thêm switch /E vào để edit ACL có sẵn thay vì replace nó, nếu ko là reinstall win.
C:\>cacls . /C /T /E /R sibachao
>> revoke quyền của sibachao trên toàn C:\ và subfiles, subfolders, cái này ko cần thiết nhưng just 2 make sure
C:\>cacls “C:\Program Files\xampp\” /C /T /E /P sibachao:R
>> ‘R’ access to xampp path, để apache có thể read perl, php nhưng ko cho phép change, vd change php.ini file(Read trong win = view + execute binary file” )
C:\>cacls “C:\Program Files\xampp\apache\bin” /C /T /E /P sibachao:R
>> set ‘R’ access cho apache bin files để start service
Ai hơn nữa có thể set Read only access to .conf file
C:\cacls “C:\Program Files\xampp\apache\conf” /C /T /E /P sibachao:R
C:\>cacls “C:\Program Files\xampp\htdocs” /C /T /E /P sibachao:F
>>set full permission cho webroot
C:\cacls C:\WINDOWS /E /D sibachao
>> deny access của user ’sibachao’ tới winroot
C:\>cacls C:\windows\system32\*.exe /C /E /D sibachao
>> deny access tới system tools
C:\cacls . /C /E /D sibachao
deny access tới C:\ và các file ở root drive.
Tới đây là cũng 70% script-kid drop rùi. Ai muốn config thêm gì thì config
1 số thứ về cacls và permission:
R: R trong win là Generic_read, nghĩa là read, list folder content và execute binary files nhưng ko đc ghi
W: ghi
N: no access
F: full access, read write, browse, change, create ….
Deny > Allow nên trước hết set Allow priv trước, Deny sau.
VD ở trên, nếu ai đó allow full access tới \apache trước, read-only access tới .conf file sau thì quyền ‘not allowed to write’ ở file .conf sẽ có precedence > quyền full allow tới .conf file đc inherit từ parent folder là \apache.
Ai muốn làm home hosting thì viết batch script dùng cacls apply permision vào user folder, add batch script thành logon script cho mỗi user.
apache service user
không cho ping hoặc execute \system32 binary files:
không cho change file trong xampp root
không cho change file bất kỳ
Không cho browser c:\windows và subfolders


Chương 6: Cấu hình ALIAS cho liên kết thư mục
.:: Mục đích của việc làm Alias là làm ẩn danh thư mục ::.
VD: Thư mục webroot là D:\webserver.

Vì vậy nếu chạy http://localhost thì tất nhiên, website thể hiện, chính là những nội dung trong thư mục webroot. Nhưng nếu bạn muốn rằng http://localhost/mms (thư mục mms không tồn tại trong Wenroot) sẽ chỉ tới một thư mục khác ngoài webroot ví dụ như C:\demo chẳng hạn.
Thì lúc đó chúng ta sẽ làm Alias như sau:
Mở file httpd.conf thêm:

alias /mms D:/1

Options Indexes FollowSymLinks MultiViews ExecCGI
AllowOverride All
Order allow,deny
Allow from all

Nghĩa là từ bây giờ, khi gõ http://localhost/mms thì ta sẽ thấy xuất hiện một website có nội dung. Nhưng thực thế thì thư mục mms không tồn tại trong webroot mà chỉ là một định danh để chỉ về thư mục D:\1


Chương 7: Cấu hình ALIAS cho nhiều Domain thật

Ví dụ: Chúng ta có rất nhiều domain thật, và muốn rằng mỗi domain thật sẽ trỏ về một thư mục khác nhau trên máy tính của mình.

VD: http://webservicevn.com -> D:\WSW;

http://thanhle003.co.uk -> H:\Music\Data;

http://vinawarex.com -> C:\Shop;

http://nickquang.com -> D:\medianick;

http://chanhqua.vn -> G:\Shop;

Chúng ta cấu hình sau:

1. Mở tập tin httpd.conf tìm dòng:

# Virtual hosts

# Include conf/extra/httpd-vhosts.conf

Bỏ dấu # trước dòng thứ 2, nó sẽ ra như vậy:

# Virtual hosts

Include conf/extra/httpd-vhosts.conf

Tiếp theo ta vào thư mục Extra và mở file httpd-vhosts.conf. Và Edit theo ví dụ là mẫu sau: (có thể xóa sạch nội dung cũ cho dễ nhìn)


NameVirtualHost *:80



ServerName localhost

ServerAlias localhost

DocumentRoot F:/Webserver



AllowOverride All

Options Indexes IncludesNOEXEC FollowSymLinks

allow from all





——————————— Ví dụ khác ———————————-



ServerName vnitweb.com

ServerAlias www.vnitweb.com

DocumentRoot D:/WSW



AllowOverride All

Options Indexes IncludesNOEXEC FollowSymLinks

allow from all





Tương tự cho các Domain khác ta cũng cấu hình như vậy.
Chương 8: Cấu hình ALIAS cho Subdomain thật

Ví dụ: Chúng ta có domain thật, và muốn rằng subdomain thật sẽ trỏ về một thư mục trên máy tính của mình

VD: Domain http://vinawarex.com -> C:\Shop nhưng ta muốn rằng http://forum.vinawarex.com ->G:\forum.

Cấu hình như sau:

Đăng nhập vào http://www.everydns.net bằng tài khoản của mình, và tạo một subdomain.

Tiếp theo ta cấu hình file httpd-vhosts.conf.

Thêm dòng mẫu này cho SubDomain:

NameVirtualHost *:80

[FONT='Arial','sans-serif'] [/font]

[FONT='Arial','sans-serif']ServerName forum.vinawarex.com [/font]

[FONT='Arial','sans-serif']ServerName www.forum.vinawarex.com [/font]

[FONT='Arial','sans-serif']DocumentRoot G:/ forum[/font]

[FONT='Arial','sans-serif'] [/font]

[FONT='Arial','sans-serif']AllowOverride All [/font]

[FONT='Arial','sans-serif']Options Indexes IncludesNOEXEC FollowSymLinks [/font]

[FONT='Arial','sans-serif']allow from all [/font]

[FONT='Arial','sans-serif'] [/font]

[FONT='Arial','sans-serif'][/font]
Chương 9: Cấu hình SSL cho HomeServer chạy Domain thật.

.:: Áp dụng cho homeserver hoặc chỉ đơn giản cho localhost chạy Port 443 ::.

Cấu hình SSL để bảo mật dữ liệu truyền


Lưu Ý Quan Trọng: Đối với gói Appserv, thì Apache2.2 trong các phiên bản đều không hỗ trợ mod SSL. Vì thế, những webmaster đang sử dụng gói Appserv làm webserver mà muốn cấu hình SSL thì trước tiên phải làm như sau:

1. Sau khi cài đặt Appserv xong, thì tải tiếp bản Apache rời có hỗ trợ SSL về (link down tại đây), và lấy toàn bộ Source của nó thay thế cho thư mục Apache cũ của Appserv (nhớ chừa file conf.http của Appserv ra, chút chép chồng lại)
2. Chỉ chép chồng file conf.http từ Appserv sang Apache mới, còn lại các file khác trong thư mục Extra của Apache phải edit link (vd: C:\program files\Apache… -> C:\Appserv\…)
3. File mod_ssl.so phải là của Apache mới.
Giờ ta tiến hành theo các bước sau:
1. Vào http://www.neilstuff.com/apache/apache2-ssl-windows.htm để tải gói openssl về, hoặc coi hướng dẫn dưới đây để làm luôn. Hoặc có thể tải gói này ở đây:
http://files.myopera.com/vnitweb/server/SSL.rar
2. Bung nén vào chép vào nơi nào bạn muốn. Tốt nhất chép cùng thư mục webserver cho tiện.
Mở Run -> CMD
Và CD vào thư mục chứa OpenSSL.
Qui ước lệnh: Màu hồng thay đổi được - Màu xanh không được thay đổi.
– Và chạy lệnh thứ nhất:
openssl req -config openssl.cnf -new -out vnitweb.csr -keyout vnitweb.pem


Hình trên, chỗ khai báo pass lần đầu là theo kiểu Linux, nghĩa là bạn gõ nhưng sẽ không nhìn thấy ký tự gì xuất hiện, gõ xong Enter và nhập pass 1 lần nữa.Điền các thông tin cá nhân mà bạn muốn thể hiện trong Tab Issuse sau này trong CA.
PEM Pass: tối thiểu là 4 kí tự
– Tiếp theo ta chạy lệnh thứ 2:
openssl rsa -in vnitweb.pem -out vnitweb.key


Xong bước này, đã xuất ra key, chúng ta xóa file .rnd trong thư mục OpenSSL để tránh bị Hack. Vì sao thì chúng ta sẽ tìm hiểu sau.
– Tiếp theo chạy lệnh thứ 3:openssl x509 -in vnitweb.csr -out vnitweb.crt -req -signkey vnitweb.key -days 3650


Vậy là xong phần xin cấp CA. Tiếp theo mở file httpd.conf và tìm dòng này:
#LoadModule ssl_module modules/mod_ssl.so
Xóa dấu # đi
LoadModule ssl_module modules/mod_ssl.so
Tiếp theo Copy và Paste các file vnitweb.key, vnitweb.crt vào chỗ cần thiết rồi thiết lập đường dẫn trong file httpd-ssl.conf (Nếu sài XAMPP thì đường dẫn là \apache\conf\extra)
Đây là link file CA mà tôi đã tạo, ai thích sài chung thì sài.
Link down: http://files.myopera.com/vnitweb/server/vnitweb.rar
VD: thay đổi dòng này trong httpd-ssl.conf
# Server Private Key:
….
SSLCertificateKeyFile “C:/VNITWEB/AppServ/Apache2.2/conf/vnitweb.key”

# Server Certificate:

SSLCertificateFile “C:/VNITWEB/AppServ/Apache2.2/conf/vnitweb.crt”
Reset Apache -> Xong
Demo: https://thanhle003.co.uk
Hết chương 9 - Cấu hình SSL

  1. Cấu hình HomeServer - Toàn tập - Chương 10 (Cấu hình Mod Rewrite và Set Rule)
  2. Cấu hình HomeServer - Toàn tập - Chương 11 (Cấu hình Mod Security và Set Rule)
  3. Cấu hình HomeServer - Toàn tập - Chương 12
  4. Cấu hình HomeServer - Toàn tập - Chương 13
  5. Cấu hình HomeServer - Toàn tập - Chương 14
  6. Cấu hình HomeServer - Toàn tập - Chương Cuối (Cấu hình IIS chạy Apache)

Từ Chương 10 đến hết, chưa sưu tầm được.


reflink: http://forum.vndownload.org/showthread.php?p=26340