歡迎您光臨本站 註冊首頁

一些Linux試題(經典!!)

←手機掃碼閱讀     火星人 @ 2014-03-24 , reply:0

昨天在網上看到了一些關於LINUX的試題,複製下來與大家分享,不過轉載地址找不到了
如有侵權,告之!!:)

Linux網路管理實驗匯總(附參考答案,在下面的回帖哦,認真看下)
感謝我的老師--福州大學 數學與計算機學院 呂書龍
一. 實驗題 (總共 50 題)
1. 某公司需要在網路上共享一個文件夾/home/share,所有人都只有隻讀許可權,且只有192.168.1.0/24子網的用戶可以讀寫訪問,其他的只讀,試通過NFS共享該文件夾。假定NFS伺服器的IP地址是192.168.1.1。

2. 利用iptables實現內部網代理上網,假定當前網路為218.193.118.0,網關為218.193.118.254,本機IP為218.193.118.x,192.168.1.1內部網為192.168.1.x。
3. 利用iptables實現內外互通,假定當前網路為218.193.118.0,網關為218.193.118.254,本機IP為218.193.118.x,192.168.1.1,內部網為192.168.1.x
192.168.1.11為內網Web站點,試做好定向訪問。

4. 在Linxu主機上,IP為218.193.118.x啟動兩個DNS,一個在標準埠53監聽,另一個在54埠監聽,將所有來自內部網(192.168.1.x)的DNS請求全部轉向到54埠;其他的保留在53埠。
5. 能否限定一個內部網IP在訪問任何一個地址的時候訪問的都是某個指定的網站主頁呢?所有主頁訪問轉向到www.baidu.com <--〉202.108.22.5
例如:IP 192.168.1.2
輸入 <http://www.126.com/>
訪問;<http://www.baidu.com/>
6. 啟用swat在Windows下對Linux的samba進行配置
7. 創建一個系統用戶test,建立test的別名test1 test2 ,並將其轉化成Samba用戶test,配置其能夠登錄用戶主目錄,通過smbclient和smbmount驗證。
8. 添加一個共享目錄myshare,路經為/home/share,要求guest用戶不輸入密碼可以瀏覽,只有lsl,lwl用戶可以進行寫操作。使用smbmount進行連接。
9. 配置Samba伺服器,讓每台主機有不同的連接共享目錄,針對主機名提供不同的連接共享目錄,使其具有寫的許可權,匿名用戶不能訪問。也就是說,主機ABC會連接到SMB伺服器指定的/usr/remotpc/ABC目錄上。使用smbclient進行連接並下載其中的一個文件。
10. 讓smbclient以名稱式訪問,通常我們使用smb客戶端軟體的時候都是使用IP進行連接,現在希望通過主機名或者netbios名稱訪問,假定windows機器的名稱是wujispace,IP地址是192.168.1.2則希望通過smblcient -L wujispace進行訪問,或者通過smbmount進行訪問
11. 通過xhost遠程使用Linux的X資源
12. 在Linux下通過NFS以只讀方式輸出/home目錄;以可讀寫方式輸出/tmp;並從其它機器上驗證;另外注意將該共享目錄的掛在作成開機自動掛載。
13. 在Apache中設置基於名字的虛擬主機服務,apache所在機器IP為192.168.1.10,假定域名和IP關係為www1.com.cn =192.168.1.11,www2.com.cn = 192.168.1.12,在每個虛擬主機中配置不同的DocumentRoot,ServerAdmin,ServerName等信息,然後設置每個虛擬主機的監聽方式(在80還是8080埠監聽)。
14. 開放 /home/upload 做為 192.168.1.0/24 這個網域的資料上傳目錄,其中,這個 /home/upload 的使用者及所屬群組為 upload 這個名字,他的 UID 與 GID 均為510
15. 如果Linux下未安裝Webmin則安裝,配置webmin以便允許本地網192.168.1.0用戶登錄,啟動webmin,在windows下通過webmin添加用戶,並進行相關配置。改變webmin配置為使用SSL登錄。
16. 配置SSH服務,以便root用戶可以登錄,允許本地網(192.168.1.0)主機可以連接該服務
並使用Linux下的scp,sftp等工具進行文件傳輸;使用Windows下的putty.exe,scp.exe,sftp.exe等工具進行文件傳輸。
17. 安裝Turbolinux下的VNC伺服器和客戶端包,並啟用VNC伺服器,提供遠程桌面共享機制
18. 在瀏覽器中,連接VNC-Server,要求如下
1.瀏覽器必須支持Java虛擬機,[積極嘗試]
2.輸入 http://IP:5801,因為默認埠為5801,[請通過netstat ?nl察看]
3.輸入登錄伺服器的口令
注意:實現Linux和windows之間的互相遠程桌面共享,251的ftp伺服器上有windwos的VNC版本。
19. 配置賬號linux,在sudo的方式下通過口令驗證可以查看任何系統文件;配置帳號win,在sudo方式下無須任何口令可以執行shutdown命令,[別名必須大寫]
20. 給出兩種設置根用戶在3分鐘后如果沒有任何操作則自動logoff的配置過程及涉及到的配置文件。
21. 限制系統用戶linux遠程登錄,限制根用戶從tty2登錄,從遠程任何地方登陸
22. 寫一個簡單的C語言程序,然後使用cc進行含調試信息的編譯,最後使用gdb進行程序調試。
23. 如何限制用戶對su命令的使用,如果要求只能某個組可以su到root其它組不能,怎麼做?
24. 使用Samba中的備份和恢復功能,對windows共享目錄下的資源進行備份和恢復,試用smbmount和smbclient兩種登錄方式進行處理。
25. 設置Linux中的DNS主域控制器,要管轄lsl.com.cn域,DNS伺服器所在的主機IP地址為218.193.118.XX,域名為dns.lsl.com.cn,對應的數據文件為lsl.com.cn,逆向數據文件為118.193.218.arp;並利用host進行測試。在測試成功的基礎上,添加如下安全控制:
只允許218.193.118.yy,218.193.118.zz訪問該DNS伺服器。
26. 顯示系統中eth0網路介面的配置情況,並描述其中主要參數的含義,然後添加一個邏輯網路介面eth0:0,ip為192.168.11.11,查看該邏輯介面是否處於激活狀態,如果是則關閉它;否則激活它.
27. 發送5個ICMP包給218.193.118.79,描述反饋信息的具體含義;增加每個包的數據長度到1024,然後再發5個包到上述IP;增加包的數量到100,但是要求不需要返回所有信息行,只需要頭尾幾行和統計信息。
28. 增加一個邏輯介面eth0:0,配置當前網段中的IP,然後通過該介面跟蹤到達網路地址210.34.48.34的所有路徑,並描述反饋信息的含義。[可能不會成功,因為eth0:0不是一個真實的網路設備,但是如果是eth1就可以]
29. 列出系統上可用的活躍的TCP和UDP網路連接;在此基礎上列出是哪些進程打開或者連接這些網路介面;啟動系統地ftp伺服器進程,列出與ftp相關的所有網路連接。
30. 監聽並捕獲通過eth0介面,來自192.168.0.1的所有tcp相關且埠為21的10個數據包,並保存到test.dump文件中。
31. 監聽並捕獲20個來自主機192.168.0.1 和 192.168.0.2的所有基於tcp協議埠為21,20的所有數據包,並保存到test.dump文件中,然後使用tcpdump打開並閱讀。
32. 如果想要獲取主機218.193.118.79和除了主機218.193.118.10之外所有主機通信的ip包過濾的是源主機為218.193.118.79與目的網路為218.193.118.0的報頭。
33. 掃描218.193.118.0網路,看看哪些主機是上線的,並針對其中一台上線的主機進行具體的探測,以便確定該主機提供的服務和開放的埠.
34. 配置Linux下的DHCP,完成如下功能:
1. 指定默認租期時間為1天
2. 指定當前分配的IP地址屬於C類網
3. 指定發布網關和DNS給客戶機
網關:192.168.1.1
DNS: 210.34.48.34
4. 指定子網為192.168.1.0,IP範圍為
192.168.1.1到192.168.1.100
5. 固定某台主機的IP地址
6. 指定DHCP的監聽介面為eth0
7. 使用windows和Linux主機作為客戶機進行DHCP測試

35. 設置Turbolinux Server中的telnet伺服器,配置該服務在運行級別3和5啟動,指定只能由192.168.1.11才能訪問該telnet服務,並允許根用戶使用telnet.
36. 設定Linux下的防火牆
1.設定一個用戶鏈
2.記錄所有通過23埠的所有數據包,並用良好的可識別的格式記錄
3.查看日誌中記錄的信息
37. 設置TurboLinux中的proftpd伺服器:允許匿名登錄,並且匿名登錄中如果IP地址為192.168.1.11則允許其上傳數據,其他只允許下載;設置匿名登錄的歡迎文本;禁止218.193.118.0網段的訪問;
38. 設定Linux下的防火牆,針對eth0
1.設定filter表的默認策略為 DROP
2.開放本機的ping探測機制和telnet登錄
3.啟動telnet進行測試
39. 利用Linux中的SQUID將Linux主機設置成上網代理機,並用Windows的IE瀏覽器進行驗證。請將上述代理3128變成80,做成比較透明的代理。
40. 在Linux下觀察網路環境,然後編寫一個腳本,實現如下功能:
設置可用的IP地址,設置默認網關,設置可用的DNS
設置該腳本運行許可權,然後放入系統的啟動腳本中,以便開機后能夠自動配置網路。
41. 通過ntp實現網路時間同步
1.通過ntpdate指定時間伺服器為time.mit.edu
2.將Linux主機配置成時間伺服器,通過客戶進程xntpdc進行測試
42. 使用mysql
1.查看當前的資料庫
2.添加一個資料庫week,在庫中加入一個表today,欄位包括:
ID 整數,name 10個可變字元
3.顯示week資料庫的所有表
4.通過文件將today表需要的數據輸入
5.顯示today表中所有的數據

43. 在mysql中,建立一個用戶test,口令為123456;授權他只能查詢mysql庫中的db表,可以查詢、更新、添加、刪除user表,並允許該用戶從本地或者遠程都可以登錄mysql資料庫伺服器. 請進行測試.
44. 配置Linux下的Apache伺服器:
1.設置apche文檔根路徑為/var/www/html
2.設置伺服器監聽埠為8080
3.設置預設主頁文件為index.htm,並在文檔主目錄下寫一個測試用的index.htm文件
4.設置管理員的Email地址為你的郵件地址
5.啟動apache伺服器並進行驗證
45. 在Apache伺服器中設置系統用戶宿主目錄的訪問方式,假定用戶名為test:
1.設置用戶宿主目錄的映射UserDir 為 public
2.只允許192.168.1.11主機能夠訪問該主頁
3.並在用戶宿主目錄下創建一個測試用的index.html文檔
4.通過 http://IP/~test 進行測試,能夠顯示index.html的內容
46. 在Apache伺服器中設置系統用戶宿主目錄的訪問方式,假定用戶名為test:
1.加入用戶身份驗證,只允許test,test1,test2用戶訪問
2.直接在httpd.conf文件中配置實現上述功能
3.通過外部的.htaccess文件實現上述功能
47. 在Apache中設置基於IP的虛擬主機服務,假定IP分別為192.168.1.11,192.168.1.12,在每個虛擬主機中配置不同的DocumentRoot,ServerAdmin,ServerName等信息,然後設置每個虛擬主機的監聽方式(在80還是8080埠監聽)。
48. 顯示系統的arp緩存表,並將以下的對應關係存入文件,然後以載入文件方式添加到arp表中,再次顯示arp緩存表,然後刪除192.168.0.3所在行。
192.168.0.2 AA:BB:CC:00:00:00
192.168.0.3 AA:BB:CC:DD:00:00
192.168.0.4 AA:BB:CC:EE:00:00
49. 設置Turbo Linux中的proftpd服務:獨立啟動,允許根用戶登錄,加入歡迎信息顯示(顯示當前已經登錄的用戶數量,使用者的帳號等),加入目錄切換的信息提示,限制嘗試登錄的次數為3次
50.將Linux設計成一個多服務系統,提供:SSH,FTP,HTTP,Samba,NFS,VNC,DNS,DHCP,
WebMin,Swat,mysql,代理上網;並使用iptables,TCP_Wrapper等方式進行安全控制,基本要求如下:
0.設定內部網192.168.1.0,外部網211.80.194.0,確定內外網的網關
1. 內部網用戶可以很方便地連接並使用各種服務,當然需要身份驗證
2. 在外部網,用戶只能從固定的幾台主機登陸(如.101,201,301等)
3. 匿名用戶可以登陸ftp,http,VNC等,但是得到的服務是有限制的
4. 根用戶可以從2中規定的幾台主機和本地終端登錄,其他方式登錄均被拒絕(Webmin,swat除外)
5. 配置所有服務在開機啟動的時候自動啟動,除了VNC只在5級啟動外,其他都在3和5級啟動
6. 所有來訪的信息都要以容易使別的方式登記到系統日誌文件中,以便日後查閱
51.完成ftp的主機訪問控制和用戶訪問控制,查詢Limit相關資料,Order,deny,allow等。


1. 設置Turbo Linux中的proftpd服務:獨立啟動,允許根用戶登錄,加入歡迎信息顯示(顯示當前已經登錄的用戶數量,使用者的帳號等),加入目錄切換的信息提示,限制嘗試登錄的次數為3次
答案:1.編輯/etc/proftpd/proftpd.conf加入
ServerType standalone
RootLogin on
DisplayLogin /etc/proftpd/message.msg
DisplayFirstChDir /etc/proftpd/.message
MaxLoginAttempts 3
2.編輯message.msg文件,加入%U,%N
3.啟動服務 service proftpd start
4.如果root用戶還是不能登陸則在/etc/ftpusers中將root所在行註釋掉

2. 在Apache中設置基於IP的虛擬主機服務,假定IP分別為192.168.1.11,192.168.1.12,在每個虛擬主機中配置不同的DocumentRoot,ServerAdmin,ServerName等信息,然後設置每個虛擬主機的監聽方式(在80還是8080埠監聽)。
答案:1.在配置文件/etc/httpd/conf/httpd.conf中添加

DocumentRoot "/var/www/x"
ServerAdmin [email protected]
ServerName 192.168.1.x

Listen 192.168.1.11:80
Listen 192.168.1.12:8080
2.創建上述/var/www/x目錄,加入相關測試文件*.html
3.通過瀏覽器進行測試訪問 http://192.168.1.x

3. 在Apache伺服器中設置系統用戶宿主目錄的訪問方式,假定用戶名為test:
1.加入用戶身份驗證,只允許test,test1,test2用戶訪問
2.直接在httpd.conf文件中配置實現上述功能
3.通過外部的.htaccess文件實現上述功能
答案:1.在配置文件中找到 加入
AuthType Basic
AuthName 「Input your name & pass"
AuthUserFile /etc/httpd/conf/users
Require valid-user
2.利用命令添加用戶 htpasswd -c /etc/httpd/conf/users test
htpasswd -c /etc/httpd/conf/users test1
htpasswd -c /etc/httpd/conf/users test2
3.登錄測試
4.將1種的四行信息寫入.htaccess文件中
通過AllowOverride設置AuthConfig,以便允許使用.htaccess
4. 在Apache伺服器中設置系統用戶宿主目錄的訪問方式,假定用戶名為test:
1.設置用戶宿主目錄的映射UserDir 為 public
2.只允許192.168.1.11主機能夠訪問該主頁
3.並在用戶宿主目錄下創建一個測試用的index.html文檔
4.通過 http://IP/~test 進行測試,能夠顯示index.html的內容
答案:1.編輯/etc/httpd/conf/httpd.conf
UserDir public

AllowOverride FileInfo AuthConfig Limit
Options Indexes SymLinksIfOwnerMatch

Order allow,deny
Allow from 192.168.1.11


2.cd /home/test
mkdir public;cd public
echo "hello 192.168.1.11">index.html
3.打開瀏覽器進行測試,注意該瀏覽所在的IP必須為192.168.1.11
5. 配置Linux下的Apache伺服器:
1.設置apche文檔根路徑為/var/www/html
2.設置伺服器監聽埠為8080
3.設置預設主頁文件為index.htm,並在文檔主目錄下寫一個測試用的index.htm文件
4.設置管理員的Email地址為你的郵件地址
5.啟動apache伺服器並進行驗證
答案:1.編輯/etc/httpd/conf/httpd.conf
DocumentRoot "/var/www/html"
Port 8080
DirectoryIndex index.htm
ServerAdmin [email protected]
2.service httpd start
3.在瀏覽器中輸入 http://ServerIP:8080
6. 在mysql中,建立一個用戶test,口令為123456;授權他只能查詢mysql庫中的db表,可以查詢、更新、添加、刪除user表,並允許該用戶從本地或者遠程都可以登錄mysql資料庫伺服器. 請進行測試.
答案:1.在mysql伺服器上登錄mysql
2.grant select on mysql.db to [email protected] identified by "123456";
grant select on mysql.db to [email protected]"%" identified by "123456";
3.grant select,delete,update,insert on mysql.user to [email protected] identified by "123456";
grant select,delete,update,insert on mysql.user to [email protected]"%" identified by "123456";
4.本地 mysql -u test
遠程 mysql -h mysql所在IP -u test
7. 使用mysql
1.查看當前的資料庫
2.添加一個資料庫week,在庫中加入一個表today,欄位包括:
ID 整數,name 10個可變字元
3.顯示week資料庫的所有表
4.通過文件將today表需要的數據輸入
5.顯示today表中所有的數據

答案:1.service mysql start
2.show databases;
3.create database week;
4.use week;
5.create table today(id int,name varchar(10);
6.show tables;
7.load data local infile "data.txt" into table today;
8.select * from today;
8. 通過ntp實現網路時間同步
1.通過ntpdate指定時間伺服器為time.mit.edu
2.將Linux主機配置成時間伺服器,通過客戶進程xntpdc進行測試
答案:1.ntpdate time.mit.edu
2.編輯/etc/ntp.conf
server time.mit.edu
driftfile /etc/ntp.drift
3.service ntpd start
4.xntpdc NTP伺服器IP
9. 在Linux下觀察網路環境,然後編寫一個腳本,實現如下功能:
設置可用的IP地址,設置默認網關,設置可用的DNS
設置該腳本運行許可權,然後放入系統的啟動腳本中,以便開機后能夠自動配置網路。
答案:1.利用vi編輯localnetcfg文件
ifconfig eth0 218.193.118.xx
route add default gw 218.193.118.254
echo "nameserver 210.34.48.34">/etc/resolv.conf
2.chmod u+x localnetcfg
3.將該腳本放入/etc/rc.d/init.d目錄下
然後在/etc/rc.d/rc3.d或者rc5.d目錄下設置Sxxlocalnetcfg符號鏈接文件鏈接上述的localnetcfg文件。
10. 利用Linux中的SQUID將Linux主機設置成上網代理機,並用Windows的IE瀏覽器進行驗證。請將上述代理3128變成80,做成比較透明的代理。
答案:1. Squid的配置文件/etc/squid/squid.conf,修改
http_port 3128
cache_dir ufs /var/spool/squid 100 16 256
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
cache_effective_user nobody
cache_effective_group nobody
http_access allow all
2.確定/var/spool/squid目錄的存在
3.啟動squid,service squid start
4.設置IE瀏覽器
工具菜單--〉internet選項à區域網設置à
IPAdd: 192.168.1.1 Port: 3128
5.iptables -t nat -A PREROUTING -p tcp -s 192.168.1.0/24 --dport 80
-j DNAT --to 192.168.1.1:3128

11. 顯示系統的arp緩存表,並將以下的對應關係存入文件,然後以載入文件方式添加到arp表中,再次顯示arp緩存表,然後刪除192.168.0.3所在行。
192.168.0.2 AA:BB:CC:00:00:00
192.168.0.3 AA:BB:CC:DD:00:00
192.168.0.4 AA:BB:CC:EE:00:00
答案:arp -a
#存入文件 test.arp
arp -f test.arp
arp -d 192.168.0.3
12. 設置TurboLinux中的proftpd伺服器:允許匿名登錄,並且匿名登錄中如果IP地址為192.168.1.11則允許其上傳數據,其他只允許下載;設置匿名登錄的歡迎文本;禁止218.193.118.0網段的訪問;
答案:1.編輯/etc/proftpd/proftpd.conf

Order deny,allow
Deny from 218.193.118.
Allow from all



Order deny,allow
allow 192.168.1.11

DisplayLogin message.msg

2.啟動服務 service proftpd start
13. 設定Linux下的防火牆
1.設定一個用戶鏈
2.記錄所有通過23埠的所有數據包,並用良好的可識別的格式記錄
3.查看日誌中記錄的信息
答案:iptables -N TELNET
iptables -A TELNET -j LOG --log-tcp-options --log-ip-options
--log-prefix "[IPTABLES Telnet]:"
iptables -A LOG_DROP -j ACCEPT
iptables -A INPUT -p tcp --dport 23 -j LOG_DROP
iptables -A OUTPUT -p tcp --sport 23 -j LOG_DROP

14. 設置Turbolinux Server中的telnet伺服器,配置該服務在運行級別3和5啟動,指定只能由192.168.1.11才能訪問該telnet服務,並允許根用戶使用telnet.
答案:1.chkconfig telnet --level 35 on
2.編輯/etc/hosts.allow
in.telnetd : 192.168.1.11
3.編輯/etc/pam.d/login,註釋第一行。
4.啟動telnet服務 service xinetd restart
15. 配置Linux下的DHCP,完成如下功能:
1. 指定默認租期時間為1天
2. 指定當前分配的IP地址屬於C類網
3. 指定發布網關和DNS給客戶機
網關:192.168.1.1
DNS: 210.34.48.34
4. 指定子網為192.168.1.0,IP範圍為
192.168.1.1到192.168.1.100
5. 固定某台主機的IP地址
6. 指定DHCP的監聽介面為eth0
7. 使用windows和Linux主機作為客戶機進行DHCP測試

答案:1.編輯dhcpd的配置文件/etc/dhcpd.conf
default-lease-time 86400;
option subnet-mask 255.255.255.0;
option routers 192.168.1.1;
option domain-name-servers 210.34.48.34;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.1 192.168.1.100;
}
host pc1{
hardware ethernet xx:xx:xx:xx:xx:xx
 fixed-address 192.168.1.1;
}
2.創建dhcpd.leases
touch /var/dhcp/dhcpd.leases
3.啟用DHCP服務進程
/usr/sbin/dhcpd eth0
4.進行測試
16. 掃描218.193.118.0網路,看看哪些主機是上線的,並針對其中一台上線的主機進行具體的探測,以便確定該主機提供的服務和開放的埠.
答案:nmap -sP 218.193.118.0/24
nmap 218.193.118.79
17. 如果想要獲取主機218.193.118.79和除了主機218.193.118.10之外所有主機通信的ip包過濾的是源主機為218.193.118.79與目的網路為218.193.118.0的報頭。
答案:tcpdump ip host 218.193.118.79 and ! 218.193.118.10
tcpdump src host 218.193.118.79 and dst net 218.193.118.0/24

18. 監聽並捕獲20個來自主機192.168.0.1 和 192.168.0.2的所有基於tcp協議埠為21,20的所有數據包,並保存到test.dump文件中,然後使用tcpdump打開並閱讀。
答案:tcpdump hots 192.168.0.1 and host 192.168.0.2 and tcp and port 21 -c 20 -w test.dump
tcpdump -r test.dump
19. 監聽並捕獲通過eth0介面,來自192.168.0.1的所有tcp相關且埠為21的10個數據包,並保存到test.dump文件中。
答案:tcpdump -i eth0 -c 10 tcp and port 21 ipaddr 192.168.0.1 -w test.dump
20. 列出系統上可用的活躍的TCP和UDP網路連接;在此基礎上列出是哪些進程打開或者連接這些網路介面;啟動系統地ftp伺服器進程,列出與ftp相關的所有網路連接。
答案:netstat -t -u
netstat -t -u -p
netstat -t -u -p | grep ftp
21. 增加一個邏輯介面eth0:0,配置當前網段中的IP,然後通過該介面跟蹤到達網路地址210.34.48.34的所有路徑,並描述反饋信息的含義。
答案:ifconfig eth0:0 218.193.118.230
traceroute -i eth0:0 210.34.48.34
22. 發送5個ICMP包給218.193.118.79,描述反饋信息的具體含義;增加每個包的數據長度到1024,然後再發5個包到上述IP;增加包的數量到100,但是要求不需要返回所有信息行,只需要頭尾幾行和統計信息。
答案:ping -c 5 218.193.118.79
ping -c 5 -s 1024 218.193.118.79
ping -c 100 -q 218.193.118.79
23. 顯示系統中eth0網路介面的配置情況,並描述其中主要參數的含義,然後添加一個邏輯網路介面eth0:0,ip為192.168.11.11,查看該邏輯介面是否處於激活狀態,如果是則關閉它;否則激活它.
答案:ifconfig eth0
ifconfig eth0:0 192.168.11.11
ifconfig eth0:0
ifconfig eth0:0 down
24. 設置Linux中的DNS主域控制器,要管轄lsl.com.cn域,DNS伺服器所在的主機IP地址為218.193.118.XX,域名為dns.lsl.com.cn,對應的數據文件為lsl.com.cn,逆向數據文件為118.193.218.arp;並利用host進行測試。在測試成功的基礎上,添加如下安全控制:
只允許218.193.118.yy,218.193.118.zz訪問該DNS伺服器。
答案:1.需要修改/etc/named.conf設置區信息 lsl.com.cn,並指定數據文件lsl.com.cn
2.編輯/var/named/lsl.com.cn數據文件,添加相對域名到IP的映射
3.編輯/var/named/118.193.218.arp數據文件,添加IP到域名的映射
4.修改/etc/resolv.conf中的DNS指向218.193.118.XX
5.啟動named後台進程
6.host dns.lsl.com.cn, host 218.193.118.XX
7.options {
allow-query { 218.193.118.yy;218.193.118.zz; };
};
8.重啟named進程
25. 使用Samba中的備份和恢復功能,對windows共享目錄下的資源進行備份和恢復,試用smbmount和smbclient兩種登錄方式進行處理。
答案:在smbclient下
smb:\>tar c LO RE
smbclient //SMB/Service -T c LO RE
備份 RE到本地的LO,(RE指文件或目錄)
smb:\>tar x LO RE
smbclient //SMB/Share -T x LO RE
恢複本地的LO到RE, (RE指文件或目錄)
26. 如何限制用戶對su命令的使用,如果要求只能某個組可以su到root其它組不能,怎麼做?
答案:1.通過pam認證實現
2.通過修改/bin/su的許可權做到
27. 寫一個簡單的C語言程序,然後使用cc進行含調試信息的編譯,最後使用gdb進行程序調試。
答案:實驗4 步驟:
1.用cc編譯程序的時候包含-g選項
cc ?g ?o outfile source.c
2. gdb outfile
3. 各種gdb命令的使用
run,list,break RowNum,next,kill,quit
list獲得每行的編號
break 行號,設置斷點
run執行, next單步執行, kill終止程序

28. 限制系統用戶linux遠程登錄,限制根用戶從tty2登錄,從遠程任何地方登陸
答案:1.編輯/etc/securetty
註釋其中的tty2所在行,這樣可以限制root用戶在tty2的登錄
2.編輯/etc/security/access.conf,添加
-:linux:EXCEPT LOCAL
3.編輯/etc/pam.d/login,增加
account required /lib/security/pam_access.so

29. 給出兩種設置根用戶在3分鐘后如果沒有任何操作則自動logoff的配置過程及涉及到的配置文件。
答案:1.在用戶主目錄/root下,編輯.bashrc文件
增加 TMOUT=180
2.編輯/etc/bashrc
增加 TMOUT=180
3.編輯/etc/profile
增加 TMOUT=180
4.根用戶需要重新登錄后才能將該設置生效
30. 配置賬號linux,在sudo的方式下通過口令驗證可以查看任何系統文件;配置帳號win,在sudo方式下無須任何口令可以執行shutdown命令
答案:1.在根用戶方式下,通過visudo編輯/etc/sudoers
在User Previliges Specification處加入
linux ALL=(ALL) PASSWD:ALL
win ALL=/sbin/shutdown,/sbin/halt
2.su linux 進行測試
su win進行測試
31. 在瀏覽器中,連接VNC-Server,要求如下
1.瀏覽器必須支持Java虛擬機
2.輸入 http://IP:5801,因為默認埠為5801
3.輸入登錄伺服器的口令
答案:
32. 安裝Turbolinux下的VNC伺服器和客戶端包,並啟用VNC伺服器,提供遠程桌面共享機制
答案:1.安裝vnc伺服器包
2.vncserver 然後設置登錄口令,給出顯示埠號:1
3.vncviewer IP:1
輸入口令即可登錄

33. 配置SSH服務,以便root用戶可以登錄,允許本地網(192.168.1.0)主機可以連接該服務
並使用Linux下的scp,sftp等工具進行文件傳輸;使用Windows下的putty.exe,scp.exe,sftp.exe等工具進行文件傳輸。
答案:1./etc/ssh/sshd_config
Port 22
Protocol 2,1
PermitRootLogin yes
2.修改/etc/hosts.allow
sshd:192.168.1.
3.service sshd start
4.ssh [email protected]_IP

34. 如果Linux下未安裝Webmin則安裝,配置webmin以便允許本地網192.168.1.0用戶登錄,啟動webmin,在windows下通過webmin添加用戶,並進行相關配置。改變webmin配置為使用SSL登錄。
答案:1.配置文件
/etc/webmin/miniserv.conf
allow=192.168.1.0/24
2.啟動webmin伺服器 service webmin start
3.通過IE訪問 http://webmin_IP:10000
35. 開放 /home/upload 做為 192.168.1.0/24 這個網域的資料上傳目錄,其中,這個 /home/upload 的使用者及所屬群組為 upload 這個名字,他的 UID 與 GID 均為510
答案:1.建立組和用戶
groupadd -g 510 upload
adduser -g 510 -u 510 upload
2.編輯/etc/exports
/home/upload 192.168.1.*(rw,all_squash,anonuid=510,anongid=510)
3.啟動服務
4.mount進行測試

36. 在Apache中設置基於名字的虛擬主機服務,apache所在機器IP為192.168.1.10,假定域名和IP關係為www1.com.cn =192.168.1.11,www2.com.cn = 192.168.1.12,在每個虛擬主機中配置不同的DocumentRoot,ServerAdmin,ServerName等信息,然後設置每個虛擬主機的監聽方式(在80還是8080埠監聽)。
答案:1.配置192.168.1.10上的DNS做好相關映射關係
www1.com.cn <--> 192.168.1.11
www2.com.cn <--> 192.168.1.12
2.配置apche伺服器,指定
namevirtualhost 192.168.1.10
以及各個虛擬主機段
3.確定各個虛擬主機的主目錄,加入不同的測試文件,進行測試
37. 在Linux下通過NFS以只讀方式輸出/home目錄;以可讀寫方式輸出/tmp;並從其它機器上驗證;另外注意將該共享目錄的掛在作成開機自動掛載。
答案:1.編輯/etc/exports
/home *(ro)
/tmp *(rw,sync)
2.service portmap start
service nfs start
3.mount -t nfs IP:/home /LocalTestDir
4.編輯/etc/fstab文件,增加上述掛載的信息
38. 設定Linux下的防火牆,針對eth0
1.設定filter表的默認策略為 DROP
2.開放本機的ping探測機制和telnet登錄
3.啟動telnet進行測試
答案:iptables -t filter -F
iptables -t filter -P DROP
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
iptables -t filter -A INPUT -i eth0 -p tcp --dport 23 -j ACCEPT
iptables -t filter -A OUTPUT -o eth0 -p tcp --sport 23 -j ACCEPT
39. 讓smbclient以名稱式訪問,通常我們使用smb客戶端軟體的時候都是使用IP進行連接,現在希望通過主機名或者netbios名稱訪問,假定windows機器的名稱是wujispace,IP地址是192.168.1.2則希望通過smblcient -L wujispace進行訪問,或者通過smbmount進行訪問
答案:基本步驟:
1.觀察/etc/samba或者/etc目錄下有一個文件:lmhosts
2.按照「IP 名稱」的格式添加相關記錄
例如: 172.19.11.11 LSL_LWL
然後使用
smbclient -L LSL_LWL
連接SMB伺服器。

40. 配置Samba伺服器,讓每台主機有不同的連接共享目錄,針對主機名提供不同的連接共享目錄,使其具有寫的許可權,匿名用戶不能訪問。也就是說,主機ABC會連接到SMB伺服器指定的/usr/remotpc/ABC目錄上。使用smbclient進行連接並下載其中的一個文件。
答案:基本步驟:
1.創建/usr/remotepc目錄和相應的主機名子目錄
2.修改smb.conf文件,增加相應的段
[pchome]
comment = Remote PC Directories
path = /usr/remotepc/%m
public = no
writable = yes

41. 添加一個共享目錄myshare,路經為/home/share,要求guest用戶不輸入密碼可以瀏覽,只有lsl,lwl用戶可以進行寫操作。使用smbmount進行連接。
答案:1.修改/etc/samba/smb.conf
[myshare]
path = /home/share
guest ok = yes #或者public = yes
writeable = yes
write list = lsl,lwl
2.保證/home/share的Other許可權需為rwx,或者將lsl,lwl加入share文件的組用戶中
42. 創建一個系統用戶test,建立test的別名test1 test2 ,並將其轉化成Samba用戶test,配置其能夠登錄用戶主目錄,通過smbclient和smbmount驗證。
答案:1.adduser test;passwd test
2.修改/etc/samba/smbusers 添加 test=test1 test2
3.編寫smbpasswd,將test用戶加入其中
smbpasswd test
4.修改/etc/samba/smb.conf
啟用口令驗證,指定口令文件 smbpasswd
5.service smb start
43. 啟用swat在Windows下對Linux的samba進行配置
答案:1.chkconfig swat on
2.vi /etc/hosts.allow
加入:swat : ALL
3.重啟 xinetd
service xinetd restart
4.客戶端通過瀏覽器輸入:
http://LinuxServer-IP:901
輸入root/一般用戶的用戶名和口令

44. 能否限定一個內部網IP在訪問任何一個地址的時候訪問的都是某個指定的網站主頁呢?所有主頁訪問轉向到www.baidu.com <--〉202.108.22.5
例如:IP 192.168.1.2
輸入 <http://www.126.com/>
訪問;<http://www.baidu.com/>
答案:iptables -t nat -A PREROUTING -s 192.168.1.2 -p tcp --dport 80
-j DNAT --to 202.108.22.5:80
iptables -t nat -A POSTROUTING -s 192.168.1.2 -p tcp --dport 80
-j SNAT --to 218.193.118.x
45. 在Linxu主機上,IP為218.193.118.x啟動兩個DNS,一個在標準埠53監聽,另一個在54埠監聽,將所有來自內部網(192.168.1.x)的DNS請求全部轉向到54埠;其他的保留在53埠。
答案:1.設定一個DNS配置文件 /etc/named_lsl.conf,加入
options
{ listen-on port 54 {211.163.76.1;};
directory "/var/named";
};
...其他的必要信息
可以用named的-c 選項指定named讀入不同的配置文件,比如:
/usr/sbin/named -u named -c /etc/named_lsl.conf
2.iptables -t nat -A PREROUTING -s 192.168.1.0/24 -p udp --dport 53 -j REDIRECT 54
3.iptables -t nat -A POSTROUTING -p udp --sport 54 -j SNAT --to 218.193.118.x
46. 利用iptables實現內外互通,假定當前網路為218.193.118.0,網關為218.193.118.254,本機IP為218.193.118.x,192.168.1.1,內部網為192.168.1.x
192.168.1.11為內網Web站點,試做好定向訪問。

答案:ifconfig eth0 218.193.118.x
route add default gw 218.193.118.254
ifconfig eth0:0 192.168.1.1
iptables -t nat -A PREROUTING -d 218.193.118.x -p tcp --dport http -j DNAT --to 192.168.1.11
iptables -t nat -A PREROUTING -d 218.193.118.x -j DNAT --to 192.168.1.1
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to 218.193.118.x
47. 利用iptables實現內部網代理上網,假定當前網路為218.193.118.0,網關為218.193.118.254,本機IP為218.193.118.x,192.168.1.1內部網為192.168.1.x。
答案:ifconfig eth0 218.193.118.x
route add default gw 218.193.118.254
ifconfig eth0:0 192.168.1.1
iptables -t nat -A PREROUTING -d 218.193.118.x -j DNAT --to 192.168.1.1
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to 218.193.118.x
48. 通過xhost遠程使用Linux的X資源
答案:假設你想在本地(本地IP:192.168.0.1)運行192.168.0.2的X應用程序,首先在本地xhost + 192.168.0.2,允許192.168.0.2連接本地的X Server(xhost的具體用法man xhost),然後登錄到192.168.0.2上,export DISPLAY=192.168.0.1:0。然後就可以在本地使用192.168.0.2的X應用程序了。
49. 某公司需要在網路上共享一個文件夾/home/share,所有人都只有隻讀許可權,且只有192.168.1.0/24子網的用戶可以讀寫訪問,其他的只讀,試通過NFS共享該文件夾。假定NFS伺服器的IP地址是192.168.1.1。

答案:1.編輯/etc/exports
/home/share *(ro) 192.168.1.0/24(rw,sync)
2.service portmap start
service nfs start
3.mount -t nfs IP:/home /LocalTestDir
50.將Linux設計成一個多服務系統,提供:SSH,FTP,HTTP,Samba,NFS,VNC,DNS,DHCP,
WebMin,Swat,mysql,代理上網;並使用iptables,TCP_Wrapper等方式進行安全控制,基本要求如下:
0.設定內部網192.168.1.0,外部網211.80.194.0,確定內外網的網關
1. 內部網用戶可以很方便地連接並使用各種服務,當然需要身份驗證
2. 在外部網,用戶只能從固定的幾台主機登陸(如.101,201,301等)
3. 匿名用戶可以登陸ftp,http,VNC等,但是得到的服務是有限制的
4. 根用戶可以從2中規定的幾台主機和本地終端登錄,其他方式登錄均被拒絕(Webmin,swat除外)
5. 配置所有服務在開機啟動的時候自動啟動,除了VNC只在5級啟動外,其他都在3和5級啟動
6. 所有來訪的信息都要以容易使別的方式登記到系統日誌文件中,以便日後查閱
參考答案:此為綜合實驗,自行解決
51.完成ftp的主機訪問控制和用戶訪問控制,查詢Limit相關資料,Order,deny,allow等。
參考答案:

Order allow,deny
Deny from all
Allow from 218.193.118.

52. proftp的配置例子
1。ftp伺服器支持斷點續傳,且最大支持同時10人在線,每個ip只允許一個連接;
2。允許ftpusers用戶組只能訪問自己的目錄,而不能訪問上級或者其他目錄;
3。用戶登陸伺服器時不顯示ftp伺服器版本信息,以增加安全性;
4。建立一個kaoyan的ftp帳戶,屬於ftpusers組,kaoyan用戶只允許下載,沒有可寫的許可權。下載速率限制在50Kbytes/s。
5。建立一個upload用戶,也屬於ftpusers組,同kaoyan用戶的宿主目錄一樣,允許upload用戶上傳文件和創建目錄的許可權,但不允許下載,並且不允許刪除目錄和文件的許可權,上傳的速率控制在100Kbytes/s
先是前期的用戶和組添加以及目錄的許可權設置
group add ftpusers
useradd -d /home/kaoyan -g ftpusers -s /bin/fales kaoyan
useradd -d /home/kaoyan -g ftpusers -s /bin/fales upload
chown -R kaoyan:upload /home/kaoyan
chmod -R 775 /home/kaoyan
如果你只想ftpusers組的用戶訪問,可以設置成770都行。
設置/usr/local/proftpd/etc/proftpd.conf
注意#表示註釋,對設置沒影響,可以不寫
ServerName "Frank's FTP Server"
ServerType standalone
DefaultServer on
Port 21
Umask 022
MaxInstances 30 #最多有30個proftpd的PID
User nobody
Group nobody
TimeoutStalled 10
MaxClients 10 #最多允許10個用戶在線
MaxClientsPerHost 1 "對不起,一個IP只允許一個連接"
AllowStoreRestart on
#允許斷點續傳(上傳),斷點續續(下載)是默認支持的,不用設置
DisplayLogin welcome.msg #歡迎詞文件
ServerIdent off #屏蔽伺服器版本信息
DefaultRoot ~ ftpusers #設置ftpusers組只能訪問自己的目錄

AllowOverwrite on


#不允許寫
DenyUser kaoyan

#不允許刪除,改名,下載
DenyUser upload

TransferRate RETR 50 user kaoyan
TransferRate STOR 100 user upload

我這裡實現的方式還可以通過




Limit大致有以下動作,基本能覆蓋全部的許可權了
CMD:Change Working Directory 改變目錄
MKD:MaKe Directory 建立目錄的許可權
RNFR: ReName FRom 更改目錄名的許可權
DELE:DELEte 刪除文件的許可權
RMD:ReMove Directory 刪除目錄的許可權
RETR:RETRieve 從服務端下載到客戶端的許可權
STOR:STORe 從客戶端上傳到服務端的許可權
READ:可讀的許可權,不包括列目錄的許可權,相當於RETR,STAT等
WRITE:寫文件或者目錄的許可權,包括MKD和RMD
DIRS:是否允許列目錄,相當於LIST,NLST等許可權,還是比較實用的
ALL:所有許可權
LOGIN:是否允許登陸的許可權

[火星人 ] 一些Linux試題(經典!!)已經有952次圍觀

http://coctec.com/docs/linux/show-post-136420.html