Đ c
ậ ng ôn t p linux
ề ươ Bài làm trên RHEL4
ủ ề ự ộ Ch đ 1 : N i dung bài th c hành 8
ầ ướ ặ c 1: Cài đ t ầ ế ổ ể ặ Ph n 1 : HTTP B + Đ u tiên mount đ n CDROM đ cài đ t gói httpd:
mount /media/cdrom ể ư ụ ế ặ ể ặ
+ Chuy n đ n th m c cài đ t cd /media/cdrom/Redhat4/RPMS ọ Đ có php và manual ch n các gói cài đ t là : rpm –ivh httpd-... Test :
ớ ộ : t o file a.php v i n i dung
ư ụ ỗ ợ ướ ườ ọ : H tr th m c ng i dùng cho m i ng i dùng ở - M firefox gõ //localhost ạ ử - Th php < ? Phpinfo() ; ?> c 2 ở ấ ế ạ rDir thay đo n disbale đi ư ụ ở ườ B + M file c u hình là /etc/httpd/conf/httpd.conf + Tìm đ n dòng Use + M TM /etc/skel thêm th m c /public_html/index.html
ụ ư ụ ư ừ c 3 ạ ự ư ướ ậ ề ườ ướ ầ ượ ườ ượ ư c quy n truy c p. Các ng ậ c khi truy c p. Ch có 2 ng i dùng đ ụ : T o th m c /private t th m c /data. Th m c này yêu ỉ i dùng u1 và u2 m i c l u trong file ớ
ạ ấ ệ
ặ ấ ạ ư ụ
ấ ớ B
c u xác th c tr
đ
/var/lib/htpasswd
ư ụ
+ T o th m c /data
+ Trong file c u hình thêm dòng alias /private /data
Gõ l nh htpasswd –c /var/lib/htpasswd u1
htpasswd /var/lib/htpasswd u2
+ Trong th m c /data t o file .htaccess ho c trong file c u hình
V i file c u hình
ộ
ấ ả ng t t c Require valid-user ư ụ ả ạ ư ụ ệ ấ ư ụ ả ấ ế ỏ ư ụ
ấ ở
N i dung file .htaccess
AuthType Basic
AuthName “thu muc bao ve”
AuthUserFile /var/lib/htpasswd
Require user u1 u2
ườ
Trong tr
ừ
ướ
+ B
c 4 : T o th m c o /docs t th m c /usr/share/doc. Th m c
này cho phép li t kê danh sách t t c các file/th m c con bên
trong lên web client n u không tìm th y file th a mãn directory
index
M file c u hình
Thêm dòng alias /docs /usr/share/doc
ầ ướ ặ c 1 : Cài đ t
ướ ở ỏ ế ử ạ ướ c dòng auth_param basic chilren 5 đo n mã
ạ ỏ ấ
ế ượ ạ c DNS nên thêm 1 dòng là
ệ
ặ
ầ ướ ặ
Ph n 2 : squid B Cài gói rpm –ivh squid… ấ c 2 : C u hình B ấ /etc/squid/squid.conf M file c u hình là + Tìm đ n dòng #http_port 3128 b # đi và s a 3128 thành 8080 + Thêm vào tr auth_param basic program /usr/lib/ncsa_auth/var/lib/htpasswd + B d u # t i dòng acl password proxy_auth REQUIRED + Thêm dòng http_access allow password vào trên dòng http_access deny all + N u b n không detect đ visible_hostname localhost Test ở M trình duy t firefox Menu Edit/preference/general/connection.. Đ t proxy server là 192.168.1.19 và port 8080 N Ph n 3 : Mail server B c 1 : Cài đ t Cài 3 gói là squirrelmail, dovecot và postfix Rpm –ivh postfix… Dovecot… Squirrelmail… ướ ả ớ ạ ấ c 2 : C u hình B ế + Gi thuy t là dns đã cài v i domain là group2.lab.vn + B n thêm vào 2 dòng mail.group2.lab.vn MX A 10 192.168.1.19 //server cài postfix ấ ạ ở ạ ạ ệ ọ ở ử ư
ỏ ỏ
ử
ụ ậ ấ ử ư ở ử ỏ IN Mail IN C u hình postfix ệ + Ch y l nh hostname group2.lab.vn + M file /etc/sysconfig/network thay hostname=group2.lab.vn + restart l i network + Ch y l nh alternatives –config mta và ch n 2 là postfix + M file /etc/postfix/main.cf S a nh sau Myhostname = group2.lab.vn Mydomain = group2.lab.vn B chú thích dòng myorigin = $mydomain B chú thích dòng inet_interfaces = all và thêm chú thích cho dòng inet_interfaces = localhost S a dòng mydestination = $myhostname, localhost.$mydomain, localhost thành mydestination = $mydomain ị + B t d ch v service postfix (re)start C u hình dovecot + M file /etc/dovecot.conf s a nh sau B chú thích dòng protocols = imap imap4 và s a thành Protocols = imap imaps pop3 pop3s (chú ý ko th aừ ấ ị ậ ụ ấ ỉ ầ ạ ượ c d u cách) + B t d ch v service dovecot (re)start C u hình squirrelmail + Sau khi cài xong ch c n restart l i http là đ Test
ạ ệ ủ ệ ậ ố + T i trình duy t server gõ localhost/webmail + account đăng nh p là account h th ng c a server
ở ấ
+ M file c u hình httpd: /etc/httpd/conf/httpd.conf
Thêm dòng sau
NameVirtualHost 192.168.1.19
ServerName mail.group2.lab.vn DocumentRoot /usr/share/squirrelmail DirectoryIndex index.php
ừ ạ ậ ằ ệ Sau đó t trình duy t gõ mail.group2.lab.vn => b n đăng nh p b ng account do server c pấ
ự ộ ủ ề : N i dung bài th c hành 7 : FTP : Cài đ tặ ế ổ ể ặ ----------------------------------------------------------------- Ch đ 2 Ph n 1ầ ướ c 1 B ầ + Đ u tiên mount đ n CDROM đ cài đ t gói httpd:
mount /media/cdrom ể ư ụ ế ặ + Chuy n đ n th m c cài đ t cd /media/cdrom/Redhat4/RPMS rpm –ivh vsftpd-2.0.1-5.i386.rpm
ướ ở ợ ể ấ c 2 : C u hình ấ ỗ ỏ ạ ị ở ạ ụ ợ ể ỉ ề ể ỗ ặ i dùng anonymous đ dòng anonymous_enable = YES ườ ủ ớ ề ạ ể ự ư ụ ạ
ườ ượ ư ộ i dùng anonymous có th đ c đ ạ ụ ấ ợ ọ ườ ậ ỗ ng : b t write_enable=YES ụ ậ ị i dùng user1 và user2 đăng nh p vào d ch v này ậ
ườ ụ ậ ở ặ
ị ờ ườ ể ẻ ọ ộ i, chúc m t ngày vui v ”
ỏ ằ ườ ữ ẻ ộ ọ i, chúc m t ngày vui v ” ụ ở ộ ậ ị ờ ạ ẳ ẽ ạ ủ ệ ệ ố B M file c u hình /etc/vsftpd/vsftpd.conf ế + Đ h tr chroot : tìm đ n dòng #chroot_list_enable và #chroot_list_file b 2 chú thích đi sau đó t o file ộ /etc/vsftpd.chroot_list và kh i đ ng l i d ch v ườ + Đ h tr ng ị + M c đ nh thì ng i dùng anonymous ko có quy n upload ch khi nào xóa chú thích c a dòng anon_upload_enable = NO thành anon_upload_enable = YES thì m i có quy n ghi ớ Đ th c hành upload v i account là anonymous b n t o th m c /var/ ề ftp/upload và phân quy n cho nó là 777 ọ ể + Ng c n i dung th m c /usr/share/doc. B n thêm 1 dòng là anon_root=/usr/share/doc => chú ý là không có d u cách + H tr đ c/ghi cho user thông th ườ + Không cho 2 ng ấ Trong file c u hình b t userlist_enable=YES và trong file /etc/vsftpd.user_list thêm 2 dòng là user1 và user2 ị + Cho phép thêm ng i dùng root truy c p d ch v này : M 2 file /etc/vsftpd.user_list và /etc/vsftpd.ftpusers xóa ho c comment cượ dòng root đi là đ + Hi n th l i chào “Xin chào m i ng B chú thích dòng ftpd_banner thay dòng “FTP to blah FTP service” b ng dòng ch “Xin chào m i ng ị Sau đó kh i đ ng l i d ch v : service vsftpd restart và đăng nh p ể ftp 192.168.1.19 ch ng h n s hi n th l i chào S hi u c a thông đi p này là 220
ủ ừ ế ệ ồ ườ Còn n u mu n thông đi p c a riêng t ng ng i dùng (thông ấ ệ ạ ườ ư ụ m c ng ạ ớ ộ ụ ẽ ể ậ ạ ớ ư ạ ị ờ ả ậ i dùng anonymous không ph i nh p password thì thêm dòng đi p 220) thì trong file c u hình thêm dòng message_file=.message Sau đó t o .message trong th i dùng nh /home/thanhdc/.message v i n i dung là “chào đ i ca thanh”. B n ị restart l i d ch v và đăng nh p v i account thanhdc s hi n th l i chào riêng cho thanhdc ườ ể + Đ ng no_anon_passwd=YES
ặ c 1 : Cài đ t ầ ướ ặ ườ ề ị ồ ng là đã có gói này r i. N u ế ư Ph n 2 : NFS B ệ M c đ nh khi cài h đi u hành th ch a có thì cài gói rpm –ivh nfs-utils-1.0.6-46.i386.rpm
ướ ấ c 2 : C u hình ụ ự ẻ ằ ề ỏ ạ ở B ệ ư ệ + Hãy th c hi n vi c chia s th m c /temp b ng NFS trên máy S ệ th a mãn các đi u ki n sau : B n m file /etc/exports thêm các dòng sau ỉ ọ ạ ộ
ề ọ ộ ớ - ch đ c v i các máy tính thu c m ng 192.168.1.0/24 /temp 192.168.1.0/24(ro) ớ - Đ c ghi v i các máy thu c mi n coltech.vnu.vn /temp coltech.vnu.vn(rw) ẻ ệ ệ ự ằ ệ ề
ế ọ ượ ọ ố ng
ườ ử ạ ư ụ + Hãy th c hi n vi c chia s th m c /tmp1 b ng NFS trên máy tính ỏ S th a mãn các đi u ki n sau : ướ c h t chmod 777 /tmp1 Tr ớ - Đ c ghi v i m i đ i t /tmp1 *(rw) Test Mount –t nfs 192.168.1.19:/tmp1 /mountnfs - T i máy tính C <> S, s a file /etc/fstab sao cho ng ư ụ ượ ể ạ i dùng ư c th m c /tmp1 vào th m c ụ a khác root có th ánh x đ /public trên C ẻ ằ
ở defaults 0 0 nfs
defaults 0 0 /public nfs
ườ ế Trên máy S chia s b ng cách thêm 1 dòng vào file /etc/exports /tmp1 (rw,no_root_squash) ạ Trên máy C b n m file /etc/fstab thêm 1 dòng /public Ip_mayS:/tmp1 Ho cặ Ten_mayS:/tmp1 Test Mount /public ể - Làm th nào đ : Các file do ng ư ụ ạ ạ ạ ạ ấ i dùng a khác root (ID = A ẽ t i C) t o ra trên th m c /public đã ánh x s có ID t i S là B (B b t kỳ và <> A)
ườ ế ??????????????????????????????????????????????????????? ể - Làm th nào đ : Các file do ng ư ụ ạ ạ ạ i dùng a khác root (ID = A ẽ ạ t i C) t o ra trên th m c /public đã ánh x s có ID t i S là A ???????????????????????????????????????????????????????
ế ườ ể - Làm th nào đ : Các file do ng ạ ạ ạ ư ụ ể ạ ấ i dùng a khác root (ID = A ẽ t i C) t o ra trên th m c /public đã ánh x s có ID t i S là U (U b t kỳ và có th trùng A) ???????????????????????????????????????????????????????
ư ụ ạ - Các file do riêng root t i C t o ra trên th m c /public đã ạ ẽ ằ ạ ạ ạ ánh x s có ID t i S b ng ID t i C ???????????????????????????????????????????????????????
ặ ầ ướ ặ ướ ế ầ ỏ
ấ ở Ph n III : SAMBA B c 1 : Cài đ t + Cài đ t gói samba-… ấ c 2 : C u hình B ậ + Thi t l p SAMBA Server th a mãn yêu c u sau : ộ Máy tính có NETBIOS NAME là SMB và thu c nhóm SAMBA M file c u hình là /etc/samba/smb.conf ử
ớ ạ ư ụ ọ ỉ ọ ườ ấ ở i dùng : M file c u hình ạ + S a workgroup = MYGROUP thành Workgroup = SAMBA + Thêm dòng Netbios SMB ẻ + Chia s th m c /usr/share/doc v i share name là Documents d ng ớ ch đ c v i m i ng Thêm đo n mã sau : [Documents]
Path = /usr/share/doc Readonly = YES Public = YES
ườ ư ế ỏ ồ ợ ng h p ch a có public = YES, n u có r i b user và pass
smbfs –t –o Test Trong tr đi Mount username=thanh,password=thanh //192.168.1.19/documents /document
ụ ư ẻ ạ ạ ớ ớ ọ ọ ớ ẩ ườ ọ i dùng và đ c/ghi v i ng
ấ ạ ở : + Chia s th m c /tmp v i share name là public d ng n trong ườ ỉ windows d ng ch đ c v i m i ng i dùng u1, u2 M file c u hình thêm đo n mã sau [public]
Path = /tmp Public = yes Write list = u1 u2 Hide files = /*.*/ ạ ạ : adduser u1, adduser u2 ể ạ :
ạ ườ ử ể ụ ạ ể ọ ạ ở
defaults 0 0 smbfs /mnt
Đ test b n t o 2 user là u1 và u2 ằ T o password b ng samba smbpasswd u1 và smbpasswd u2 i dùng a + T i máy tính C <> S, s a file /etc/fstab sao cho ng ư khác root có th ánh x share name public nói trên vào th m c /mnt trên C và có th đ c ghi trên /mnt sau khi ánh x Trên máy C m file /etc/fstab Thêm 1 dòng //ip_server/public Test Mount /mnt
ế /mnt username=thanh 0 0 N u ko public = yes trên server thì //ip_server/public smbfs Mount /mnt => gõ password = thanh là ok
ầ ướ c 1 : Cài đ t
Ph n IV : Setup Server ặ B Cài các gói tftp, dhcp, http rpm –ivh tftp-0.39-1.i386.rpm tftp-server… httpd-…
ướ
ư ụ ể dhcp… ấ c 2 : C u hình B ấ + C u hình tftp : - copy file /usr/lib/syslinux/pxelinux.0 vào /tftpboot - Chuy n vào th m c /media/cdrom/isolinux - copy các file *.msg initrd.img và vmlinuz vào /tftpboot
ạ ư ụ ư ụ ớ cp *.msg initrd.msg vmlinuz /tftpboot - T o th m c pxelinux.cfg trong /tftpboot - Copy file /media/cdrom/isolinux/isolinux.cfg sang th m c /tftpboot/pxelinux.cfg v i tên là default
cd /media/cdrom/isolinux cp isolinux.cfg /tftpboot/pxelinux.cfg/default ử ể ỗ
ạ ộ ị ở ể ệ ằ - S a file /etc/xinetd.d/tftp chuy n ch disable = yes thành disable = no - Kh i đ ng l i d ch v xinetd - Ki m tra gói tftp ch y đúng hay không b ng l nh
ượ ẽ ế ạ ư ụ ề ụ ạ tftp 192.168.1.19 –c get boot.msg N u ch y đúng thì s down đ c file boot.msg v th m c hi n ệ
ư ụ ớ th iờ ấ + C u hình dhcp - copy file /usr/share/doc/dhcpd…/dhcp.conf.sample vào th m c /etc v i tên dhcp.conf
ở ầ ử ệ cp /usr/share/doc/dhcpd…/dhcp.conf.sample /etc/dhcpd.conf - S a file /etc/dhcpd.conf thêm dòng l nh allow bootp; đ u - Trong subnet thêm 2 dòng filename “pxelinux.0”; và next- server 192.168.1.19; ủ ả ớ ị ỉ ả - S a subnet cho trùng v i gi i đ a ch c a server và gi i c p ấ
ị ộ ạ ừ ạ ử phát ở ứ - Kh i đ ng l i d ch v dhcp và cho máy client boot t m ng ấ ặ ứ ạ ạ
ụ ị ậ ở ư ụ ậ ố ỗ ụ + C u hình các giao th c : Quá trình cài đ t gõ linux askmethod và có 3 giao th c + HTTP : t o ln –s /media/cdrom/* /var/www/html + FTP : t o mount –t iso9660 /dev/cdrom /var/ftp + NFS : B t 2 d ch v nfslock và portmap M file /etc/exports thêm dòng /media/cdrom *(ro) Chú ý bên client ch nh p th m c g c: /media/cdrom
ộ -------------------------------------------------------------- ủ ề ầ ế ạ ự Ch đ 3 : N i dung th c hành 6 ậ Ph n I,III,IV : thi t l p mô hình m ng và DNS
ướ c 1 :
ướ ấ Cài đ tặ B ằ + Cài đ t DNS b ng gói bind -… B ặ c 2 : C u hình
DNS Server 172.16.0.5
R0 5
192.168.5.5
R03 192.168.5.1
Router 172.16.0.3
R09
Router 172.16.2.1 192.168.2.1 192.168.2.5
ớ
+ Trên máy R05 : Nó là DNS Server chu nẩ V i zone là group2.lab.vn Zone thu nậ Zone « group2.lab.vn« IN {
Type forward; Forwarders {192.168.2.1;};
cượ }; Zone ng Zone “2.168.192.in-addr.arpa” IN {
Type forward; Forwarders {192.168.2.1;}; };
ớ .lab.vn
V i zone là group5 Zone thu nậ Zone « group5.lab.vn« IN {
Type forward; Forwarders {192.168.5.1;};
cượ }; Zone ng Zone “5.168.192.in-addr.arpa” IN {
Type forward; Forwarders {192.168.5.1;};
ể ở ạ
ặ ụ ạ : thêm dòng forwarders {172.16.0.5;} ; }; ộ Service named restart đ kh i đ ng DNS server ủ + Trên máy R09 : DNS Server1 và là router c a m ng 192.168.2.0 ấ ở Cài đ t DNS, m file c u hình ra thêm 1 dòng T i m c options Zone “group2.lab.vn” IN {
Type master; File “group2.lab.vn.zone”; Allow-update {none;};
}; Zone “2.168.192.in-addr.arpa” IN {
Type master; File “2.168.192.zone”; Allow-update {none;};
ư ụ
}; ạ T o 2 file group2.lab.vn.zone và 2.168.192.zone trong th m c /var/named group2.lab.vn.zone $TTL 86400 @ group2.lab.vn root ( SOA
IN 42; 3H; 15M; 1W; 1D IN
Pc01 Pc05 ) NS IN IN ; group2.lab.vn A A 192.168.2.1 192.168.2.5
2.168.192.zone $TTL 86400 @ SOA group2.lab.vn root (
IN 1997022700; 28800; 14000; 36000000; 864000 IN IN IN NS PTR PTR 1 5 ) ; group2.lab.vn pc01.group2.lab.vn pc05.group2.lab.vn
ở //Trên máy R09 M file /etc/init.d/network sau dòng touch thêm dòng Route add -net 192.168.5.0 netmask 255.255.255.0 gw 172.16.0.3
ươ ng t máy R09 ầ ậ ự + Trên máy R03 làm t ế Ph n II. Thi t l p OpenSSH
ướ
ướ ế ườ ặ B c 1 : Cài đ t Cài gói openssh… ấ c 2 : C u hình B ậ + Thi t l p cho ng i dùng
ậ ả ừ ư ầ ậ ậ ẩ ạ ẽ ạ ủ ở ộ ậ root@192.168.1.19 ạ ộ ừ U1 trên PC1 U2 trên PC2 Có kh năng đăng nh p t xa nh root thông qua SSH vào các server trên mà không c n đăng nh p m t kh u ệ - Trên client ch y l nh ssh-keygen –t dsa –b 512 Nó s t o ra 2 file id_dsa và id_dsa.pub - M file /root/.ssh/id_dsa.pub copy n i dung c a nó - dùng ssh đăng nh p vào máy server : ssh T o file /root/.ssh/authorized trên server và paste n i dung v a cop vào file này
ẽ ạ ậ ỏ ỏ - Thoát kh i server và đăng nh p l i thì s không h i pass
#scp /root/.ssh/id_dsa.pub root@
ả ấ ả ấ ượ ủ ữ ượ ụ ư ề ấ
ự ệ ệ ể ể ế ậ ơ ậ ụ ớ ử ệ ị ừ ị c c u hình sao cho đúng 00h30 là t t c các + Máy tính Pc1 ph i đ ứ file trong /var/log c a nh ng server có ch c năng R01, R03 đ u đ c copy vào th m c /backup/R01, /backup/R03 trên Pc2. Hãy c u hình pc1 giúp A bi tế + L nh copy qua openSSH là scp và do U1 th c hi n ụ ế + Có th s d ng d ch v crond (crontab) đ thi t l p c ch l p ườ l ch làm vi c v i t ng ng i dùng
ầ Ph n V : OpenLDap