Các kiểu đóng gói thường dùng trong mạng WAN đó chính là HDLC, PPP, Frame Relay,… Trong bài viết hôm này mình sẽ giới thiệu đến các bạn về giao thức PPP là gì và một số cấu hình đơn giản trên thiết bị Router.
PPP là gì?
Hai giao thức liên kết dữ liệu (data link) WAN sử dụng trong mạng WAN kết nối Serial Point-to-Point được dùng phổ biến là HDLC và PPP.
PPP là một giao thức thường được chọn để triển khai trên một kết nối WAN nối tiếp. PPP có hỗ trợ quá trình xác thực PAP và CHAP
Quá trình chứng thực trong PPP
PPP tổ chức gồm 2 giao thức sau:
-
Link Control Protocol (LCP): sử dụng cho việc thiết lập, cấu hình và kiểm tra kết nối ở tầng liên kết dữ liệu.
-
Network Control Protocol (NCP): sử dụng cho việc thiết lập và cấu hình các giao thức tầng mạng khác nhau
Quá trình thiết lập kết nối PPP
Quá trình thiết lập kết nối PPP qua 4 bước: Thiết lập kết nối và thương lượng cấu hình; quyết định chất lượng kết nối; thương lượng cấu hình giao thức tầng mạng và kết thúc kết nối.
Thiết lập kết nối và cấu hình
Mỗi thiết bị PPP gửi gói tin LCP để cấu hình và thiết lập kết nối ở tầng liên kết dữ liệu. Gói tin LCP chứa các trường: “MTU”, “compression”, và giao thức chứng thực kết nối. LCP đầu tiên mở kết nối và thương lượng các tham số cấu hình. Giai đoạn này hoàn tất khi các gói tin thống nhất cấu hình (ACK) được gửi và nhận.
Quyết định chất lượng kết nối
Liên kết được kiểm tra xem có tốt không để chuyển các giao thức lên tầng mạng hay không. Sau đó Client có thể được chứng thực. Việc chứng thực diễn ra trước giai đoạn cấu hình giao thức tầng mạng. PPP hỗ trợ hai giao thức chứng thực là PAP và CHAP.
Thương lượng cấu hình tầng mạng
Các thiết bị PPP gửi gói tin NCP để chọn và cấu hình một hoặc nhiều giao thức tầng mạng (ví dụ như IP). Khi giao thức tầng mạng được cấu hình, các gói tin từ giao thức tầng mạng có thể được gửi qua liên kết. Nếu LCP kết thúc kết nối, nó cung cấp các giao thức tầng mạng để có thể có những hành động phù hợp
Kết thúc kết nối
LCP có thể kết thúc kêt nối bất cứ lúc nào. Điều này luôn được thực hiện ở yêu cầu của người dùng. Kết thúc kết nối cũng có thể xảy ra do sự cố vật lý, như là dứt kết nối hay vượt quá thời gian qui định (timeout).
Giao thức chứng thực PAP và CHAP
Chứng thực PPP bằng PAP
PAP sử dụng cơ chế bắt tay 2 bước. Đầu tiên Client sẽ gửi username và password cho Server để xác thực. Server sẽ tiến hành kiểm tra, nếu thành công thì sẽ thiết lập kết nối; ngược lại sẽ không thiết lập kết nối với Client.
Password được gửi dưới dạng không được mã hóa (clear – text) và username/password được gửi đi kiểm tra một lần trước khi thiết lập kết nối.
Chứng thực PPP bằng CHAP
Sử dụng lỹ thuật 3 bước bắt tay (three-way handshake). CHAP được thực hiện ở lúc bắt đầu thiết lập kết nối và luôn được lặp lại trong suốt quá trình kết nối được duy trì.
Client muốn thiết lập kết nối với Server, Server gửi một thông điệp “challenge” yêu cầu Client gửi giá trị để Server chứng thực. Thông điệp gửi từ Server có chứa số ngẫu nhiên dùng làm đầu vào cho thuật toán “hash”.
Client nhận được thông điệp yêu cầu Server. Nó sẽ sử đụng thuật toán “hash” với đầu vào là hostname, password và ngẫu nhiên vừa nhận được và tính toán ra một giá trị nào đó và gửi giá trị này qua cho Server.
Server sẽ kiểm tra danh sách “username” (nếu cấu hình nhiều username) để tìm ra “username” nào giống với hostname của Client. Sau khi tìm được “username” đó, nó dùng thuật toán “hash” để mã hóa password tương ứng và ngẫu nhiên trong thông điệp “challenge” ban đầu mà nó gửi cho Client để tính ra một giá trị nào đó. Và giá trị này sẽ so sánh với giá trị do Client gửi qua, nếu giống nhau thì xác thực thành công; nếu không thành công thì kết nối sẽ bị xóa ngay.
Một cách đơn giản, ta cần nắm ý tướng sau khi cấu hình CHAP: mỗi đầu kết nối phải có khai báo username và password. Username bên R1 phải là hostname của R2 và username khai báo bên R2 là hostname của R1, password hai bên phải giống nhau.
Cấu hình PPP
Cấu hình PPP
Router (config) # interface <interface>
Router (config-if) # encapsulation ppp
Cấu hình chứng thực PPP PAP
Bước 1: Tạo username và password tren Server
Router (config) # username <username> password <password>
Bước 2: Enable PPP
Router (config-if) # encapsulation ppp
Bước 3: Cấu hình xác thực
Router (config-if) # ppp authentication {pap|chap|pap-chap|chap-pap}
Bước 4: PAP phải được enable trên interface bằng lệnh
Router (config-if) # ppp pap sent-username <username> password <password>
Cấu hình PPP chứng thực bằng PAP
Mô tả:
Router R2 sẽ chứng thực cho Router R1 bằng giao thức PAP
Hướng dẫn cấu hình:
Cấu hình cơ bản
R1(config) # int s0/0/0
R1(config-if) # ip address 192.168.1.1 255.255.255.0
R1(config-if) # exit
R1(config) # int s0/0/1
R1(config-if) # ip address 192.168.1.2 255.255.255.0
R1(config-if) # exit
Cấu hình chứng thực PAP
R1(config) # int s0/0/0
R1(config-if) # encapsulation ppp
R1(config-if) # ppp pap sent-username totolink password totolink
R2(config-if) # username totolink password totolink
R2(config) # int s0/0/1
R2(config-if) # encapsulation ppp
R2(config-if) # ppp authentication pap
Cấu hình định tuyến: Tùy chọn giao thức
Kiểm tra lệnh cấu hình
Sử dụng các lệnh sau:
Router # Ping
Router # Debug ppp authentication
Cấu hình chứng thực PPP CHAP
Trường hợp 1: Các router dùng hostname để chứng thực
Mô tả:
Router R2 chứng thực cho router R1 bằng giao thức CHAP. Trường hợp mặc định, router gửi hostname để chứng thực.
Các cấu hình cơ bản
Cấu hình cơ bản
R1(config) # int s0/0/0
R1(config-if) # ip address 192.168.1.1 255.255.255.0
R1(config-if) # exit
R1(config) # int s0/0/1
R1(config-if) # ip address 192.168.1.2 255.255.255.0
R1(config-if) # exit
Cấu hình chứng thực CHAP
R1(config) # username R2 password totolink
R1(config) # int s0/0/0
R1(config-if) # encapsulation ppp
R2(config) # username R1 password totolink
R2(config) # interface serial 0/0/1
R2(config-if) # encapsulation ppp
R2(config-if) # ppp authentication chap
Cấu hình định tuyến: tùy chọn giao thức
Kiểm tra lệnh cấu hình
Sử dụng các lệnh sau:
Router # Ping
Router # Debug ppp authentication
Trường hợp 2: Các router gửi username & password bất kỳ
Mô tả:
Router R2 chứng thực cho router R1 bằng giao thức CHAP. Trường hợp gửi hostname và password được chỉ ra
Các cấu hình cơ bản
Cấu hình cơ bản
R1(config) # int s0/0/0
R1(config-if) # ip address 192.168.1.1 255.255.255.0
R1(config-if) # exit
R1(config) # int s0/0/1
R1(config-if) # ip address 192.168.1.2 255.255.255.0
R1(config-if) # exit
Cấu hình chứng thực CHAP
R1(config) # int s0/0/0
R1(config-if) # encapsulation ppp
R1(config-if) # ppp chap hostname totolink
R1(config-if) # ppp chap password totolink
R2(config) # username totolink password totolink
R2(config) # interface serial 0/0/1
R2(config-if) # encapsulation ppp
R2(config-if) # ppp authentication chap
Cấu hình định tuyến: tùy chọn giao thức
Kiểm tra lệnh cấu hình
Sử dụng các lệnh sau:
Router # Ping
Router # Debug ppp authentication
Tóm lại, hai giao thức dùng để chứng thực trên PPP trong môi trường WAN là PAP và CHAP. PAP có độ bảo mật kém hơn vì nó gửi username/password dưới dạng không mã hóa và việc chứng thực chỉ diễn ra một lần. Đối với CHAP, tham số chứng thực được gửi đi dưới dạng mã hóa và việc chứng thực được lặp lại trong suốt quá trình kết nối.