Thứ Hai, 7 tháng 1, 2013

GIỚI THIỆU VỀ POINT-TO-POINT TUNNELING PROTOCOL (PPTP)

Tương tự giao thức L2F, PPTP (Point-to-Point Tunneling Protocol - giao thức tạo đường hầm điểm nối điểm) ban đầu được phát triển và được thiết kế để giải quyết vấn đề tạo và duy trì các đường hầm VPN trên các mạng public dựa vào TCP/IP bằng cách sử dụng PPP. PPP là kết quả của sự nỗ lực chung của Microsoft và một loạt các nhà cung cấp sản phẩm bao gồm chẳng hạn Ascend Communications, 3Com/Primary Access, ECI Telematics, và U.S. Robotics.  
Ban đầu những công ty này thành lập PPP Forum với thông số kỹ thuật PPTP được làm cho có sẵn công cộng và được gửi đên IETF Point-to-Point Extensions (PPPEXT) WG để xem xét như là một tiêu chuẩn Internet vào năm 1996.

Một sự triển khai điển hình PPTP bắt đầu với một hệ thống từ xa hoặc dial-up client, chẳng hạn như một máy tính laptop phải được liên thông với một LNS được đặt trên một intranet công ty bằng cách sử dụng một LAC. Do đó, PPTP có thể được sử dụng để bao bọc các khung PPP trong các gói IP để truyền trên Internet hoặc bất kỳ mạng khác TCP/IP có thể truy cập công cộng. Cụ thể hơn, hệ thống từ xa có thể kết nối với LNS theo hai cách:

 1. Nếu hệ thống từ xa hỗ trợ PPTP, nó có thể sử dụng trực tiếp nó để kết nối LNS.

    2. Tuy nhiên, nếu hệ thống từ xa không hỗ trợ PPTP, nó có thể sử dụng PPP để nối kết với LAC của một nhà cung cấp dịch vụ Internet và sau đó LAC có thể sử dụng PPTP để kết nối với LNS.

    Trong trường hợp thứ nhất, tình huống tương đối đơn giản. Trước tiên hệ thống từ xa thiết lập một kết nối PPP với LAC của nhà cung cấp dịch vụ Internet và sau đó sử dụng PPTP để gửi các khung PPP được đóng gói đến LNS. Các gói IP vốn bao bọc các khung PPP được chuyển tiếp bởi LAC.

    Tuy nhiên, trong trường hợp thứ hai, LAC phải sử dụng PPTP để bao bọc các khung PPP trong các gói IP thay mặt cho hệ thống từ xa. Kết quả, LAC phải đóng một vai trò của một đối tượng trung gian hoặc proxy server theo cách này hoặc cách khác. Thực tế, có hai kết nối. Kết nối thứ nhất sử dụng PPTP để liên thông hệ thống từ xa và LAC trong khi kết nối thứ hai sử dụng PPP để liên thông LAC và LNS. Các khung PPP được nhận bởi LAC được bao bọc trong các gói IP bằng cách sử dụng PPTP.

    Ở một trong hai trường hợp, PPTP sử dụng một sơ đồ đóng gói tinh vi để tạo đường hầm các khung PPP qua Internet (hoặc bất kỳ mạng khác dựa vào TCP/IP vốn liên thông LAC và LNS). Thực tế, các đơn vị dữ liệu giao thức lớp mạng hoặc lớp Internet (ví dụ như các gói IP, các gói IPX, hoặc thông báo NetBEUI) được tạo khung đầu tiên bằng cách sử dụng PPP. Sau đó các khung PPP vừa tạo ra được bao bọc bằng cách sử dụng một tiêu đề GRE (Generic Routing Encapsulation) cũng như một tiêu đề IP được sử dụng để định tuyến khung qua Internet. Sau cùng, các gói IP được tạo khung với vẫn một tiêu đề khác dành riêng cho phương tiện trước khi chúng có thể được chuyển tiếp đến giao diện được kết nối với Internet.

    Ngoài kênh dữ liệu vốn sử dụng sự bao bọc IP để chuyển dữ liệu, PPP sử dụng một nối kết TCP để truyền tín hiệu. Các thông báo tương ứng vốn được gửi hoặc được nhận trên kết nối này được sử dụng để truy vấn trạng thái và để truyền thông tin tín hiệu giữa LAC (là client PPTP) và LNS (là server PPTP). Kênh điều khiển luôn được khởi tạo bởi client PPTP đến server PPTP bằng cách sử dụng số cổng TCP 1723. Trong hầu hết các trường hợp, nó là một kênh hai chiều trong đó client có thể gửi các thông báo đến server và ngược lại. Chú ý khái niệm về một kênh truyền tín hiệu ngoài dải là một điều rất riêng biệt cho PPTP. Hầu hết các giao thức bảo mật khác (ví dụ như: IPSec) sử dụng sự tạo tín hiệu trong dải, nghĩa là thông tin truyền tín được vận chuyển cùng với các đơn vị dữ liệu được bảo vệ.

    Thông số kỹ thuật PPTP không bắt buộc sử dụng các thuật toán cụ thể để xác thực và mã hóa. Thay vào đó, nó cung cấp một framework để thương lượng các thuật toán cụ thể. Sự thương lượng này không dành riêng cho PPTP, và phụ thuộc vào các thương lượng tùy chọn PPP hiện có được chứa trong giao thức nén PPP (CCP), CHAP (Challenge handshake authentication protocol) và một số phần mở rộng và cải tiến PPP khác. Cũng bên ngoài thế giới của PPTP, các session PPP có thể thương lượng các thuật toan nén cũng như các thuật toán xác thực và mã hóa.

    Bất kỳ việc thông số sử dụng PPTP được gửi đến IETF PPEXT WG để xem xét như là một tiêu chuẩn Internet, nỗ lực tiêu chuẩn hóa của nó đã bị hủy bỏ. Việc thực thi của Microsoft đối với PPTP (nghĩa là MS-PPTP) được sử dụng rất nhiều trong các môi trường Windows NT. Tuy nhiên, bên ngoài những môi trường này MS-PPTP hoặc một phần thực thi khác của PPTP không được triển khai rộng rãi.

    Bằng cách sử dụng MS-PPTP, client và server thường xác thực nhau bằng cách sử dụng MS-CHAP, đây là phiên bản của Microsoft của CHAP, và mã hóa dữ liệu bằng cách sử dụng giao thức MPPE Microsoft Point-to-Point Encryption

Kết luận :
- Các gói tin đi qua nhiều router, và đi theo nhiều cách khác nhau chứ ko cụ thể 1 hướng xác định. Hình tượng đường hầm (tunnel) là do các gói tin đã được mã hóa, và chỉ người nhận mới giải mã để hiểu được nên nó giống như chúng ta đào 1 đường hầm đi thẳng từ bên nhận sang bên gửi ( và tất nhiên là cái hầm này không bị thông đi lung tung )  :D
PPP + MPPE = PPTP (Point to Point Tunneling Protocol)

Tạo VPN Server với Win XP

Hôm nay đọc bài này, thấy hay nên copy về. Nguồn tại đây :
http://zensoft.vn/ShowArticle.aspx?ID=2505

Thuật ngữ mạng riêng ảo xuất phát từ khái niệm khi chúng ta thiết lập kết nối giữa những người dùng của chúng ta thông qua môi trường mạng chung (như Internet hay Fram relay) nhưng vẫn đảm bảo tính riêng tư của dữ liệu, có nghĩa là những người dùng thuộc hệ thống khác trên cùng môi trường truyền này không thể thấy hoặc không thể can thiệp vào dữ liệu của chúng ta. Tính riêng tư trên một môi trường truyền dùng như vậy đã cho ta một hệ thống “mạng riêng ảo”.
Tại sao lại dùng VPN ? với các bạn học sinh, sinh viên, dùng VPN thì các bạn có thể trao đổi dữ liệu, chạy các ứng dụng trên LAN như game mạng,…Bạn cũng có thể tạo một FTP để chia sẽ dữ liệu nhưng cách này thì bạn lại không biết được chính xác ai đang truy cập tài nguyên trên máy tính mình. Trên Windows 2003 có RRAS giúp làm VPN server nhưng trên XP cũng có nhưng hạn chế hơn . Cách làm như sau :
Thực hiện trên Server
Bước 1 : Vào Start / Settings / Network Connections .
Bước 2 : Chọn New Connection Wizard sau đó chọn Next.

Bước 3 : Chọn Set up an Advanced Connection rồi Next
Bước 4 : Chọn Accept Incoming connection rồi Next.
Bước 5 : Tiếp tục chọn Next
Bước 6 : Chọn Allow virtual private Connections rồi Next
Bước 7 : Bạn tạo username và password để client chứng thực khi vào Windows . Bạn có thể chọn username đã có hoặc bấm nút Add để tạo một usernam mới . Mỗi client kết nối sẽ có một username và password. Sau đó chọn Next.


Bước 8 : Bạn chọn Internet Protocol ( TCP/IP ) rồi nhấn Next.

Bước 9 : Bạn chọn dãy địa chỉ IP sẽ cấp cho mạng mới , hoặc bạn cũng có thể cấp dãy địa chỉ IP của mạng hiện có của bạn cho Client. Bạn cũng có thể cho phép client chỉ định địa chỉ IP . Sau đó bạn tiếp tục next .

Bước 10 : Bạn thực hiện NAT trên router của bạn cho qua port 1723 cả TCP và UDP

Còn thiết lập VPN client thế nào thì không copy sang đây :D

Khi hoàn thành và có kết nối đến, ở trong Network Connection của VPN server có hình như sau :
Ở đây trên VPN server mình có tạo tài khoản là Guest, cho phép VPN đến



Thứ Bảy, 5 tháng 1, 2013

Thay đổi kích thước thanh Launcher trên Unity 2D

Trên Unity 3D thì khỏi nói rồi, cử vào Apperance mà thay đổi là xong. Còn trên Unity 2D thì không có. Các file cấu hình nằm trong /usr/share/unity-2d/shell
Mặc định Unity 2D launcher có chiều rộng là 48px. Sau đây chúng ta sẽ giảm xuống cho nhỏ hơn.
1, Backup các file trong /usr/share/unity-2d/shell
> tar cvfz ~/Documents/unity-2d-shell-backup.tar.gz
/usr/share/unity-2d/shell/*

2, Sửa các file sau :  ( nhớ sử dụng quyền root )

Shell.qml :width: 65 => width: 50 

common/IconTile.qml :sourceSize.width: 48 => sourceSize.width: 32sourceSize.height: 48 => sourceSize.height: 32

launcher/LauncherList.qmlproperty int tileSize: 54 => property int tileSize: 38property int selectionOutlineSize: 65 => property int selectionOutlineSize: 50

3, Logout rồi đăng nhập lại để xem sự thay đổi

Nguồn :
http://www.dedoimedo.com/computers/ubuntu-unity-2d-resize-launcher.html

p/s : đến Ubuntu 12.10 thì không còn sử dụng Unity 2D nữa .







Ubuntu 12.04 black/blank screen ( màn hình đen ) khi boot

Đang hí hoáy ubuntu, ấn phím giảm độ sáng thì bỗng nhiên black screen ( may ko phải là death screen như Windows ) nhưng cũng ko thể làm được gì. Restart máy khởi động lại vẫn bị, trong khi đó boot vào Windows 7 thì vẫn bt ( cài dual boot ). Sau một hồi google thì thấy cái này là chuyện thường gặp trong Ubuntu, xảy ra do liên quan đến driver của card đồ họa. Thường thì có 2 dòng chính là ATI và Nvidia.

Giải pháp nắm ở trên trang askubuntu.com :
http://askubuntu.com/questions/162075/my-computer-boots-to-a-black-screen-what-options-do-i-have-to-fix-it

Đối với card ATI Radeon như mình thì khởi động lại :
1, Taị Grub menu, bấm phím e
2, Dùng các phím mũi tên đến dòng có chữ quiet slash, đổi thành radeon.modeset=0
3, Ấn Ctrl + X để boot lại

Sau đó khi vào đc ubuntu, mở cửa sổ terminal gõ lệnh :
> sudo vi /etc/defaults/grub
Sửa dòng
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
thành
GRUB_CMDLINE_LINUX_DEFAULT="radeon.modeset=0" 
rồi gõ lệnh
>sudo update-grub
Sau đó ubuntu có thể boot bình thường, nhưng lúc này thì chỉ chạy đc chế độ Unity 2D.

Thứ Năm, 3 tháng 1, 2013

Install Google Chrome in Ubuntu 12.04

Google Chrome không có sẵn trong Ubuntu Software Center mà chỉ có Chronium. Vì thế phải lên trang chủ của chrome để download file .deb về. Tuy vậy khi cài đặt gặp lỗi vướng vào version của gói libnss và có thể là gói libxss
Cách giải quyết :

sudo apt-get install libnss3-1d:i386
sudo apt-get install libxss1:i386
Done !!!