Thứ Hai, 23 tháng 12, 2013

RTNETLINK answers: File exists - Configure interfaces ubuntu 12.04

After configure interface in ubuntu 12.04, restart service networking:
# service networking restart
....
RTNETLINK answers: File exists

And check interface shows nothing changed.
Solution:
# ip addr flush dev eth0

Thứ Hai, 14 tháng 10, 2013

Can not log in CentOS in runlevel 3 after install Oracle Database 11g R2

I had this issue after installed Oracle Database 11g R2 in CentOS 5.9 64-bit.
I could not log in CentOS in runlevel 3, but runlevel 5 or ssh was OK.
View log : /var/log/secure, I saw:


Oct 15 08:16:58 db1 login: PAM unable to dlopen(/lib/security/pam_limits.so)
Oct 15 08:16:58 db1 login: PAM [error: /lib/security/pam_limits.so: wrong ELF class: ELFCLASS32]
Oct 15 08:16:58 db1 login: PAM adding faulty module: /lib/security/pam_limits.so
Oct 15 08:17:00 db1 login: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
Oct 15 08:17:00 db1 login: Module is unknown

I remembered when installed Oracle, i edited file /etc/pam.d/login.
Appended file with line : session required /lib/security/pam_limits.so (Oracle docs said that ..... )
But my CentOS is 64-bit, so I changed it to session required /lib64/security/pam_limits.so and try logging. And now everything is OK.

Thứ Sáu, 23 tháng 8, 2013

CentOS 5.9 minimal

CentOS 5.9 không có bản iso minimal nhưng có thể sử dụng iso CentOS-5.9-x86_64-bin-1of9.iso để cài minimal. Chỉ cần trong lúc lựa chọn cài đặt các gói chỉ chọn group Base và bỏ chọn tất cả các group khác. Việc cài đặt diễn ra bình thường

http://centos-hn.viettelidc.com.vn/5.9/isos/x86_64/CentOS-5.9-x86_64-bin-1of9.iso
Manual: http://wiki.centos.org/Manuals/ReleaseNotes/CentOS5.9

Thứ Năm, 15 tháng 8, 2013

Tài liệu Solaris 10

Được giao nhiệm vụ tìm hiểu Solaris 10 + Oracle Directory Server và được giao 1 con SPARC để test ( yahuu ). Thế là vội vàng tìm tài liệu để vọc cái solaris trước. Đại loại là khá ít tài liệu hay, kể cả mấy cái có đánh giá cao trên amazon đi nữa. Còn tài liệu của oracle thì ... rất chuẩn, nhưng công nhận là nó viết chán thật.
Tóm lại là tìm được 2 cái link sau:
http://www.oracle.com/technetwork/server-storage/solaris10/documentation/index.html --> dù chê những vẫn phải đọc
http://www.c0t0d0s0.org/lksfbook/lksfbook_21022010.pdf --> khá hay
......

Thứ Tư, 19 tháng 6, 2013

The Philosophy of System Administration (2)

3.2 Nói với người dùng bạn đang làm gì

Đây là cảnh báo ở phút cuối trước khi sự thay đổi diễn ra; như vậy, nó sẽ là một cảnh báo lặp lại của thông báo đầu tiên, mặc dù bản chất của sự thay đổi sẽ rõ ràng hơn ("Hệ thống sẽ được nâng cấp ĐÊM NAY"). Đây cũng là thời điểm tốt để trả lời các câu hỏi nhận được - kết quả của việc đưa ra thông báo đầu tiên.
Tiếp tục với ví dụ trên, đây là một cảnh báo phút cuối tích cực:
Kế hoạch ngừng hoạt động của hệ thống đêm nay 
Nhắc lại: hệ thống ngừng hoạt động được thông báo từ thứ 2 sẽ được tiến hành vào đêm nay lúc 6pm ( nửa đêm theo giờ văn phòng tại Berlin). Các bạn có thể tìm thấy thông báo chính thức tại trang web nội bộ của công ty, mục System Administration.
Một vài người đã hỏi liệu họ có nên ngừng làm việc trước đêm nay để đảm bảo công việc được sao lưu trước khi hệ thống ngừng hoạt động. Điều này là không cần thiết vì công việc diễn ra tối nay sẽ không ảnh hưởng đến công việc trên các máy tính cá nhân.
Hãy nhớ, nếu ai đó đang viết những truy vấn SQL nên biết rằng một số chỉ số sẽ thay đổi. Điều này được ghi lại trên website của công ty, mục Finance. 
Người dùng đã được cảnh báo, và giờ bạn sẵn sàng để làm việc đó.

3.3 Nói với người dùng bạn vừa làm cái gì

Sau khi hoàn thành iệc thay đổi, bạn phải nói với người dùng bạn vừa làm gì. Một lần nữa nên có một thông báo tổng kết các thông báo trước (vì đơn giản lúc nào cũng có người không đọc chúng :D )
Chú ý: Hãy đảm bảo việc gửi thông báo này ngay sau khi công việc hoàn thành, trước khi bạn rời văn phòng về nhà. Một khi rời văn phòng, sẽ rất dễ quên, khiến người dùng như mò mẫm trong bóng tối về cách sử dụng hệ thống.
Tuy nhiên có một chú ý quan trọng cần thêm vào. Bạn cần cung cấp trạng thái hiện tại của hệ thống. Việc nâng cấp có hoàn thành đúng kế hoạch? Server lưu trữ mới sẵn sàng để phục vụ cho Engineering và không cho Finance? Những kiểu vấn đề như vậy sẽ được ghi ở đây.
Tất nhiên, nếu trạng thái hiện tại khác với những gì bạn thông báo trước đây, bạn nên làm rõ nó và giải thích cái gì sẽ được làm để đi đến cách giải quyết cuối cùng.
Trong ví dụ này, giả sử thời gian ngừng hoạt động có vấn đề. Module CPU mới không hoạt động, nhà sản xuất trả lời đây là một version đặc biệt cần nâng cấp. Mặt tích cực là quá trình chuyển database sang volume RAID diễn ra tốt đẹp (mặc dù lâu hơn dự kiến do vấn đề với module CPU)
Đây là một thông báo tích cực:
Thời gian ngừng hoạt động của hệ thống kết thúc 
Thời gian tạm ngừng hệ thống được lập cho ngày thứ 6 ( tham khảo trên mục System Administration, trang web nội bộ ) đã kết thúc. Không may là vấn đề phần cứng đã ngăn cản một công việc. Vì lý do đó mà toàn bộ công việc đã bị lâu hơn dự kiến 4 tiếng. Thay vào đó, toàn bộ hệ thống sẽ hoat động trở lại vào đêm nay (6am giờ Berlin)
Vì vấn đề phần cứng còn lại, mà hiệu suất của AP, AR và báo cáo cân đối tài chính sẽ được cải thiện đôi chút, nhưng không bằng kế hoạch ban đầu. Một kế hoạch tạm dừng thứ 2 sẽ được thông báo và lên lịch ngay sau khi vấn đề được giải quyết.
Chú ý rằng thời gian tạm ngừng thay đổi một vài chỉ số database; những người viết câu lệnh SQL nên kiểm tra thông tin trên mục Finance.
Mọi thắc mắc xin liên lạc với nhóm Quản lý hệ thống, máy lẻ 4321
Với thông tin này, người dùng sẽ có những thông tin cơ bản đê tiếp tục công việc, và hiểu rằng nó ảnh hưởng thế nào đến mình.

4. Nắm vững tài nguyên có được

Quản trị hệ thống hầu như là vấn đề cân bằng tài nguyên hiện có với việc con người và chương trình sử dụng tài nguyên. Vì thế người quản trị sẽ rất dễ bị stress ngắn trừ khi bạn nắm vững tài nguyên mình quản lý.
Một vài tài nguyên khá rõ ràng như:
  • Tài nguyên hệ thống, như sức mạnh xử lý hiện tại, bộ nhớ và phân vùng đĩa.
  • Băng thông mạng
  • Ngân sách dành cho IT
Nhưng một số lại không rõ ràng:

  • Dịch vụ cho hoạt động cá nhân, việc quản lý hệ thống khác, hay là cho 1 trợ lý hành chính.
  • Thời gian ( điều quan trọng khi thời gian liên quan đến những thứ như tổng thời gian bỏ ra khi sao lưu hệ thống )
  • Kiến thức ( trong sách vở, tài liệu hệ thống hay trong đầu của một người đã làm cho công ty 20 năm)
Điều quan trọng cần chú ý là việc kiểm soát đầy đủ các tài nguyên sẵn có rất giá trị, và giữ nó, việc thiếu nhận thức tình huống có thể tồi tệ hơn việc không nhân thức được mình có gì.

5. Nắm vững người dùng

Mặc dù một số người đề cao khái niệm "người dùng" (do một số người quản trị sử dụng thuật ngữ này một cách xúc phạm :D - noob ), nhưng thực sự nó không mang ngụ ý như vậy. Người dùng là những người sử dụng hệ thống và tài nguyên mà bạn chịu trách nhiệm quản lý, không nhiều cũng không ít. Như vậy, họ là vấn đề trung tâm để bạn có thể quản trị hệ thống một cách thành công; nếu không hiểu người dùng, bạn làm sao hiểu được tài nguyên hệ thống họ cần như thế nào?
Ví dụ xem xét một người kiểm toán viên ngân hàng. Anh ta sử dụng những ứng dụng bị giới hạn và yêu cầu ít tài nguyên hệ thống. Một kĩ sư phần mềm thì lại sử dụng nhiều ứng dụng và luôn cần thêm tài nguyên ( để tăng tốc độ xử lý ).
Hãy đảm bảo rằng bạn nắm rõ người dùng của mình.

6. Nắm vững công việc của công ty

Khi bạn làm việc cho một tập đoàn lớn, đa quốc gia hay một công ty nhỏ, bạn phải hiẻu được môi trường làm việc tự nhiên tại nơi làm việc. Bạn có thể đặt ra câu hỏi:
Mục đích của hệ thống mà mình quản trị?
Điểm chính ở đây là hiểu mục đích hệ thống của bạn một cách toàn diện:
Ứng dụng chạy trong thời gian cố định, như là cuối tháng, cuối quý hay cuối năm.
Thời gian bảo trì hệ thống có thể được thực hiện
Công nghệ mới có thể giải quyết vấn đề kinh doanh lâu dài.
Bằng cách tìm hiểu hoạt động kinh doanh của tổ chức, bạn sẽ ngày càng đưa ra quyết định tố hơn cho người sử dụng và cho bản thân mình.

7. Vấn đề bảo mật cần được nghĩ đến

Không cần biết bạn nghĩ gì về môi trường mà hệ thống đang chạy, bạn không thể bảo đảm an toàn cho tất cả các cấp độ. Kể cả một hệ thống chạy độc lập không kết nối tới Internet cũng có thể bị rủi ro ( mặc dù rõ ràng là sự rủi ro này khác với hệ thống kết nối ra ngoài)
Vì thế, vấn đề quan trọng là xem xét tình trạng bảo mật của những thứ bạn làm. Danh sách dưới đây chỉ ra những loại vấn đề cần được quan tâm:
  • Những vấn để khách quan có thể ảnh hưởng đến hệ thống của bạn
  • Vị trí, kiểu và giá trị của dữ liệu trên hệ thống
  • Kiểu và tần số truy nhập được ủy quyền tới hệ thống
Khi bạn đang suy nghĩ về vấn đề bảo mật, đừng có mắc sai lầm rằng kẻ phá hoại chỉ tấn công hệ thống từ bên ngoài. Rất nhiều vụ tấn công là do người trong công ty. Vì thế lần tới bạn đi vòng quanh văn phòng, nhìn mọi người xung quanh và hỏi bản thân mình:
Điều gì có thể xảy ra khi người đó cố gắng phá vỡ sự bảo mật của chúng ta?
Chú ý: Điều đó không có nghĩa là bạn sẽ xem tất cả các nhân viên là tội phạm. Nó có nghĩa là bạn sẽ xem kiểu làm việc mà mỗi người thực hiện và xác định xem khả năng họ có thể gây ra để phá vỡ hệ thống.

7.1 Hiểm họa từ Social Engineering

Trong khi phản ứng đầu tiên của người quản trị hệ thống khi nghĩ đến bảo mật là tập trung vào khía cạnh công nghệ, thì điều quan trọng lại là duy trì ý thức sử dụng. Khá thường xuyên những vi phạm bảo mật thường không liên quan đến vấn đề công nghệ, mà lại là con người.
Những kẻ quan tâm đến việc phá vỡ hàng rào bảo mật thường lợi dụng bản chất tự nhiên của con ngừoi để vượt qua kiểm soát truy nhập. Kĩ thuật này được gọi là social engineering. Đây là 1 ví dụ:
Một nhân viên nhận được một cuộc gọi từ bên ngoài. Người gọi tự xưng là CFO của tổ chức (các thông tin cơ bản được lấy từ website, mục Management Team).
Người gọi nói rằng mình gọi đến từ một nơi cách nửa vòng trái đất ( có thể là một câu chuyện bịa đặt hoàn toàn phù hợp, hoặc có thể website của công ty đưa lên rằng CFO sẽ tham dự một hội chợ thương mại)
Người gọi sẽ kể khổ: laptop bị mất tại sân bay, và đang làm việc với một khách hàng quan trọng và cần truy nhập vào nội bộ để kiểm tra tình trạng tài khoản của khách hàng. Liệu người nhân viên đó có nên đưa cho anh ta quyền truy nhập thông tin cần thiết ?
Bạn có biết người đó sẽ làm thế nào? Trừ khi được hướng đẫn (theo chính sách và thủ tục) bằng không bạn không thể chắc chắn điều gì.
Mục tiêu của chính sách và thủ tục như đèn giao thông, chúng cung cấp rõ ràng các chỉ dẫn về những gì là hoat động thích hợp hay không thích hợp. Tuy nhiên, cũng vì là đèn giao thông, nên chính sách và thủ tục cũng chỉ có tác dụng với những người làm theo. Và đó là mấu chốt của ván đề - không thể chắc chắn rằng tất cả sẽ tuân thủ theo những chính sách và thủ tục đó. Thực tế, tùy theo tính chất của tổ chức, bạn thậm chí không có thẩm quyển để xác định các chính sách đó, ít hơn cả việc thực thi chúng. Vậy điều gì xảy ra sau đó ?
Thật không may là không có đáp án dễ dàng nào cả. Hướng dẫn người dùng và làm tất cả mọi thứ để người dùng cảnh giác với vấn đề bảo mật và social engineering. Cung cấp các bài thuyết trình về an toàn thông tin vào giờ ăn trưa. Gửi các bài báo liên quan đến vấn đề an ninh lên mailing list. Và luôn sẵn sàng trả lời câu hỏi của người dùng.
Và ngắn gọn hơn là gửi những thông báo đến người dùng theo nhiều cách có thể. 

8. Lập kế hoạch trước

Người quản trị hệ thống cần tiếp thu các lời khuyên và làm theo một cách tốt nhất để trở thành một người quản trị giỏi - trong một ngày nào đó. Rồi khi môi trường thay đổi và khi đó người quản trị giỏi trở thành tầm thường. Lý do? Anh ta đã không lập kế hoạch trước
Thực tế không ai có thể đoán được tương lai với độ chính xác 100%. Tuy nhiên chỉ cần để ý 1 ít là có thể dễ dàng đọc được các dấu hiệu của sự thay đổi:
Việc đề cập một dự án mới trong cuộc họp nhân sự nhàm chán hàng tuần là một dấu hiệu chắc chắn rằng bạn sẽ phải hộ trợ người dùng mới trong tương lai gần.
Nói về việc mua lại một công ty khác có nghĩa là rất có thể bạn phải chịu trách nhiệm cho hệ thống mới từ xa.
Có thể đọc các dấu hiệu trên ( và tìm cách giải quyết ) sẽ khiên cuộc sống dễ thở hơn cho bạn và người dùng. :D

9. Mong đợi những bất ngờ

Trong khi cụm từ "mong đợi những bất ngờ" là nhàm chán thì nó lại phản ánh một sự thật cơ bản mà người quản trị hệ thống phải hiểu:
Sẽ có những lúc mà bạn không thể phòng vệ.
Sau khi cam chịu những thực tế của cuộc sông, thì người quản trị có thể làm gì? Câu trả lời nằm trên sự linh hoạt, bằng cách thực hiện công việc theo cách mà bạn được giao (và người dùng của bạn) thì mọi thứ đều có thể xảy ra. Lấy ví dụ như vấn đề không gian đĩa cứng. Giả thiết về việc không bao giờ có đủ không gian đĩa cứng giống như định luật vật lý - vạn vật hấp dẫn, đó sẽ là một giả định hợp lý khi bạn phải đối mặt với nhu cầu thêm không gian đĩa ngay bây giờ.
Vậy người quản trị sẽ làm gì trong tình huống này? Có thể dự phòng một vài đĩa trong trường hợp phần cứng. Vấn đề nhanh trong được giải quyết trong thời gian ngắn để chuẩn bị cho việc giải quyết vấn đề về lâu dài ( ví dụ như làm theo các thủ tục về tiêu chuẩn về việc mua thêm các ổ đĩa )
Bằng cách dự đoán những vấn đề có thể xảy ra, bạn luôn ở trong thế chủ động, có thể phàn ứng nhanh chóng và hiệu quả hơn là khi gặp bất ngờ.



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

Ubuntu 12.04 không nhận card mạng Ethernet

Bình thường thì Ubuntu sẽ tự dộng detect được card mạng Ethernet nhưng không hiểu sao con Dell 14r 5420 lại không detect được. Cụ tỉ lỗi như sau:
> ifconfig eth0
eth0error fetching interface information: Device not found
Kiểm tra:
> sudo lspci
Ethernet controller: Atheros Communications Inc. AR8161 Gigabit Ethernet (rev 10)

Thiếu driver ..., tìm cách giải quyết thì chả hiểu sao mấy bố trên mạng toàn dùng sudo apt-get .... (có mạng thì nói làm cái beep gì)

Cuối cùng tìm được cách giải quyết.
Lên trang http://wireless.kernel.org/download/compat-wireless-2.6/ download file compat-wireless-2012-05-09-p.tar.bz2 ( nên dùng bản gần đây nhất )
Copy vào usb rồi cắm vào con Ubuntu, giải nén
> tar -xvf compat-wireless-2012-05-09-p.tar.bz2
> cd compat-wireless-2012-05-09-p
> ./scripts/driver-select alx
> make
> sudo make install
> sudo modprobe alx (load module)

Done, thế là đã nhận được card mạng, kiểm tra lại bằng ifconfig eth0

P/s: Nếu vẫn chưa được thì tìm phiên bản compat khác rồi làm lại tuần tư các bước trên

Thứ Tư, 8 tháng 5, 2013

Một số câu lệnh SQL căn bản trong MySQL - Phần 2

Tiếp theo phần 1.

15, Insert dữ liệu vào table:
mysql> INSERT INTO name-table (name-field1, name-field2, ...) VALUE (value1, value2, ...);
Ví dụ:
mysql> INSERT INTO tbl_students (name, address) VALUE ('Nguyen Hoang Nam', 'Hanoi - Vietnam');

16, Update dữ liệu của 1 record:
mysql> UPDATE name-table SET name-field=new-value WHERE condition;
Giải thích: update new-value cho trường name-field của record được xác định bởi condition ( điều kiện );
Ví dụ:
mysql> UPDATE tbl_students SET address='TPHCM - Vietnam' WHERE name='Nguyen Hoang Nam';

17, Truy vấn dữ liệu trong database:
a, Truy vấn toàn bộ record:
mysql> SELECT * FROM name-table;
b, Truy vấn những record cụ thể:
mysql> SELECT * FROM name-table WHERE condition;
c, Truy vấn giá trị của field trong những record cụ thể

Thứ Ba, 7 tháng 5, 2013

Một số câu lệnh SQL căn bản trong MySQL - Phần 1

Ví dụ sử dụng ở đây là Windows - PowerShell còn Linux thì cũng hoàn toàn tương tự.
1, Đăng nhập vào mysql:
mysql -u user-name -p
Enter password: password

2, Đổi password của user:
mysqladmin -u user-name -p old-password password new-password

3, Xem thông tin chung về các database hiện có:
mysql> SHOW DATABASES;

4, Lựa chọn database để sử dụng:
mysql> USE name-database 
Ví dụ:
mysql> USE mysql ( chú ý câu lệnh USE có thể có hoặc không có dấu ";" )

5, Tạo table trong database:
mysql> CREATE TABLE name-table ( name-field1 defined-type options, name-field2 defined-type options, ... );
Ví dụ:
mysql> CREATE TABLE tbl_students ( id MEDIUMINT NOT NULL AUTO_INCREMENT, name CHAR(30) NOT NULL, address VARCHAR(255) NOT NULL, PRIMARY KEY (id) );

6, Xem thông tin về các table trong database;
mysql> SHOW TABLES;

7, Xem thông tin các field ( column ) trong 1 table:
mysql> DESCRIBE table-name;
Ví dụ:
mysql> DESCRIBE tbl_students;

8, Đổi tên table:
mysql> RENAME TABLE old-table-name TO new-table-name;

9, Thêm 1 field ( column ) vào trong table:
mysql> ALTER TABLE name-table ADD new-field define-type options AFTER exist-field;
Giải thích: câu lệnh này sẽ thêm new-field vào trong table với vị trí là đứng sau exist-field;
Ví dụ:
mysql> ALTER TABLE tbl_students ADD email VARCHAR(45) AFTER name;

10,  Thay đổi thông tin 1 field trong table:
a, Đổi tên:
mysql> ALTER TABLE name-table CHANGE old-field-name new-field-name define-type;
Giải thích : đổi old-field-name thành new-field-name, vẫn phải khai báo lại kiểu
Ví dụ:
mysql> ALTER TABLE tbl_students CHANGE email phone_number VARCHAR(45);

b, Đổi kiểu:
mysql> ALTER TABLE name-table CHANGE old-field-name old-field-name define-type;
Giải thích: cả 2 trường đều là old-field
Cách khác:
mysql> ALTER TABLE name-table MODIFY name-field define-type;
Ví dụ:
mysql> ALTER TABLE tbl_students MODIFY phone_number VARCHAR(20);

11, Đếm số record có trong table:
mysql> SELECT COUNT(*) FROM name-table;

12, Xóa các record trong table:
mysql> DELETE FROM name-table;

13, Xóa table:
mysql> DROP TABLE name-table;

14, Xóa database:
mysql> DROP DATABASE name-database;





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 !!!