25/05/2018, 00:03

Network administration

UUCP (Unix to Unix copy) UUCP là một nhóm các lệnh và các dịch vụ cung cấp dịch vụ mạng đơn giản cho phép người sử dụng truyền dữ liệu trên UNIX từ một máy này sang máy khác qua serial port (modem) thông thường dùng để ...

UUCP (Unix to Unix copy)

UUCP là một nhóm các lệnh và các dịch vụ cung cấp dịch vụ mạng đơn giản cho phép người sử dụng truyền dữ liệu trên UNIX từ một máy này sang máy khác qua serial port (modem) thông thường dùng để truyền file, e-mail, chạy các lệnh trên máy ở xa. Hiện nay có nhiều version của UUCP trên các hệ điều hành các hệ điều hành UNIX tuy nhiên chúng vẫn tuân thủ theo quy tắc cấu hình chung của UUCP.

Các thành phần của UUCP: Các lệnh trong UUCP chia làm hai lớp: lệnh của người sử dụng và các lệnh quản trị.

Các chương trình người sử dụng là được chứa trong /usr/bin

  • uucico - Công cụ nối kết các máy tính xa cho phép truyền tập tin hay thực hiện lệnh.
  • uucp - Sao chép một tập tin từ một máy đến máy khác, uucp tạo tập tin dữ liệu và tập tin làm việc, xếp hàng các công việc để truyền và gọi uucico daemon nối kết với máy từ xa.
  • uustat - Hiển thị trạng thái của yêu cầu truyền ( uucp,uuto,uux) nó cũng kiểm soát hàng chờ truyền.

Các lệnh quản trị

Đa số các lệnh quản trị là ở trong /usr/lib/uucp các tập tin dữ liệu và shell script là ở trong /etc/uucp.

  • uucleanup - Xóa thư mục spool nó thường được thực hiên từ shell script được gọi là uudemon.cleanup mà được khởi động bởi cron.
  • Uutry -Kiểm tra khả năng gọi và gỡ rối, nó kéo theo uucico dể thiết lập thông tin giữa máy tính cục bộ và máy tính từ xa.
  • uucheck - Kiểm tra sự tồn tại của các thư mục chương trình và các tập tin support của uucp nó có thể cũng kiểm tra tập tin Permission để kiểm tra ngữ pháp.

Deamons Có ba deamon trong hệ thống uucp. Các deamon này diều khiển truyền tập tin và thực hiện lệnh. Chúng cũng có thể được chạy từ shell.

  • uucico- Chọn thiết bị sử dụng để nối kết, thiết lập nối kết đến máy tính từ xa, thực hiện các yêu cầu login và kiểm tra chủ quyền, truyền các tập tin dữ liệu, thực thi , đưa kết quả vào log và báo cho người sử dụng bởi mail. Khi uucico gọi máy từ xa nó liên lạc với uucico của máy từ xa. uucico được gọi bởi uucp, uuto,uux và uusched, uutry.
  • uuxqt - Thực hiện các yêu cầu thực thi từ xa, nó sẽ kiểm tra thư mục spool để tìm tập tin thực thi (X.file) đã được gửi từ máy từ xa. Khi tập tin X.file đã tìm thấy uuxqt mở nó và nhận một danh sách các tập tin dữ liệu được yêu cầu thực thi. Nó sẽ kiểm tra chủ quyền truy xuất của cáac tâp tin này. Kế đó nó đọc tập tin permission để kiểm tra chủ quyền thực hiện lệnh được yêu cầu. uuxqt được thực hiện bởi uudemon.hour shell script.
  • uusched -Định thời biểu các hàng chò trong thư mục spool. Trước khi khởi động uucico, uusched sắp thứ tự ngẫu nhiên các máy tính từ xa sẽ được gọi. uusched được khởi động ở thời gian boot bởi /etc/rc nó sẽ được thực hiện bởi uudemon.hour.

Khởi động uucp : uucp sẽ khởi động với các lệnh trong shell script mà quét vòng các máy từ xa, định thời biểu truyền và xoá các log cũ.

$su uucp

$crontab < /usr/lib/uudemon.crontab

Các file cấu hình /usr/lib/uucp

Systems, Devices, Permissions, Dialers, Dialcodes

Devices Chứa các thông tin liên hệ vị trí, tốc độ của bộ gọi tự động(ACU), đường tự động và thiết bị mạng.

Format Type Line Line2 Class Dialer-Token Pairs

Ví dụ ACU cua0 - 1200 Hayes D

Type ACU Sử dụng với modem

Direct Sử dụng với đường dây trực tiếp

Line Tên thiết bị ví dụ modem /dev/cua0

Class Tốc độ

Dialer-token pairs tương ứng với loại modem trong tập tin Dialers

Dialers Xác định cách trao đổi ban đầu trước khi truyền dữ liệu như.Ví dụ :

Hayes =,-, "" dApTE1V1X1Q0S2=255S12=255S50=2 c OK EATDTT c CONNECT

Ý nghĩa của các kí tự escape

p ngưng (1/4 giây)

d trể (2 giây)

D Chỉ số điện thoại không biến đổi bởi tập tin Dialcodes

T Chỉ số điện thoại biến đổi bởi tập tin Dialcodes

K Thêm vào một BREAK

E Hiện thi kiểm tra

e Cấm hiển thi kiểm tra

Đầu dòng

c Không xuống dòng

Xuống dòng

Systems Chứa các thông tin cần thiết bởi uucico để thiết lập nối kết với máy từ xa. Mổi phần tử của tập tin thể hiện một máy tính có thể được gọi. Ví dụ :

Format System-Name Time Type Class Phone Login

Ví dụ eagle Any ACU 1200 555678 in:nuucp ord:okasa

System-Name -Tên của máy từ xa.

Time - Thời gian máy từ xa có thể bị gọi.

Wk1700-0800 mọi ngày trong tuần từ 17h-8h

Login - Chứa các thông tin login.

Dialcodes: Chứa các mã điện thoại viết gọn. Khuôn dạng như sau:

viết tắt số

HN 014

Permissions Xác định chủ quyền login, truy xuất tập tin và thực hiện lệnh của máy từ xa. Mổi phần tử của tập tin là một dòng có dạng tên=giá trị. Có thề có các chủ quyền sau :

LOGNAME= Xác định các máy có thể log vào.

MACHINE= Xác định các máy từ xa mà máy cục bộ có thể log.

REQUEST= yes/no cấm hay cho phép máy từ xa nhận các tập tin từ máy cục bộ.

SENDFILES=yes/no cấm hay cho phép máy từ xa gửi các tập tin đến máy cục bộ.

READ/WRITE= Xác định các thư mục được phép đọc hay ghi.

READ=/var/spool/uucppublic

WRITE=/var/spool/uucppublic

NOREAD/NOWRITE Xác định các thư mục cấm đọc hay ghi.

COMMANDS Xác định các lệnh mà máy từ xa có thể thực hiện.

TCP/IP and Neworks

TCP/IP

TCP/IP là giao thức mạng chuẩn được hỗ trợ trong UNIX .

Thông thường khi cài đặt hệ thống bao giờ cũng được yêu cầu xác định các thông tin liên quan đến hệ thống như host name, domain (nếu host nằm trong domain), địa chỉ IP. Tuy nhiên có thể cấu hình mạng sau khi cài đặt bằng các tiện ích.

Đặt tên host: Có thể dùng lệnh hostname để đặt tên của host (phải người có thẩm quyền). Có thể đặt tên dạng tên vùng nếu nó nằm trong domain.

hostname jac.domain

Cấu hình loopback driver: Để thiết lập cấu hình TCP/IP mạng dùng lệnh ipconfig

ifconfig <interface> <IP_address> netmask <mask> broadcast <address>

  • interface - Xác định kiểu network interface card. (Ví dụ 3Com 3C5x9 như elx0).
  • IP_address - Địa chỉ IP gán cho network interface. Có thể sử dụng bằng host name cung cấp trong /etc/hosts với địa chỉ IP tương ứng.
  • netmask mask - Là subnetwork mask. Có thể bỏ qua nếu dùng giá trị default.
  • broadcast address - Là địa chỉ broadcast cho network. Nếu không đặt sẽ lấy giá trị ngầm định.

Để thiết lập the loopback driver:

ifconfig lo 127.0.0.1

Muốn đưa địa chỉ loopback vào trong kernel routing tables dùng lệnh:

route add 127.0.0.1 hoặc route add localhost

Cấu hình Ethernet Interface:Muốn thực hiện cấu hình với Ethernet driver thì một phải yêu cầu đòi hỏi phải biết chính xác Ethernet driver và cấu hình dùng ifconfig để kernel biết về interface và sau đó thêm route tới các máy trên mạng nếu nó gắn với mạng.

Ethernet device là /dev/elx0

ifconfig elx0 192.168.70.2 netmask 255.255.255.0

Để thêm thành phần trên vào kernel routing table để kernel biết về địa chỉ mạng local machine và gửi chính xác dữ liệu tới nó dùng lệnh.

route add -net 192.168.70.0

TCP/IP Setup Files

Khi cài đặt và cấu hình TCP/IPcó một số file yêu cầu lưu giữ cấu hình liên quan đến dịch vụ của UNIX host.

/etc/hosts - Là file có chứa ánh xạ host names tới IP address tương ứng.

# Internet host table

# IP address hostname aliases

127.0.0.1 localhost

201.190.2.1 jade

/etc/networks - Chứa các network name ánh xạ tới địa chỉ mạng IP tương ứng.

# Name Network Number

testnetw 201.190.2

loopback-net 127

/etc/services - Chứa các dịch vụ ở tầng TCP/IP application như FTP, TELNET, RLOGIN ... ứng với nó là các port number tương ứng.

# assigned numbers from rfc1060

#service port/transport

tcpmux 1/tcp

echo 7/tcp

echo 7/udp

discard 9/tcp sink null

discard 9/udp sink null

systat 11/tcp users

systat 11/udp users

.

/etc/protocols - Chứa các số xác định IP protocol service user. Các thông tin này giúp IP việc xác định routing data tới user protocols.

/etc/ethers – Tạo bởi hệ thống trong quá trình cài đặt TCP/IP. File này ánh xạ địa chỉ Ethernet tới địa chỉ IP. Các thông tin này phải có khi muốn cung cấp các dịch vụ RARP hoặc BOOTPD

# ether_mac_addr. hostname comments

00:00:c0:9e:41:26 violin #strings dep't

02:60:8c:15:ad:18 bass

/etc/netmasks - Chứa netmask tương ứng với địa chỉ network IP.

#Network subnet masks

#Unless your network is subnetted, do not bother to maintain this file

#Network subnet mask

134.54.0.0 255.255.255.0

167.12.0.0 255.255.192.0

/etc/hosts.equiv - Xác lập quyền truy nhập của các máy và các user ở xa khi dùng các tiện ích ví dụ: rlogin, rcp, rsh ...

~/.rhosts Tạo trong thư mục home của user xác định quyền truy nhập của user xác định.

Các tiện ích và các dịch vụ chủ yếu cung cấp trên ICP/IP

Một số các daemon cung cấp các dịch vụ trên Unix được điều khiển bởi inetd.

  • ftpd - Cung cấp các dịch vụ truyền file trên máy Unix qua TCP port 20.
  • telnetd - Cung cấp các dịch vụ cho phép cung cấp các dịch vụ cho các máy kết nối dạng terminal.
  • rshd - Cho phép thực hiện các lệnh shell từ các máy xa.
  • logind- Cho phép thực hiện login từ xa.
  • execd - Chon phép thực hiện các lệnh từ các máy ở xa.
  • comsat- Kiểm soát các mail đến cung cấp các thông tin cho các processes mà yêu cầu nó thực hiện.
  • talkd - Cho phép người sử hội thoại với nhau qua dùng keyboard và screen của terminal ở bất kỳ đâu trên mạng.
  • uucpd- Cung cấp dịch vụ truyền dữ liệu sử dụng UUCP trên mạng.
  • tftpd-Cung cấp dịch vụ tftp trên mạng. Hỗ trợ khả năng remote boot và truyền file.
  • fingerd- Kiểm soát user trên mạng.
  • rquotad- Kiểm soát việc sử dụng đĩa của người sử dụng.
  • walld-Cho phép thực hiện việc gửi các message tới màn hình của các các user trên hệ thống
  • rstatd This daemon returns performance statistics about this system
  • cmsd-Quản lý calendar trên server.
  • routed - Thực hiện việc kiểm soát RIP.
  • gated- Cho phép thực hiện nhiều thông tin về route bao gồm RIP, OSPF (Open Shortest Path First), EGP (Exterior Gateway Protocol) ...
  • nfsd- Kiểm soát và cung cấp các dịch vụ NFS trên mạng.
  • biod-(Block Input/Output Daemon). Chạy trên NFS client thực hiện việc kiểm soát quá trình đọc và ghi dữ liệu trên NFS server.
  • mountd - Kiểm soát, cung cấp các yêu cầu mount từ NFS client.
  • lockd - Điều khiển việc lock file trên mạng.
  • rpcbind- Cung cấp các dịch vụ RPC (Remote Procedure Calls).
  • sendmail- Thực hiện kiểm soát, trao đổi mail giữa các host ( qua SMTP).
  • named daemon và các database file cho phép UNIX cung cấp các dịch vụ DNS server trên UDP port 53.
  • Ngoài ra với các thành phần mở rộng sau này các hệ điều hành còn cung các daemon hỗ trợ cung cấp các dịch vụ mở rộng khác như các dịch vụ X-terminal, HTTP ...

Các tiện ích (xem trên End user)

PPP

PPP là giao thức được sử dụng tương đối phổ biến trong thực hiện kết nối truyền thông giữa các máy hoặc giữa các mạng qua các serial line. Tuy nhiên cấu hình PPP trên UNIX thì tướng đối phức tạp. UNIX chia các PPP ra làm hai phần, một là mức High-Level Data Link Control (HLDC) protocol, thực hiện việc gửi các PPP datagram giữa hai máy, và PPP daemon gọi là pppd thực hiện kiểm soát các protocol trên hệ thống HLDC và thiết lập các biến truyền thông.

Khi thực hiện kết nối thông qua PPP thì người sử dụng không bị yêu cầu nhập các dấu nhắc kết shell hoặc login vì phần này sẽ do PPP đkiểm soát. Để thiết lập kết nối PPP nhất thiết loopback driver phải được thiết lập.

Trong UNIX để tăng cường tính an toàn cho hệ thống khi thực hiện kết nối PPP giữa các hệ UNIX cần phải có user đặc biệt để thực hiện login vào hệ thống khi thực hiện kết nối. User này không sử dụng các shell bình thường mà sử dụng một chương trình đặc biệt để khởi động và cấu hình PPP. Ngoài ra PPP hỗ trợ PPP Authentication để xác định các kết nối trên hệ thống.

trong Linux là pppscript ( trong hệ Unix system V dùng file aspppls ...)

ppp:*:201:51:PPP account:/tmp:/etc/ppp/pppscript

Nội dung file pppscrip này như sau:

#!/bin/sh

mesg n

stty -echo

exec pppd -detach silent modem crtscts

Trước khi PPP hoạt động nó yêu cầu phải thiết lập cuộc kết nối trước đó tới máy ở xa trước khi nó thực hiện kiểm soát kết nối. Điều này có thể thực hiện qua chương trình thực hiện kết nối (chat program). Thông thường sử dụng qua UUCP trong file này chú ý đến nội dung trong file Systems.

Để thực hiện việc kiểm soát kết nối sử dung PPP thì nhất thiết chương trình pppd daemon phải được gọi chạy.

Nếu máy sử dụng COM1 để thực hiện cho kết nối PPP và kết nối ở tốc độ 38,400 baud có thể sử dụng lệnh như sau:

pppd /dev/cua1 38400 crtscts defaultroute

Trong hệ điều hành UNIX system V thường sử dụng một script tên là asppp để khởi động pppd dựa trên các file cấu hình đã đặt.

DNS

Trước đây trong UNIX để giải quyết vấn đề ánh xạ tương ứng tên tới địa TCP/IP sử dụng /etc/hosts. Khi thực hiện các kết nối TCP/IP sẽ thực hiện kiểm tra trong /etc/hosts kiểm tra tra tên và đọc địa chỉ của máy kết nối. Nếu tên không có trong file này thì máy sẽ không thể thực hiện kết nối theo tên. Với phương pháp này mà khi cần kết nối với nhiều máy trên hệ thống thì việc quản lý nó sẽ trở lên rất phức tạp. DNS ra đời và phát triển để giải quyết các vấn đề trên đồng thời nó còn tạo ra các khả năng quản trị tên phân cấp và cung cấp các dịch vụ tên vùng. Trên DNS bao giờ cùng gồm có hai phía là người cung cấp các dịch vụ (DNS server) và người sử dụng các dịch vụ (client).

Thông thường mỗi một zone thường có hai master name để duy trì hoạt động của cả zone là primary master server và secondary master server (backup server).

DNS Client

DNS client thực hiện việc kết nối thông qua các DNS query để thực hiện lấy ác ánh xạ tương ứng tới địa chỉ đích cần kết nối. DNS query có thể có nhiều loại. Hầu hết trong số này là các query hostname đến IP address. Các query giải quyết vấn đền ánh xạ IP address tới hostname là PTR hay pointer queries.

Ngoại trừ việc cấu hình để liên kết với name server. Client thông thường kiểm tra trong /etc/hosts file để lấy địa chỉ tương ứng với name của máy chỉ định.

Để cấu hình DNS client (resolver) tạo file /etc/resolv.conf. Sử dụng file này để xác định các domain name mà nó thuộc vào bao gồm địa chỉ IP của primary, secondary, hoặc cache name server. Cấu trúc file /etc/resolv.conf gồm các trường

# keyword value

domain ham.com #Domain

nameserver 198.53.18.1 #Primary name server

nameserver 198.53.18.3 #Secondary name server

DNS server

Để cấu hình name server bao gồm tạo các database và startup file. Số lượng các file này phụ thộc vào quy mô của tổ chức, cấu trúc liên mạng, và số domain mà nó được uỷ nhiệm quản trị.

Để khởi động DNS server UNIX gọi chạy một in.named daemon. Chương trình này sẽ đọc các file cấu hình trên database file và thực hiện các dịch vụ theo cấu hình đã định.

Các DNS database và startup file:

named.hosts File này xác định domain mà name server là người cung cấp và duy trì các ánh xạ từ tên tới địa chỉ IP.

named.rev Chứa thông tin về ánh xạ ngược địa chỉ IP tới tên.

named.local Chứa thông tin để giải quyết địa chỉ loopback (127.0.0.1) tới localhost.

named.ca File có chứa tên và địa chỉ của các root domain server.

named.boot File đầu tiên mà named (the DNS daemon) lúc khởi động và sử dụng nó để xác định database filename, và vị trí của chúng trong file system trên hệ thống cũng như là máy ở xa.

DNS Resource Records (RR)

Chuẩn DNS RFC 1033 định nghĩa nhiều loại resource record (RR). Mỗi loại tương ứng với một khía cạnh của cơ sở dữ liệu chung. Ví dụ kiểu record dùng để ánh xạ tên tới địa chỉ IP tương ứng (A), hoặc ánh xạ địa chỉ tới tên (PTR) hoặc sử dụng để duy trì ánh xạ giữa các domain name server (NS)...

Thông thường cấu trúc một RFC như sau:

[name] [ttl] class type data

  • name Tên của đối tượng resource sẽ được mô tả bởi resource record. name có thể là tên host hoặc tên của domain.
  • Ttl Là giá trị Time-to-live.
  • Class Xác định class của DNS record.
  • Type Xác định kiểu RR record. Thông thường người ta sử dụng các kiểu SOA, NS, A, MX và PTR.
  • Data Dữ liệu thực sự của đối tượng name chỉ định.
Cấu hình primary name server

Để cấu hình named chạy và cung cấp dịch vụ như primary name server cần phải tạo và thay đổi các file dữ liệu sau:

  • named.hosts
  • named.rev
  • named.local
  • named.ca
  • named.boot

named.hosts Là file duy trì ánh xạ hostname tới địa chỉ IP cho tất cả các trong zone. Muốn thực hiện truy nhập theo DNS thì named.hosts phải có chứa tên ánh xạ tới địa chỉ IP của tất cả các host trên mạng. Thêm vào đó nó còn chứa các thông tin khác như mail exchangers (hoặc mail routers), hoặc loại CPU ...

file named.hosts mà jade là primary server trong domain harmonics.com:

;

; Section 1: The SOA record

;

harmonics.com. IN SOA jade.harmonics.com. root.jade.harmonics.com. (

2 ; Serial

14400 ; Refresh (4 hours)

3600 ; Retry (1hr)

604800 ; Expire ( 4 weeks )

86400 ) ; minimum TTL (time-to-live)

;

; Section 2: The following are the name server for the harmonics domain. Notice how the second

; entry does not specify the domain name for which cello is being the name server. This implies that

; domain name is same as one specified in previous record.

;

harmonics.com. IN NS jade.harmonics.com.

IN NS cello.harmonics.com.

;

; Section 3: The following are the mail exchangers of the domain harmonics.com

;

harmonics.com. IN MX 1 flute.harmonics.com.

IN MX 2 bass.harmonics.com.

;

; Section 4: The following records map hosts' canonical names to their corresponding

; IP addresses

;

localhost.harmonics.com. IN A 127.0.0.1

;

tenor.harmonics.com. IN A 100.0.0.3

soprano.harmonics.com. IN A 100.0.0.4

flute.harmonics.com. IN A 100.0.0.5

xrouter IN A 100.0.0.10

cello.harmonics.com. IN A 198.53.237.2

violin.harmonics.com. IN A 198.53.237.3

bass.harmonics.com. IN A 198.53.237.4

;

; Section 5: Multihomed hosts

;

jade.harmonics.com. IN A 198.53.237.1

IN A 100.0.0.2

  • Section 1 Có chứa SOA record là jade.harmonics.com là người cung cấp DNS server cho domain harmonics.com. File named.hosts có thể chỉ có chứa SOA record, và nó phải là record đầu tiên trong file.
  • Section 2 Gồm các NS record là các host jade và cello như là tên servers của domain harmonics.com. Chú ý rằng các record này không được chỉ định hai server đều là primary mà phải có secondary server.
  • Section 3 Gồm hai MX records xác định mail exchangers chính và phụ cho domain harmonics.com.
  • Section 4 Gồm tất cả các A records mà ánh xạ host name tới địa chỉ IP addresses. Khi mà client thực hiện query thì name server sẽ trả lại địa chỉ IP cho host, named quét các A records trong named.hosts phù hợp với tên mà client yêu cầu và trả lại địa chỉ IP tương ứng với host name.
  • Section 5 Tương ứng với jade là multihomed gồm hai A record. Khi mà named được query cho địa chỉ IP của jade, hoặc bất kỳ multihomed, named đơn giản là trả lại tất cả các địa chỉ mà nó tìm thấy.

named.rev named sử dụng named.rev để giải quyêt các kiểu PTR query. Nó trả lại host name tương ứng với query lấy địa chỉ IP tương ứng với host trong named.rev file. Trong named.rev file bao gồm cả SOA record.

file 100.rev

100.in-addr.arpa. IN SOA jade.harmonics.com. root.jade.harmonics.com (

1 ;serial

14400 ; Refresh (4 hours)

3600 ; retry ( 1 hour )

604800 ; expire ( 1 week )

86400 ) ; TTL = 1 day

;

; name servers

;

100.in-addr.arpa. IN NS jade.harmonics.com.

100.in-addr.arpa. IN NS cello.harmonics.com.

;

; Reverse address mappings

;

2.0.0.100.in-addr.arpa. IN PTR jade.harmonics.com.

3.0.0.100.in-addr.arpa. IN PTR tenor.harmonics.com.

4.0.0.100.in-addr.arpa IN PTR soprano.harmonics.com.

5.0.0.100.in-addr.arpa IN PTR flute.harmonics.com.

10.0.0.100.in-addr.arpa IN PTR xrouter.harmonics.com.

Trong tất cả các file named.rev phần đầu tiên bao giờ cũng là SOA record tiếp sau đó là NS và cuối cùng là PTR records.

named.local Có chứa cấu hình của localhost ứng với địa chỉ IP 127.0.0.1.

0.0.127.in-addr.arpa. IN SOA jade.harmonics.com. root.jade.harmonics.com. (

1 ; serial

14400 ; refresh ( 4 hours )

3600 ; retry ( 1 hour )

604800 ; expire ( 1 week )

86400 ) ; TTL = 1 day

; name servers

;

0.0.127.in-addr.arpa. IN NS jade.harmonics.com.

0.0.127.in-addr.arpa. IN NS cello.harmonics.com.

;

; reverse address PTR mapping

;

1.0.0.127.in-addr.arpa. IN PTR localhost

named.ca Để nâng cao hiệu quả của các dịch vụ DNS, để giảm các traffic trên mạng. DNS cho phép server lấy dữ liệu từ cache của nó để trả lời các query từ các client. Nó thực hiện điều này bằng cách lưu các trả lời ứng với các query trong bộ nhớ tương ứng với các query mà client yêu cầu tới servers để sau này có thể lấy nó để dùng lại. DNS thực hiện điều này bằng cấu hình trong file named.ca tương ứng với các domain khác. Tất cả thông tin có chứa trong named.ca file được sử dụng để khởi động các cache buffer trên DNS server mmỗi khi named deamon(in.named) khởi động. Thông thường trong named.ca file bao gồm các thông tin về các root server vì những thông tin này thường ổn định trong thời gian dài.

;

; Section 1: NS records for the root domain servers

;

. 99999999 IN NS A.ROOT-SERVERS.NET

99999999 IN NS B.ROOT-SERVERS.NET

99999999 IN NS C.ROOT-SERVERS.NET

99999999 IN NS D.ROOT-SERVERS.NET

99999999 IN NS E.ROOT-SERVERS.NET

99999999 IN NS F.ROOT-SERVERS.NET

99999999 IN NS G.ROOT-SERVERS.NET

99999999 IN NS H.ROOT-SERVERS.NET

99999999 IN NS I.ROOT-SERVERS.NET

;

; Section 2: Root servers A records

;

A.ROOT-SERVERS.NET 99999999 IN A 198.41.0.4

B.ROOT-SERVERS.NET 99999999 IN A 128.9.0.107

C.ROOT-SERVERS.NET 99999999 IN A 192.33.4.12

D.ROOT-SERVERS.NET 99999999 IN A 128.8.10.90

E.ROOT-SERVERS.NET 99999999 IN A 192.203.230.10

F.ROOT-SERVERS.NET 99999999 IN A 192.5.5.241

G.ROOT-SERVERS.NET 99999999 IN A 192.112.36.4

H.ROOT-SERVERS.NET 99999999 IN A 128.63.2.53

I.ROOT-SERVERS.NET 99999999 IN A 192.36.148.17

named.boot: Tại thời điểm khởi động DNS server lấy các thông tin tham chiếu trong named.boot file để lấy các thông tin xác định cấu hình dịch vụ DNS là primary, secondary, hoặc cache server. Đồng thời xác địch các DNS database file bao gồm named.hosts, named.rev, named.ca và named.local.

Về file named.boot nó sử dụng để cấu hình jade như primary name server:

directory /etc/named

primary harmonics.com named.hosts

primary 100.in-addr.arpa 100.rev

primary 237.53.198.in-addr.arpa 198.53.237.rev

primary 0.0.127.in-addr.arpa 127.localhost

cache . named.ca

Mỗi dòng trong file là dòng xác định cấu hình của DNS server mà DNS deamon(in.named) đọc mỗi khi nó khởi động.

  • Từ khoá directory ở dòng đầu tức DNS deamon sử dụng default location mà tất cả các DNS database file lưu trong nó /etc/named.
  • Dòng 2, 3, 4 với từ khoá primary nói rằng đó là các DNS server là cung cấp các dịch vụ DNS ứng với domain xác định.
  • Dong cuối cấu hình server thực hiện cache server cho các root domain. Các thông tin chi tiết trong named.ca.

Cấu hình secondary name server

Secondary name server là server mà nhận các dữ liệu tương ứng với zone từ primary server. Secondary server không có các named.hosts và named.rev file riêng của nó. Thay vào đó khi khởi động secondary server yêu cầu primary server truyền các bản copy của các file này. Sau đó secondary server khởi động với nội nội dung cấu hình dựa trên file nó nhận được.

Chỉ có một số thay đổi trong file named.boot của secondary DNS server so với primary server

directory /usr/lib/named

secondary harmonics.com 100.0.0.2

secondary 100.in-addr.arpa 100.0.0.2

secondary 237.53.198.in-addr.arpa 100.0.0.2

primary 0.0.127.in-addr.arpa named.local

cache . named.ca

Trong named.boot bao gồm hầu hết là các dòng secondary thay cho primary. Dòng thứ hai chỉ ra rằng cấu hình như một secondary server với domain harmonics.com, và thực hiện copy tất cả các dữ liệu liên quan từ server với địa chỉ IP 100.0.0.2. Dòng 3, 4 cấu hình named như là secondary server cho reverse domains 100.in-addr.arpa, và 237.53.198.in-addr.arpa.

Dòng 5 cà 6 chứa các thông tin liên quan đến local filenames. Cả hai file named.local và named.ca rất ít khi thay đổi nội dung.

Secondary server được khởi động gần giống như primary server. Khi host chạy ở mức 2 tại thời điểm boot, các startup scripts kiểm tra sự tồn tại của named.boot file. Nếu nó tồn tại thì tuỳ theo cấu hình mà nó thực hiện các thao tác tiếp theo.

Trong thực tế sẽ xảy ra trường hợp khi secondary server khởi động mà primary server không sẵn sàng. DNS cho phép cấu hình các địa chỉ IP thay thế trong lệnh secondary từ các server có thể có chứa các zonal data, và cấu hình server duy trì các bản copy của file.

secondary harmonics.com 100.0.0.2 100.0.0.4

Nó có thể cải tiến bằng cách cho phép secondary name server duy trì các bản copy của các file nhận được. Bằng cách này secondary sẽ luôn có các bản copy của zonal data. Tuy nhiên dữ liệu này sẽ được kiểm tra quá hạn được ghi trong SOA record. Nếu primary server được tìm thấy trong zone thì secondary server sẽ yêu lấy lại các thông tin và bỏ các dịch vụ trước đó.

Để cho phép named sử sử dụng copy trong cột cuối cùng của từ khoá secondary chỉ tên file mà dữ liệu sẽ copy.

directory /usr/lib/named

secondary harmonics.com 100.0.0.2 named.hosts

secondary 100.in-addr.arpa 100.0.0.2 100.rev

secondary 237.53.198.in-addr.arpa 100.0.0.2 198.53.237.rev

primary 0.0.127.in-addr.arpa named.local

Dòng directory /usr/lib/named chỉ ra rằng sử dụng datafile trong thư mục /usr/lib/named.

Cấu hình cache only server

Cache-only server không dựa vào các database file của nó. Cache-only server chỉ lưu các thông tin tương ứng với các query mà được sử dụng cho sau này nếu có thể.

Để cấu hình Cache-only server. Thêm vào named.boot dòng lệnh sau:

;

; Cache-only server for the harmonics.com domain

;

primary 0.0.127.in-addr.arpa /usr/lib/named/named.local

cache . /usr/lib/named/named.ca

;

Lệnh nslookup: Cho phép chạy chế độ interactive để thực hiện kiểm tra hoạt động của dịch vụ DNS.

  • Sử dụng nslookup để query local server
  • Sử dụng nslookup để query remote server
  • Sử dụng nslookup để download DNS database

Sử dụng nslookup để Query Local Server

Ta có thể sử dụng nslookup để kiểm tra các server mới, các thay đổi về cấu hình trên server và để xác định các sự cố đối với dịch vụ DNS.

Để thực hiện được điều này phải login vào người quản trị mạng (root) và sử dụng lệnh nslookup. Ngầm định là nslookup trả các tướng ứng với các name query (ánh xạ name-to-address).

# nslookup

Default Server: jade.harmonics.com

Address: 100.0.0.2

> cello

Server: jade.harmonics.com

Address: 100.0.0.2

Name: cello.harmonics.com

Address: 198.53.237.2

Sử dụng nslookup để Query Remote Server

nslookup có thể sử dụng để thực hiện các query tới các remote server trên mạng. Remote servers có thể trên cùng mạng hoặc có thể ở đâu đó trên Internet. Điều này cho phép kiểm tra các sự cố về dịch vụ DNS trên bất kỳ các DNS server nào.

dùng nslookup qua host jade (primary server) để query cello (secondary server) cho địa chỉ của soprano

# nslookup

Default Server: jade.harmonics.com

Address: 198.53.8.1

> soprano cello.harmonics.com

Server: cello.harmonics.com

Address: 198.53.237.2

Name: soprano.harmonics.com

Address: 100.0.0.4

Sử dụng nslookup để Download DNS Database

nslookup có thể thực hiện để truyền dữ liệu DNS trực tiếp ra các đầu ra chuẩn như màn hình hoặc như file.

# nslookup

Default Server: jade

Address: 0.0.0.0

> ls harmonics.com

[jade]

harmonics.com. server = jade.harmonics.com

jade 198.53.8.1

harmonics.com. server = cello.harmonics.com

cello 198.53.237.2

tenor 100.0.0.3

soprano 100.0.0.4

localhost 127.0.0.1

harmonics server = jade.harmonics.com

jade 198.53.8.1

soprano 100.0.0.4

xrouter 10.0.0.10

cello 198.53.237.2

> exit

#

NIS (Network Information Service)

Với các mạng lớn và kết nối trên nhiều máy thì mỗi máy phải tạo các account riêng nếu như muốn truy nhập. Với việc tạo nhiều các account trên một hệ thống như vậy sẽ dẫn đến việc gặp rất nhiều khó khăn trong công tác quản trị và sử dụng.

NIS là dịch vụ mạng (phát triển Yellow Pages protocol) cung cấp directory service, đáp ứng việc quản trị tập trung trên các mạng lớn. Nó là cho phép thực hiện các truy nhập phân tán trên hệ thống mạng sử dụng quyền truy nhập thông qua một trung tâm là NIS master (hay ypmaster) để xác nhận quyền truy nhập. Trên một mạng lớn thông thường người ta có thể thiết lập thêm các slaves (hay ypslaves) để thực hiện tạo thành các máy dự phòng (lưu toàn bộ thông tin về quyền truy nhập trên toàn hệ thống từ master). Trong trường hợp master server gặp sự cố slave có thể thực hiện chức năng thay thế.

NIS lưu giữ tất cả các thông tin trong “maps" mỗi map ứng với một vùng trên network điều này cho phép một vài groups sử dụng chung một NIS master nhưng lại có quyền truy nhập khác nhau. NIS map không tương ứng với DNS domain mà nó cho phép nhiều mềm dẻo hơn trong việc cấu hình. Maps bao gồm các record ghi dưới dạng ASCII.

Thành phần của NIS bao gồm:

  • domain
  • maps
  • Daemon

ypser Server process

ypbind Liên kết các process

ypxfrd Daemon truyền dữ liệu liên kết tốc độ cao.

roc.ypupdated Thực hiện cập nhập dữ liệu khi dữ liệu map thay đổi.

in.named Thực hiện dịch vụ DNS (optional)

  • Utilities

ypcat Liệt kê dữ liệu trong map

ypwich Hiện tên NIS server và map server

ypwatch Tạo key ứng với giá trị trong map

ypinit Cài đặt và xây dựng NIS database

yppoll Lấy các số thứ tự từ server

  • Các tiện ích khác

yppush Chuyển dữ liệu từ master tới slave.

ypset Đặt liên kết thực sự tới server.

ypxfr Truyền dữ liệu từ master tới slave với tốc độ lớn.

makedbm Tạo dbm file cho một NIS map

Thông thường NIS server có thể hỗ trợ một vài map files thông thường là các file chuẩn trên UNIX như group, hosts, networks, passwd, protocols, rpc, services sau đó nó được chuyển thành các file tương ứng

/etc/group group.byname, group.bygid

/etc/hosts hosts.byname, hosts.byaddr

/etc/passwd passwd.byname, passwd.byuid

Tất cảc các file này được lưu dưới khuôn DBM gọi làn gdbm. Có thể sử dụng tiện ích ypmakedbm để tạo database file cho NIS.

NFS (Network File System)

Một hệ thống sử dụng trên cơ sở mạng UNIX với khả năng xử lý phân tán và client/server. Trên mạng gồm có nhiều workstation kết nối với hệ thống máy chủ và kết nối giữa các workstation với nhau. Nhiều ứng dụng lớn có thể được lưu trên các server. Có một số tiện ích cho phép truy nhập tới các file ở xa nhưng chỉ cho phép thực hiện các truyền file hoặc dạng terminal. Để tích hợp hệ thống trên mạng cho phép truy nhập tài nguyên ở xa UNIX đưa ra dịch vụ NFS.

NFS cho phép thực hiện việc đọc và ghi các file trên NFS servers. Việc truy nhập từ các client tới NFS servers có thể thực hiện thông qua ánh xạ (mount) nó đến một thư mục trên máy cục bộ ( gọi là điểm "mount"). Sau đó việc truy xuất đến thư mục của máy từ xa được thực hiện bằng cách truy xuất trên máy cục bộ qua điểm "mount".

mount -F nfs –o ro Remote:/export/app /temp/data

Khi sử dụng lệnh này client kiểm tra remote machine xem có quyền truy nhập thư mục hay không. Nếu có quyền thì nó gửi một thông tin điều khiển sử dụng để định hướng tất cả các yêu cầu truy nhập từ client. Trương trình thực hiện việc kiểm soát và cung cấp các dịch vụ là nfsd. Trong hệ điều hành UNIX một máy có thể vừa là NFS server vừa là client.

Việc sử dụng các dịch vụ NFS giúp cho việc quản trị tập trung trên hệ thống lớn được thuận lợi hơn (nhất là trong các công tác sao lưu và hồi phục, quản trị các ứng dụng ...)

NFS server

Hoạt động của NFS trên server được điều khiển bởi các deamon là rpc.mountd, nfsd và file cấu hình thiết lập danh sách các thư mục mà client có thể thực hiện mount trong file /etc/exports. File /etc/exports được đọc mỗi lần mountd daemon nhận được yêu cầu mount thư mục.

# /etc/exports for merlin

/usr/database/data chatton(rw) big_roy (rw) wizard (rw)

/usr/book chatton(rw) wizard (ro)

/usr/bin/bigapp big_roy(rw) wizard (ro)

/usr/ftp (ro)

Muốn thay đổi tập tin /etc/exports phải có quyền superuser trên máy server. Sau khi thay đổi để cập nhật lại thông tin cho server sử dụng lệnh share:

NFS client

Client truy xuất các tập tin trên server bằng cách mount các thư mục mà server xuất. Khi client mount một thư mục trên server đó là một quá trìng sử dụng chuỗi lệnh gọi thủ tục từ xa (Remote Procedure Call) cho phép client truy xuất đến thư mục trên server. Thông tin này được deamon rpc.mountd xử lý và xác định client được phép hay không được phép truy xuất đến các thư mục của server. Tiến trình client tìm server xuất ra các thông tin mà client cần và sau đó thiết lập đường truyền giữa client và server gọi là binding. Sự ràng buộc NFS xảy ra trong suốt quá trình client mount một thư mục từ xa. Việc mount thư mục từ xa có thể được thực hiện khi khởi động hoặng thông qua lệnh mount hay cơ chế automounter. Tập tin /etc/fstab liệt kê các thư mục mà client mount trong khi khởi động. Với automounter client có thể tự động mount các thư mục trong quá trình làm việc mà không cần phải gọi lệnh mount.

Mail

Trong hệ điều hành Unix server thường hỗ trợ hai thành phần gồm Mail User Agent (MUA-mail, mailx elm) và Mail Transport Agent (MTA -sendmail). Với các thành phần này người gửi các message có thể thực hiện việc soạn, gửi các mesage tới các user trên các máy và đọc các message.

Với MTA cho phép thực hiện việc xác định đường sẽ gửi message dựa theo địa chỉ của người nhận và chuyển nó vào mailbox của người nhận. UNIX hỗ trợ việc truyền mail qua mạng TCP/IP hoặc qua dial-up sử dụng UUCP và sử dụng SMTP trong định dạng mail (Simple Mail Transfer Protocol ).

Chương trình sendmail có thể được cấu hình làm mail router, final delivery agents, SMTP client, SMTP-server tuỳ theo cấu hình của người quản trị.

sendmail như Mail Router

sendmail có thể thực hiện chức năng như là mail router tức là nó có thể lấy letter, xem xét địa chỉ người nhận và quyết định cách tốt nhất để gửi nó.

Đầu tiên sendmail xác định một số thông tin nó cần như thời gian và tên của máy chủ mà nó đang chạy. Nhưng việc cấu hình nó như thế nào lại phụ thộc vào cấu hình của người quản trị trong file sendmail.cf. Các thông tin trong sendmail.cf sẽ xác định phương pháp điều khiển mail và đường đi của mail sẽ được gửi. .

sendmail như MTA-Client (Sender) và Server (Receiver) SMTP

sendmail có thể thực hiện chức năng MTA với SMTP protocol. Bởi vì SMTP là giao thức kết nối định hướng luôn có các client và server. SMTP client gửi letter tới SMTP server qua SMTP port.

sendmail có thể là một SMTP client hoặc một SMTP server. Khi chạy nó với chức năng MUA nó sẽ trở thành SMTP client. Khi hệ thống khởi động và chạy nó ở dạng daemon mode nó có thể thể hiện như là một SMTP server nhận các mail đến.

Cấu hình sendmail

UNIX client

Trong hệ thống việc chọn các client phù hợp cũng là một biện pháp là tăng hiệu quả sử dụng hệ thống. Tuy nhiên người ta có thể chộn lẫn các loại client trên một mạng.

Gồm một số các loại client sau:

Diskless clients—Là client không có đĩa riêng của nó. Thực hiện việc khởi động thông qua mạng nên đòi hỏi trên mạng phải có bootp server và NFS server cung cấp các dịch vụ về khởi động mạng và đĩa cho client. Vì diskless client không có đĩa riêng và khởi động từ mạng cho nên nó đòi hỏi việc sử dụng một lưoựng tài nguyên lớn trên các server

Dataless clients—Là các client có phần đĩa riêng của nó nhưng vẫn sử dụng các dịch vụ, các tiện ích cung cấp trên mạng. Nó không thể tự boot được mà phải boot từ mạng. Tuy nhiên do có phần đĩa riêng cho nên việc đòi hỏi sử dụng đĩa trên mạng không lớn như diskless client.

Standalone system - Là hệ thống có phần đĩa riêng của nó, có thể tự khởi động không đòi hỏi các dịch vụ khởi động trên mạng. Nếu kết nối vào mạng nó có thể sử dụng các dịch vụ của mạng mà được cung cấp bởi các server.

Time sharing system. – Là hệ thống với standalone system và các terminal kết nối với nó thông qua trực tiếp các serial line hoặc qua modem. Các terminal không có disk, printer, và file và CPU riêng của nó. Mà nó sử dụng chia sẻ các tài nguyên này với server.

Ngoài các hệ thống chạy trên cơ sở hệ điều hành Unix. Các Unix server còn hỗ trợ các kết nối từ các client sử dụng các hệ điều hành khác kết nối với nó thông qua các dịch vụ TCP/IP, X-terminal, SMTP ...

Quản trị các client: Việc quản trị quyền truy nhập trên hệ thống (xem phần trên) bao gồm phần quản trị quyền người sử dụng truy nhập tên hệ thống, quản trị việc sử dụng tài nguyên như đĩa, máy in, DNS, ...

Tuy nhiên với các client yêu cầu các dịch vụ khởi động từ server thì đòi hỏi phải có

0