Tải bản đầy đủ (.doc) (24 trang)

Distribution System Project

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (565.73 KB, 24 trang )

Giới thiệu các dịch vụ

TELNET, NFS, DHCP, FTP
dựa trên giao thức TCP/IP
Tổng quan về giao thức TCP/IP
Trước khi đi vào các dịch vụ Telnet, NFS, DHCP, FTP chúng ta cần hiểu một số khái niệm
về bộ giao thức TCP/IP (). TCP/IP là hầu như là một bộ giao thức phổ biến nhất hiện nay, cho việc
kết nối truyền thông giữa các máy
1. Các khái niệm cơ bản.
Trước khi bắt đầu thay đổi các tập tin hệ thống, chúng ta xem lại các khái niệm cơ bản về địa chỉ
IP.

a. IP Address

Các mạng chuẩn TCP/IP sử dụng các địa chỉ 32 bit để xác nhận các mạng riêng và tất cả các thiết
bị được sử dụng bên trong mạng. Những địa chỉ này được gọi là địa chỉ Internet hay địa chỉ IP.
32 bits của địa chỉ IP được phân làm 4 phần 8-bit. Mỗi phần 8-bit được nhận giá trị từ 0 – 255.
Trong địa chỉ IP, Mỗi phần 8-bit được phân cách nhau bằng một dấu ‘.’. Ví dụ như địa chỉ:
192.168.43.1
Các địa chỉ IP được xác lập dựa vào mô hình kích cỡ mạng. Các địa chỉ mạng được phân làm 3
loại: lớp A, lớp B, lớp C. Ba lớp mạng này phân 32 bit địa chỉ IP thành nhiều loại kích cỡ mạng và
số máy có trong mạng.
Lớp địa chỉ A sử dụng 1 byte cho địa chỉ mạng và 3 byte còn lại cho địa chỉ máy, lớp này cho lên
đến 16 triệu địa chỉ máy. Lớp địa chỉ B sử dụng 2 bytes cho địa chỉ mạng và 2 bytes cho địa chỉ
máy, vì thế 16 bit cho khai báo lên đến 65000 máy, chỉ có một vài công ty lớn mới sử dụng lớp
này. Lớp địa chỉ C có 3 bytes dành cho địa chỉ mạng và 1 byte dành cho địa chỉ máy. Vì vậy nó chỉ
có thể khai báo tối đa 254 máy (địa chỉ 0 và 255 không sử dụng để khai báo) nhưng có rất nhiều
địa chỉ mạng con.

1



b. Network Mask

Tiếp theo, chúng ta cần 1 mặt nạ mạng. Địa chỉ này thiết lập khá dễ dàng dựa vào địa chỉ IP mà
chúng ta đã thiết lập cho máy. Địa chỉ mạng là địa chỉ có nội dung giống như địa chỉ IP nhưng được
thiết lập giá trị 255, ví dụ như nếu chúng ta có một địa chỉ thuộc lớp C thì địa chỉ mặt nạ của chúng
ta là 255.255.255.0, tương tự đối với lớp A là 255.0.0.0, và lớp B là 255.255.0.0.

c. Network Address

Thực sự ra thì địa chỉ mạng là kết quả thực hiện phép toán AND giữa địa chỉ IP và địa chỉ mặt nạ.
Địa chỉ này có ý nghóa muốn nói rằng chúng ta thuộc mạng con nào, ví dụ như địa chỉ chúng ta là
192.168.14.1 thuộc lớp C thì địa chỉ mạng con của chúng ta là 192.168.43.0.
Để có thể lấy đúng địa chỉ mạng của chúng ta, đơn giản là bật các nhóm bit địa chỉ IP ở các byte
dành cho tên máy về 0. Ví dụ một lớp C với địa chỉ IP là 192.168.43.1 sẽ có địa chỉ mạng
192.168.43.0.
Nếu chúng ta chỉ làm việc với một địa chỉ loopback thì chúng ta không cần thiết lập địa chỉ
mạng.

d. Broadcast Address

Địa chỉ broadcast được sử dụng khi một máy muốn gởi cùng một gói dữ liệu đến tất cả các máy
khác trên mạng. Để có địa chỉ broadcast, đơn giản là chúng ta bật các bit của địa chỉ IP ở các byte
dành cho tên máy thành 255. Vì vậy, nếu chúng ta có địa chỉ IP là 192.168.43.1 thì chúng ta có địa
chỉ broadcast như sau 192.168.43.255.
Nếu chúng ta chỉ cấu hình địa chỉ loopback thì chúng ta không cần quan tâm đến địa chỉ broadcast
này.
Các tập tin cấu hình TCP/IP UNIX
File
/etc/hosts

/etc/networks
/etc/services
/etc/protocols
/etc/hostsname

Description
Khai báo các địa chỉ và tên máy tương ứng
Khai báo tên mạng
Danh sách các dịch vụ
Các giao thức được hỗ trợ
Tên máy

Để sửa đổi nội dung các tập tin này, yêu cầu đơn giản là chúng ta có một bộ soạn thảo văn bản
định dạng ASCII. Việc sửa đổi nội dung các tập tin này khá dễ dàng và đơn giản.
2. Tìm hiểu về các tập tin cấu hình.

a. Tập tin /etc/hosts

Tập tin /etc/hosts là một danh sách đơn giản bao gồm các địa chỉ IP và các mật danh tương ứng.
Đây là tập tin mà chúng ta có thể liệt kê tất cả các máy chúng ta muốn truyền thông đến. Trong
các mạng nhỏ, chúng ta cần thêm tất cả các máy trong mạng vào tập tin naøy.

2


Mọi tập tin /etc/hosts ban đầu đều có 1 dòng localhost (được gọi là loopback có địa chỉ là
127.0.0.1) và một dòng là tên máy của chúng ta nếu chúng ta đặt tên cho máy khi cài đặt hệ
thống. Nếu chúng ta không cung cấp tên và không có dòng nào khác hơn là localhost, thì chúng ta
nên thêm vào. Dùng trình soạn thảo để thêm địa chỉ và tên máy của chúng ta cũng như địa chỉ và
tên máy mà chúng ta cần khai báo.

Giả dụ đây là nội dung tập tin của chúng ta:

127.0.0.1
192.168.43.1
192.168.43.2
192.168.43.3
192.168.43.4

localhost
Locnt
Manh
Duy
Linh

Các tập tin cấu hình TCP/IP UNIX
File
/etc/hosts
/etc/networks
/etc/services
/etc/protocols
/etc/hostsname

Description
Khai báo các địa chỉ và tên máy tương ứng
Khai báo tên mạng
Danh sách các dịch vụ
Các giao thức được hỗ trợ
Tên máy

Để sửa đổi nội dung các tập tin này, yêu cầu đơn giản là chúng ta có một bộ soạn thảo văn bản

định dạng ASCII. Việc sửa đổi nội dung các tập tin này khá dễ dàng và đơn giản.
3


2. Tìm hiểu về các tập tin cấu hình.

Tập tin /etc/hosts

Tập tin /etc/hosts là một danh sách đơn giản bao gồm các địa chỉ IP và các mật danh tương ứng.
Đây là tập tin mà chúng ta có thể liệt kê tất cả các máy chúng ta muốn truyền thông đến. Trong
các mạng nhỏ, chúng ta cần thêm tất cả các máy trong mạng vào tập tin này.
Mọi tập tin /etc/hosts ban đầu đều có 1 dòng localhost (được gọi là loopback có địa chỉ là
127.0.0.1) và một dòng là tên máy của chúng ta nếu chúng ta đặt tên cho máy khi cài đặt hệ
thống. Nếu chúng ta không cung cấp tên và không có dòng nào khác hơn là localhost, thì chúng ta
nên thêm vào. Dùng trình soạn thảo để thêm địa chỉ và tên máy của chúng ta cũng như địa chỉ và
tên máy mà chúng ta cần khai báo.
Giả dụ đây là nội dung tập tin của chúng ta:

127.0.0.1
192.168.43.1
192.168.43.2
192.168.43.3
192.168.43.4

localhost
Locnt
Manh
Linh
Duy


Nó được biểu diễn trong phần hosts của taäp tin etc/hosts sau

4


:

Các lệnh nhận biết kết nối:
lệnh ifconfig:
Lệnh ifconfig dùng để nhận biết các địa chỉ đang thực thi,như ví dụ sau:

leänh ping:

5


Lệnh ping là lệnh dùng để gửi các tín hiệu đến một máy nào đó cần kết nối xem, kết nối
đó có thực hiện được tốt không, nếu kết nối tốt ta sẽ nhận được thông tin phản hồi ,lệnh có thể
được thực hiện bằng hai cách:



Ping theo địa chỉ ip và ping theo hostsname như:

Setup các thành phần cho các giao thức:

Trước khi có thể thực hiện các giao thức đã nói ở trên ta cần setup cho Server bằng cách
gán các thông tin cần thiết, bằng lệnh setup, sau đó sẽ tuần tự thực hiện các giao thức:

Thiết lập cơ chế cho giao thức Telnet và FTP:


6


FTP SERVICES ( File Trasfer Protocol)
Những điểm cơ bản:
FTP là một giao thức dùng để truyền dữ liệu trên Internet, đặc biệt là truyền File như : HTTP và
SMTP, cách sử dụng của nó là di chuyển những File cần sử dụng của hai máy, nếu bạn cần di
chuyển một tập tin lớn hay một tài liệu. Thì chắc chắn FTP sẽ được sử dụng cho mục đích đó. FTP
có 2 giao thức, trong đó bạn cầncà 2 việc đó là gởi và nhận Files, và điều khiển cả hai quá trình
này.
Giao thức có độ tin cậy để truyền tập tin giữa 2 đầu cuối . FTP dựa trên gia thức TCP để truyền dữ
liệu.
FTP hoạt động theo cơ chế server – client (Ftp server & Ftp Client)
FTP cuõng cung cấp kèm theo các chức năng, tiện nghi để kiểm tra quyền hạn trên các hệ thống
tập tin hay để di chuyển trong hệ thống tập tin, …
FTP có thể dùng để truyền tập tin giữa các hệ điều hành khác nhau.
FTP sử dụng được 2 mode truyền là ASCII và Binary
FTP cung cấp các chức năng như : login, kiểm tra chủ quyền, di chuyển trong hệ thống tập tin ở
vùng được phép, truy xuất các tập tin
FTP hỗ trợ hai chế độ login để làm việc là chế độ cho normal user ( có account làm việc tại FTP
server ) và chế độ hoạt động của những người vô danh anonymous của hệ thống FTP server.

7


FTP có thể dùng ở chế độ text mode với dòng lệnh trực tiếp từ shell prompt.
Hầu hết các WEB Browser hiện nay kết hợp chức năng sử dụng FTP vào để dễ sử dụng trên
Internet nên việc dùng FTP rất tiện lợi. Chú ý là đa số các Web Browser này khai báo mặc định
chế độ user anonymous cho FTP

Tất cả các loại file đều được cung cấp: sẵn sàng chạy phần mềm cho các loại máy tính
khác nhau , thư viện ảnh tónh và video với những hình ảnh di động và âm thanh. Internet cũng cung
cấp những kho chứa tương tự nhau. Bạn có thể dùng những dịch vụ này bằng cách sử dụng những
trung tâm của TCP/IP: giao thức truyền file hay FTP.
FTP được tạo ra để đáp ứng nhu cầu cơ bản xuất hiện phát sinh sớm trong lịch sử của
Internet: di chuyển một file từ máy này sang máy khác. Quá trình được coi là đơn giản : bạn muốn
tìm nạp một file mà tồn tại trên một máy được định vị ở một nơi nào đó hay ngược lại, bạn muốn
sao chép một file từ máy tính cục bộ của bạn đến một máy ở xa.
Trên hầu hết các hệ thống, giao thức truyền file được thực hiện bằng lệnh có tên FTP. Một
khi bạn gọi ra FTP, bạn phải thâm nhập vào server ở xa. Nếu bạn có được một bản kê trên một
máy ở xa định rõ một ID và Password của người dùng như bạn đang thâm nhập vào hội Telnet.
Nếu bạn muốn lấy một file “doc.txt” mà bạn biết nó ở địa chỉ IP 192.168.43.2
ftp 192.168.43.2
Connectd to192.168.43.2
220-wellcome to the dhvl
Name (192.168.43.2) anonymous
331-Guest login ok, send e-mail address as password.
Password:
331-Guest login ok, access restrictions apply
ftp > cd pub
ftp > getdoc.txt
200-PORT command successful
150-Operning ASCII mode data connection for/pub/doc.txt (1234bytes)
226-Transfer complete
loca: index.txt remote: doc.txt
ftp > quit
221-Goodbye
Ở trên bạn có thể được nhắc phải nhập ID của người dùng: trong trường hợp này chúng ta dùng
“tên nặc danh” với quy ươc ID giả bạn có thể được xác định những dịch vụ FTP dùng cho công
cộng . Lệnh “get” báo cho server ở xa biết tập tin nào bạn muốn truy tìm. Các file được gửi đến

bạn qua chế độ ASCII mặc định : sau đó chúng ta sẽ khảo sát chế độ “nhị phân” luân phiên. Quá
trình FTP cho bạn biết tên file được dùng trên trạm làm việc của bạn và Sever ở xa, tên gởi đến có
thể khác nhau vì những quy ước đặt tên file khác nhau trên những hệ thống máy tính khác nhau.
Một khi tập tin được phân phối trên mạng và được đặt vào đóa cứng của bạn bởi chương trình,
client FTP-cục bộ, bạn có thể hoặc là tìm một file khác hoặc đóng tác vụ bằng “quit”.

8


Giả sử rằng chúng ta không biết rõ tên file mà chúng ta tìm. Lệnh FTP dir sẽ đưa ra một
danh sách các file.

ftp > dir
200 PORT command successful.
150 Operning ASCII mode data connection for /bin/ls (0 byte).
Total 6
Drwxr-xr-x 2 root 512 Oct 6 2001 bin
Drwxr-xr-x 2 root 512 Oct 6 2001 etc
Drwxr-xr-x 18 bin 512 Oct 12 23:50 pub
226 bytes Transfer complete.
159 bytes received in 0.02 seconds (9.86 Kbytes/s)

Haàu hết các server FTP nặc danh đều chạy trên các máy chủ Unix và trường hợp này là
ngoại lệ. Danh sách thư mục giống danh sách mà bạn sẽ thấy nếu bạn la một người dùng của máy
chủ đó và khi bạn đánh một lệnh để trình bày thư mục lên máy: danh sách các file sẽ tương tự như
kết quả của lệnh “ls – 1” trên Unix
2. Tìm hiểu cách hoạt động của FTP đối với TCP
FTP sử dụng 2 kênh TCP: TCP port 20 được sử dụng cho dữ liệu, và TCP port 21 được sử dụng cho
lệnh. Việc sử dụng 2 kênh này tạo cho FTP khác với hầu hết các chương trình truyền tập tin khác,
và thông qua chúng TCP có thể đồng thời truyền lệnh và dữ liệu FTP.

FTP sử dụng 1 trình server chạy liên tục và 1 chương trình độc lập được thực thi trên máy client.
Chương trình FTP Server này được gọi là ftpd (FTP daemon) và chương trình FTP Client là ftp.
Sau khi đăng nhập vào 1 máy từ xa dùng FTP, trên thực tế chúng ta không ở trên máy từ xa
mà chúng ta vẫn ở trên máy client (tức máy cục bộ của chúng ta), vì thế tất cả các chỉ thị cho việc
truyền tập tin hay di chuyển thư mục phải được quyền của máy cục bộ chứ không phải của máy từ
xa. Tiến trình này thực thi sau khi có một kết nối FTP được thiết lập. Trình tự của một phiên FPT
tổng quát như sau:
 Xác nhận userID và Password được đăng nhập
 Xác định thư mục khởi đầu
 Định nghóa kiểu truyền
 Người sử dụng thực thi các lệnh thao tác
 Đóng kết nối
Tùy chọn xác định lỗi (debugging) có thể thêm vào dòng lệnh FTP bằng cách thêm tham số –d
vào lệnh. Khi đó các chỉ thị từ máy client được thể hiện có thêm ký tự  ở đầu chỉ thị. Trong khi
đó các chỉ thị từ Server có 3 số ở đầu chỉ thị. Có tham số PORT trong dòng lệnh dùng để xác định
9


địa chỉ kênh dữ liệu trên máy client đang đợi sự phản hồi từ Server. Nếu không có tham số PORT,
kênh 20 (giá trị mặc định) sẽ được sử dụng. Tiếc rằng các tiến trình truyền tập tin không thể cho
phép thực thi trong chế độ debugging.
. Cách sử dụng FTP
Sử dụng FTP đơn giản là chúng ta chỉ cần khởi động phần mềm Client FTP và cung cấp
cho nó tên của máy từ xa hoặc địa chỉ của máy từ xa cần kết nối.
Ví dụ:
ftp mạnh
hay
ftp 192.168.43.2
Sau khi tiến trình đăng nhập hoàn tất, chúng ta sẽ trông thấy dấu nhắc FTP> chỉ ra rằng hệ thống
từ xa sẵn sàng chấp nhận các chỉ thị.

Một khi chúng ta đã đăng nhập vào hệ thống từ xa, chúng ta có thể dùng các lệnh thông thường
của Linux để hiển thị nội dung tập tin hay chuyển đổi giữa các thư mục. Ví dụ để thể hện nội dung
của một thư mục, chúng ta sử dụng lệnh dir hay lệnh ls. Để chuyển đổi thư mục dùng lệnh cd. Để
trở về thư mục cha sử dụng lệnh cd .. Như chúng ta thấy, những lệnh này giống như chúng ta sử
dụng ở máy cục bộ.
Tuy nhiên chúng ta không thể sử dụng chức năng phím tắt trong khi sử dụng FPT (nghóa là chúng
ta nhấn phím Tab để chương trình tự lấy tên phù hợp). Rõ hơn là chúng ta phải nhập tên tập tin
hoặc thư mục từ đầu đến cuối. Nếu chúng ta đánh sai tên tập tin hay thư mục, chúng ta sẽ nhận
được thông báo lỗi và chúng ta phải nhập lại từ đầu. Nhưng cũng may là nếu chúng ta thực thi FPT
thông qua chế độ đồ họa (X_Window), chúng ta có thể sử dụng nội dung từ những dòng đã nhập
trước đó.
Trong quá trình dùng FPT, đương nhiên chúng ta cần phải biết làm cách nào để nhận 1 tập
tin từ hệ thống từ xa cũng như làm cách nào để tạo gửi 1 tập tin đến máy đó, Trước tiên chúng ta
thử sử dụng lệnh get nhằm mục đích khi chúng ta di chuyển qua lại giữa các thư mục của máy từ
xa và tìm 1 ra tập tin nào đó mà chúng ta muốn lấy về máy cục bộ
Sau khi tiến trình đăng nhập hoàn tất, chúng ta sẽ trông thấy dấu nhắc FTP> chỉ ra rằng hệ thống
từ xa sẵn sàng chấp nhận các chỉ thị.
Một khi chúng ta đã đăng nhập vào hệ thống từ xa, chúng ta có thể dùng các lệnh thông thường
của Linux để hiển thị nội dung tập tin hay chuyển đổi giữa các thư mục. Ví dụ để thể hện nội dung
của một thư mục, chúng ta sử dụng lệnh dir hay lệnh ls. Để chuyển đổi thư mục dùng lệnh cd. Để
trở về thư mục cha sử dụng lệnh cd .. Như chúng ta thấy, những lệnh này giống như chúng ta sử
dụng ở máy cục bộ.
Tuy nhiên chúng ta không thể sử dụng chức năng phím tắt trong khi sử dụng FPT (nghóa là chúng
ta nhấn phím Tab để chương trình tự lấy tên phù hợp). Rõ hơn là chúng ta phải nhập tên tập tin
hoặc thư mục từ đầu đến cuối. Nếu chúng ta đánh sai tên tập tin hay thư mục, chúng ta sẽ nhận
được thông báo lỗi và chúng ta phải nhập lại từ đầu. Nhưng cũng may là nếu chúng ta thực thi FPT

10



thông qua chế độ đồ họa (X_Window), chúng ta có thể sử dụng nội dung từ những dòng đã nhập
trước đó.

Lệnh put sẽ truyền tập tin từ thư mục hiện hành máy cục bộ đến máy từ xa.
Cả hai lệnh get và put chỉ có thể truyền mỗi lần một tập tin, vì vậy khi chúng ta cần truyền một
lúc nhiều tập tin cần phải sử dụng lệnh mget và mput. Ví dụ sau giả sử truyền các tập tin có đuôi
là .doc từ máy từ xa đến cục bộ.
mget *.doc
Ngược lại nếu muốn truyền từ máy cục bộ đến máy từ xa ta dùng lệnh:
mput *.doc
FTP cung cấp 2 kiểu truyền dữ liệu là: ASCIII và Binary. Mặc định FTP sử dụng kiểu
ASCII, để thiết lập kiểu truyền Binary (nhằm mục đích truyền những dữ liệu có các ký tự đặc biệt
được nhúng trong các bảng biểu, đồ họa…) chúng ta dùng lệnh:
binary
Chúng ta cũng có thể chuyển kiểu từ Binary về ASCII bằng lệnh ascii.
Để thoát FTP, ta đánh lệnh quit hoặc exit, cả 2 lệnh này sẽ đóng kết nối của bạn đến máy từ xa
và sau đó ngưng FTP trên máy cục bộ.
Sau đây là danh sách các lệnh dùng của FTP.

Các lệnh thường sử dụng:
ascii
Binary

Chuyển sang chế độ truyền kiểu ASCII
Chuyển sang chế độ truyền kieåu Binary

11


cd

close
del
dir
get
hash
help
lcd
mget
mput
open
put
pwd
quit

Chuyển đổi thư mục trên Server (máy từ xa)
Đóng kết nối
Xóa một tập tin trên Server (máy từ xa)
Thể hiện nội dung thư mục trên Server (máy từ xa)
Lấy một tập tin từ Server (máy từ xa) về máy cục bộ
Thể hiện 1 ký tự # cho mỗi block được truyền xong
Thể hiện danh sách lệnh của FPT
Thay đổi thư mục trên máy Client (máy cục bộ)
Lấy nhiều tập tin từ Server (máy từ xa) về máy cục bộ
Gửi nhiều tập tin đến Server (máy từ xa) từ máy cục bộ
Kết nối đến Server (máy từ xa)
Gửi một tập tin đến Server (máy từ xa) từ máy cục bộ
Thể hiện thư mục hiện hành của Server (máy từ xa)
Terminates the FTP session

CÁC HỆ THỐNG FILE MẠNG (NFS)

NFS là một hệ thống file mạng được phát triển vào cuối năm 1990 bởi SNN Microsystems
và được thêm vào hệ điều hành SNNOS của nó (một phiên bản của UNIX). NFS đầu tiên được
thiết kế và vẫn được dùng chính như là một hệ thống file mạng cục bộ. NFS thuận lợi hơn những
hệ thống file mạng cục bộ. NFS thuận lợi hơn những hệ thống file mạng cục bộ đó là: NFS dùng IP
như giao thức chuyển vận. Do bởi điều này, kỹ thuật Tunneling (đường ống) là không cần thiết và
giao thông NFS có thể được giữ trực tiếp qua liên mạng dựa trên IP.
Dùng IP cho giao thức NFS cho phép khách hàng NFS trao đổi thông tin với máy phục vụ
NFS một cách trực tiếp qua Internet mà không cần qua những máy trung gian. (intermedia
servers).
SUN Microsystem đã đưa ra một tiêu chuẩn hướng dẫn sử dụng Protocal cho NFS và đặt
tiêu chuẩn trong phạm vi công cộng (RFC-1094). Tiêu chuẩn này trình bày giao thứccho phép
nhũng người bán (vendors) thực hiện dễ dàng những phiên bản NFS vốn có thể liên hoạt động với
phiên bản SUN của NFS. SUN tin chắc rằng sẽ có một dãi bổ sung rộng từ phía người bán
(vendors).
NFS thì tích hợp tốt đối với hầu hết hệ thống dựa trên Unix. Trên hầu hết hệ thống Unix. NFS
được phân phối như là một phần của hệ điều hành cơ sở. Một vài hệ thống Unix sẽ tự động cài đặt
cấu hình NFS cho mạng client-server. Rất nhiều người sử dụng Unix dùng NFS mà không nhận
thức rõ ràng về nó.
Bất cứ hệ thống nào đều có thể được dùng như là một khách hàng NFS hay một server hay
cả hai với những sự thay đổi cấu hình đơn giản. Để đặt cấu hình cho một hệ thống như là một
12


Server. Việc điều hành hệ thống phải xác định khu vực của đóa được truy cập khách hàng gắn
thêm vào mạng. Cấu hình của dữ liệu được xuất phát từ Server được chứa trong file etc/exports.
Một ví dụ file exports như sau:
/usr/man –ro
/home/steve –access=bongo.stsf.com
Những phần khác nhau của địa có thể truy xuất từ những khối điều khiển truy cập khác nhau.
Trong ví dụ trước, dữ kiện trong /usr/man (và tất cả dữ liệu trong thư mục dưới /usr/amn) được xuất

chỉ đọc đến khắp mọi nơi. Cây thư mục /home/steve được xuất ra đến hệ thống bongo.stfs.com với
tiến trình đọc ghi.
Để truy cập dữ liệu từ /home/steve lên hệ thống ibis.stfs.come, người điều khiển hệ thống
phải đánh vào những câu lệnh sau:
Mkdir /usr/usrs/steve
Mount ibits.stfs.com: /home/steve /usr/usrs/steve

Hìnhình 11.4 đưa ra cách một hệ thống file có thể được dùng chung trong NFS. Lệnh mount kết
hợp một hệ thống file mạng với đường dẫn cục bộ. Chú ý rằng việc tên cục bộ giống tên từ xa là
không cần thiết. Việc kết nối vào mạng (Network mount) mà người điều khiển hệ thống muốn tạo
ra tại thời điểm khởi động lại hệ thống được đánh vào một tập tin là /etc/fstab. Một khi việc kết
nối thành công hoàn toàn, dữ liệu trong /usr/usrs/steve có thể được truy cập trên hệ thống client
(khách hàng) chỉ như thế nó là đóa cục bộ.

Ibits

bongo

Export /home/steve access=bongo
moutnibits:/home/steve
Trong khi NFS được tích hợp tốt và dễ dùng, nó vẫn còn được thiết kế như một hệ thống
file mạng cục bộ và có vấn đề định tỉ lệ vào một hệ thống file liên mạng. Những khó khăn này
thuộc về vấn dề an toàn dữ liễu, giao thức và điều hành hệ thống.
Vấn đề an toàn NFS là một phần mở rộng đơn giản của vấn đề an toàn hê thống file Unix.
Trong Unix, mỗi file được sở hữu bởi một user đơn (người dùng).
Hệ thống tập tin tìm kiếm quyền sở hữu của một file dựa trên một nguyên gọi là định danh
người dùng (UIP). Mặc dù số này thường được trình bày dưới dạng một tên tượng trưng, nó được
chứa bên trong và tên tượng trưng thì thường chứa trong tập tin /etc/passwd trên hệ điều haønh Unix.

13



Khi hệ thống A xuất một tập tin đến hệ thống B, những số UID trên hệ thống B được dùng
để điều khiển việc truy cập tới những tập tin chừa hệ thống A.Trên hệ thống điều hành Unix,
người điều khiển h thống , có đặt UID bên trong và tên tượng trưng thì thường chứa tập tin client
( khách hàng) truy cập bất cứ filenào quaNFS mà được xuất đọcghi đến hệ thống của họ.
Khi hệ thống A xuất một tập tin đến hệ thống B,những số UID trên hệ thống Bđược dùng
để truy cập tới những tập tin chứa trong hệ thống A.Trên hầu hết các hệ điều hànhUnix, người
điều khiển hệ thống, có thể đặt UID bằng một số bất kì, cho phép người điều khiển hệ thống của
một client truy cập bất cứ file nào qua NFS mà được xuất đọc ghi đến hệ thống của họ.
Việc xuất nhập dữ liệu qua NFS cho phép truy cập đọc ghi đến hệ thống không thể tin cậy
là một lổ hổng về an toàn. Trong một môi trường liên mạng, thật là nguy hiểm khi tin tưởng vào
người điều khiển của một hệ thống xa xôi, với việc dùng chung rộng rãi dữ liệu đọc-ghi trong một
môi trường liên mạng. Hệ thống NFS an toàn thêm vào hệ thống xác thực (anthentication) mà giải
quyết vấn đề an toàn đặc biệt này. Thậm chí với NFS an toàn, việc định tọa độ quan trọng
(significant) giữa client và server vẫn còn cần thiết cho việc dùng chung dữ kiện đọc ghi.
Cầu hình an toàn của NFS cho đa hệ thống có thể được định vị bằng cách dùng dịch vụ
thông tin Hệ Thống (NIS). Một phiên bản trước đây của NIS được gọi là “ những trang giấy vàng”
hay “YP”. NIS cho phép nhiều hệ thống dùng chung một cấu hình an toàn thông thường. Thật
không may NIS đòi hỏi việc hợp tác giữa tất cả các hệ thống trong một mạng để tin cậy vào khối
điều khiển an toàn trung tâm (central sacurity authority)
Trong hi NFS không có đủ an toàn để hoạt động trong một môi trường liên mạng chung
dùng dữ liệu đọc-ghi, nó có thể tỏ ra rất hiệu quả trong môi trường (enterprisewede) kết hợp nơi
mà một điều khiển trung tâm có thể ít rắc rối hơn.
Thậm chí nếu giao thức NFS được dực trên giao thức chuyển vận IP. Giao thức dữ liệu NFS
cũng không tương thích tốt với môi trường liên mạng.
Số thông điệp phải được huyển đổi giữa client và server mỗi khi một tập tin được truy cập
hay một khối dữ liệu được đọc. Bởi vì quá nhiều “gó” được trao đổi giữa client và server sự tiềm
tàng lâu hơn của một môi trường liên mạn g có thể tác động hiệu quả đến thời gian đáp ứng lónh
hội được của một hệ thống file NFS trong một môi trường liên mạn g (khi được so sánh với những

sơ đồ khác NFS có thể tương đối chậm qua những mối liên kết bận rộn, dài tải.
Hệ thống tập tin trên NFS server được NFS Client mount lên hệ thống tập tin cục bộ của nó
cho phép các người dùng dễ dàng truy suất các tập tin cục bộ của chnh nó.
NFS cho phép các máy tính trong hệ thống mạng Unix chia xẻ các hệ thống tập tintrên đóa
cứng một cách tự nhiên nhất.
Khi trang bị đầy đủ các phần mềm chức năng bất kỳ hệ thống nào cũng có thể vừa là NFS
Server vừa là NFS Client.
Cơ chế thực hiện NFS
NFSMOUNT
RPC
3

TCP

UDP

2

Internet Protocol

1

Network Access

14


Trước hết NFS Server export thư mục chứa hệ thống tập tin mà nó muốn chia xẻ cho các
Client sử dụng.
NFS Client mount thư mục được exported này của NFS Server vào hệ thống tập tin của

Client, thu mục được mounted này thành một thư mục bình thường trên hệ thống tập tin của Client.
Để NFS có thể tạo sự trong suốt cho sự truy xuất từ xa xuyên qua mạng. NFS cần phải tạo nên
giao diện giữa clients và server qua 2 protocols:
Mount Protocol (mount, rpc.mount): Client gởi tên đường dẫn (Path Name) và nhận một file
handle từ Server. File Handle này nhận diên đúng hệ thống tập tin, đóa và inode number của thư
mục được mounted. Các lệnh gọi về sau sẽ dùng File Handle này.
NFS Protocol (nfsd; rpc.nfsd): Giao thức này hỗ trợ hầu hết các system call của Unix, ngoại
trừ việc gọi lệnh “ Mở và Đóng” tập tin . Để đọc tập tin, Client gởi đến server một thông báo
chứa file handle, đường dẫn tương từ thư mục được mounted. Đoạn khởi đầu đọc và số bytes phải
đọc,…; Server dựa vào thông báo này đọc xong gởi kết quả về cho Client.
Cơ chế thiết lập và sử dụng NFS
Tại NFS Server.
NFS Server phải khai báo tài nguyên đưa ra hệ thống sữ dụng qua tập tin “/etc/exports”.
Tập tin /etc/exports chứa nhiều dòng; mỗi dòng mô tả thư mục mà nó muốn chia sẽ ra mạng.
Một dòng của tập tin /etc/exports gồm có:
<Tên thư mục> <quyền hạn, tính chất, các host ( không) được truy cập >
Dưới đây là một tập tin /etc/exports mẫu:
#exports file for hostA
/mnt/cdrom
(ro)
/pub
(rw)
/pub/special
(noaccess)
/home/scrdoc hv30 (rw) hv50 (rw, no_root_squash)
/usr/doc
*.hcm.vn
(ro)
/home/ftp/pub
(ro,insecure,all_squash)

Các option đi kèm theo có thể xem giải thích trong manual của exports [man exports].
Thí dụ:
Ro :
Rw :
Noaccess :

read only.
read & write.
không cho phép truy suaát.
15


All_squash : xem mọi người dùng truy suất như anonymous user, hữu dụng khi export thư
mục công cộng pub trong root directory của FTP server
Khi khởi động NFS Server sẽ đọc nội dung tập tin /etc/exports và theo đó mà gởi thông báo
ra mạng các tài nguyên thư mục sẽ được chia sẽ của nó qua 2 chương nền (daemon) là rpc.nfsd và
rpc.mountd.
Nếu tập tin tập tin /etc/exportfs được hiệu chỉnh sau khi khởi động mà chúng ta muốn có tác
động ngay lập tức thì có thể gọi lệnh /usr/sbin/exportfs hay 2 lệnh trực tiếp:
Kill –l
Kill –l
Lúc đó các giao thức này sẽ đọc lại tập tin /etc/exports và dựa vào đó mà thi hành.

Tại NFS Client
Khi khởi động hệ thống sẽ đọc vào tập tin /etc/fstab để gọi các lệnh mount tương ứng các
hệ thống tập tin được khai báo. Ta cũng có thể khai báo để hệ thống mount tự động các thư mục
được chia sẽ qua NFS khi khởi đông máy, nhưng khi đó thì đòi hỏi NFS Server phải được khởi
động trước NFS Client.
Thí dụ:


/etc/sftab của máy locnt co dòng
vl:/usr/doc
/mnt/doc
nfs
auto
1 3
vl:/home/srdoc/mnt/scrdoc nfs
noauto,user 1 3
Nếu muốn mount NFS ngay lập tức thì có thể dùng lệnh muont như sau ( chỉ có người quản
trị hệ thống root mới có thể sử dụng lệnh mount đầy đủ như thế này)
Mount vl:/usr/doc /mnt/doc
Hay user thường có thể gõ lệnh

-t nfs <option phụ>

Mount /mnt/scrdoc.

DHCP (Dynamic Host Configuration Protocol)

1. Khái quát về DHCP.
DHCP là một giao thức dùng để cung cấp địa chỉ động cho các máy Client. DHCP Server
tự động gán địa chỉ IP cho host có cấu hình dùng chức năng DHCP client. Nó rất tiện lợi cho việc
cấp phát địa chỉ tự động khi có yêu cầu của DHCP client, giảm sai sót và trùng lắp khi gán địa chỉ
IP tónh ( thủ công ).

16


Khi khởi động DHCP client yêu cầu xin cấp địa chỉ IP và các thông tin quan hệ
( Gateway, DNS, ….), DHCP nhận được yêu cầu sẽ truy trong cơ sở dữ liệu tìm trong phạm vi được

ấn định trước chọn một địc chỉ IP thích hợp và đề nghị cung cấp cho DHCP client. Nếu các thông
tin về địa chỉ IP cho client được nhận thì client tiếp tục hoàn tất giao thức TCP/IP, còn ngược lại thì
TCP/IP không thể khởi động được.
Trên một mạng có thể có nhiều DHCP Server. DHCP Server phải có phần mềm DHCP
Server Service được cài đặt và khởi động trên mạng trước khi DHCP Client khởi động. Đặc biệt
DHCP phải có cấu hình tónh về địa chỉ IP, SubnetMask, bên cạnh đó DHCP Server không thể là
một DHCP Client. Một DHCP Server phải khai báo các thông tin về phạm vi địa chỉ IP và các
thông tin khác để cung cấp cho các Client.
2. Hiện thực kết quả thiết lập DHCP Server
a. Thiết lập DHCP Server
Bước 1: Khai báo cấu hình cho DHCP Sever bằng cách thay đổi nội dung của tập tin /etc/exports.
Sau đây là nội dung của tập tin /etc/exports.
# Sample /etc/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.43.255;
option routers 192.168.43.1;
option domain-name-servers 192.168.43.1;
option domain-name “locnt”;
subnet 192.168.43.0 netmask 255.255.255.0 {
range 192.168.43.1 192.168.43.5
}
Bước 2: Kiểm tra xem có trình dhcpd nào đang chạy trên máy cục bộ chưa? Bằng lệnh: ps ax | grep
dhcpd
- Nếu có thì kill tiến trình của dhcpd đang có:
#kill <mã tiến trình của dhcpd hiện hành>
- Nếu không có thì đánh lệnh: #dhcpd. Nếu gặp thông báo sau xem như chúng ta đã
định cấu hình DHCP Server thành công.


17


b. Thiết lập DHCP Client
Định cấu hình DHCP Client cho máy cục bộ. Chú ý rằng DHCP Client không được có địa chỉ IP
cố định, tức là không được nhập bất kỳ địa chỉ nào chỉ chọn chức năng DHCP cho DHCP Client

Telnet (telecommunications network)
Chương trình Telnet nhằm mục đích kết nối vào một máy từ một máy khác mà khoảng cách
giữa hai máy là đáng kể thông qua một mạng. Nói cách khác, một người sử dụng trên một máy A có
khả năng kết nối vào máy B dù máy B ở bất kỳ đâu trên mạng. Và hiệu ứng công việc giống như là
người sử dụng đang ngồi trước máy B mà thực chất người sử dụng đang ngồi ở máy A. Dịch vụ Telnet
hỗ trợ thông qua cổng số 23 của giao thứ TCP.
Telnet tỏ ra khá thu hút người sử dụng bởi vì người sử dụng có thể làm việc tại một máy mà
có thể truy cập đến các nguồn của một máy khác (bao gồm các ổ đóa, chương trình). Khi được kết nối
trực tuyến với một máy khác, bộ vi xử lý của máy tính đó phải quản lý và dịch bộ mã giữa 2 maùy,

18


đôi khi gây ra tình quá tải cho bộ vi xử lý. Nếu có nhiều kết nối từ xa, bộ vi xử lý của máy bị kết nối
có thể tốn một số lượng rất lớn thời gian quản lý công việc dịch mã. Đây là chức năng đặc biệt của
các Server, nó có thể xử lý nhiều kết nối vào cùng lúc, nếu mỗi kết nối đều bắt Server xử lý toàn bộ
thì khi đó bộ vi xử lý của Server sẽ bị chậm lại do bị quá tải.
Telnet xử lý vấn đề này để giảm sự quá tải bằng cách gắn vào mỗi máy tính một tính năng riêng
bên trong giao thức Telnet. Khi hai máy truyền thông bằng Telnet, Telnet tự nó có thể xác định và
thiết lập các mối truyền thông trong suốt quá trình kết nối. Khi 1 kết nối đã được thiết lập bởi
Telnet, cả hai đầu kết nối phải đồng ý dựa trên cùng một phương thức cho cả hai máy để chuyển
giao thông tin, điều này sẽ làm giảm bớt mức độ xử lý của bộ vi xử lý Server trong công việc.
Thông thường, Telnet đòi hỏi 1 tiến trình server chấp nhận các yêu cầu gửi đến cho 1 phiên

Telnet. Trên các hệ thống Unix, tiến trình này được gọi là telnetd. Trên Windows NT4 và các hệ
điều hành chuẩn PC khác, luôn đòi hỏi phải có một chương trình Telnet Server. Máy Client chạy
một chương trình được gọi là telnet, thực hiện kết nối đến server. Đặc biệt là các máy Linux,
chúng thực thi đồng thời cả hai Client và Server, cụ thể là một người có thể kết nối vào các máy
khác trên mạng và các người khác cũng có thể kết nối vào máy của người này.
Giao thức Telnet sử dụng khái niệm máy ảo (network virtual terminal) để định nghóa cả hai đầu
kết nối của một kết nối Telnet. Mỗi đầu của kết nối (mỗi máy ảo) có một bàn phím và một màn hình. Mô
hình như sau:

Giao thức Telnet sử dụng 2 chương trình tại mỗi đầu là telnet và telnetd, trình telnet dành cho Client
(máy yêu cầu kết nối) và telnetd dành cho Server (máy được kết nối). Khi một kết nối được thiết lập
thông qua Telnet, telnetd (hay bất kỳ chương trình nào khác hoạt động giống như Telnet Server) khởi
động tiến trình Server để chạy các ứng dụng. Mỗi một phím được gõ trong phiên Telnet phải đi thông
qua nhiều tiến trình khác nhau,
Để bắt đầu Telnet, chúng ta phải cung cấp tên máy hoặc địa chỉ IP của máy cần kết nối.

19


Ví dụ: Khi muốn Telnet den máy Mạnh ta đán lệnh sau:

Hoặc

Telnet 192.168.43.2
Telnet manh

Lệnh: telnet name | IP_Address

Khi kết nối được thiết lập, hệ thống yêu cầu một định danh (User ID) và 1 password để đăng nhập.
Chúng ta có thể đăng nhập vào bằng bất kỳ định danh nào có trong danh sách user của máy từ xa,

nhưng chắc chắn chúng ta không thể đăng nhập bằng định danh root của máy từ xa đó.
Một kết nối thành công thực sự xảy ra trông giống như sau:

20


Khi chúng ta nhìn thấy kết quả như hình trên, thực chất trình tự là Telnet kết nối đến hệ thống từ
xa, báo cho chúng ta biết nó đã kết nối, sau đó nó thiết lập các tham số truyền thông giữa 2 hệ
thống. Khi thực hiện xong, dấu nhắc login thể hiện và theo sau là yêu cầu password. Nếu định
danh và password đúng, dấu nhắc ‘$’ được thể hiện xác định rằng máy từ xa đang được kích hoạt.
Để thoát, dùng tổ hợp phím Ctrl+D.
Chúng ta có thể dùng bộ lệnh của Telnet vào bất cứ lúc nào, thường thì dùng tổ hợp phím
Ctrl+], chế độ dòng lệnh của telnet dùng để cho chúng ta nhập các lệnh liên quan đến máy client
(là máy mà chúng ta thực chất đang ngồi trước nó) thay vì Server, chẳng hạn chúng ta muốn thay
đổi thư mục hay chạy một ứng dụng cục bộ. Một khi kết nối được thiết lập thành công, phiên làm
việc của chúng ta đang thực hiện là trên máy từ xa bằng tất cả các câu lệnh có thể của hệ thống
đó. Tất cả các chỉ thị có liên quan đến server, vì câu lệnh thể hiện thư mục sẽ thực thi công việc là
liệt kê thư mục hiện tại của server, chứ không phải là Client. Để nhìn thấy thư mục của Client,
chúng ta phải nhập theo chế độ lệnh của telnet (command mode).
Trình telnet thực sự có ích trong trường hợp chúng ta đang làm việc trên một máy có khả năng xử
lý yếu và chúng ta mong muốn có khả năng xử lý của một máy khác hoặc máy nào đó có 1 công
cụ đặc biệt mà chúng ta muốn sử dụng nhưng không có trên máy cục bộ của chúng ta.
Tiện ích Telnet có mặt hầu hết trong các hệ điều hành khác nhau. Giả sử từ Windows chúng ta có
thể telnet đến Unix, màn hình thể hiện trên Windows có giao diện kiểu dòng lệnh giống với Unix.
Các tập lệnh cơ bản của Telnet.
Nếu chúng ta muốn nhập kiểu lệnh của telnet trong khi chúng ta đã kết nối đến một máy từ
xa, nhấn tổ hợp phím CTRL + ].
Nếu chúng ta nhập lệnh telnet không có tham số, chúng ta sẽ khởi tạo dịch vụ telnet ở chế độ lệnh.
Chúng ta sẽ có dấu nhắc riêng kiểu telnet telnet>. Chúng ta có thể nhập bất kỳ lệnh nào của
telnet. Sau đây là danh sách các lệnh của telnet:


21


open
close
quit
set
send
display
status
?

Kết nối đến máy từ xa
Hủy kết nối từ xa
Đóng kết nối và thoát telnet
Thay đổi các giá trị của biến cấu hình
Gửi một lệnh đến máy từ xa
Thể hiện các thiết lập của cấu hình telnet
Thể hiện các tình trạng hiện tại của kết nối
Trợ giúp

a. Lệnh open.

Lệnh open nhận 2 tham số, tên máy và cổng. Tên máy là bắt buộc phải có, nó có thể là tên máy
hoặc là địa chỉ IP, địa chỉ này là địa chỉ của máy từ xa sẽ được tạo kết nối. Máy từ xa này phải
được hỗ trợ dịch vụ telnet nghóa là phải có trình telnetd hay trình Telnet Server. Cổng là tùy chọn,
là cổng dànd riêng để sử dụng trong việc kết nối đến máy từ xa. Mặc định cổng này được chọn là
23.
open host [|port]


b. close

Lệnh Cclose dùng để hủy kết nối (nếu đang có kết nối). Nếu chúng ta đã kết nối đến một máy B
nhưng sau đó chúng ta quyết định muốn được kết nối đến máy C, thì đơn giản chúng ta đánh lệnh
close và sau đó đánh lệnh open C.
22


c. quit

Lệnh quit chỉ được dùng khi chúng ta đã hoàn tất công việc và chúng ta thật sự muốn đóng telnet.
Nó sẽ đóng một kết nối đang mở, sau đó ngắt dịch vụ telnet, trở về dấu nhắc cục bộ ‘$’.

d. set

Telnet có vài biến riêng được sử dụng để định cấu hình. Chúng ta có thể dùng lệnh set để thay đổi
những giá trị này. Để xem những giá trị hiện tại, sử dụng lệnh display.

e. ?

Dấu chấm hỏi (?) là một lệnh telnet không có tham số, nó đưa ra danh sách các lệnh của telnet. Nó
giúp cho chúng ta nhớ được các lệnh của telnet khi chúng ta quên. Để biết cách dùng một lệnh nào
đó, sử dụng ? với một lệnh xem như là 1 tham số. Dấu ? cũng có thể được sử dụng như một tham
số cho lệnh set, send, toggle để thể hiện cho chúng ta biết tham số các lệnh này là gì.

23


24




Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×