1 / 63

Linux 基本操作與網路安全

Linux 基本操作與網路安全. VBird 2003/06/23. 報告內容. 什麼是電腦?硬體與作業系統的關係? Linux 是什麼?與 Linux 的功能? Linux 的操作介面與如何有效學習? Linux 的多人工作平台概念 ( 帳號管理 ) Linux 檔案系統管理 Linux 程序管理與工作排程 Linux 套件管理員 Linux 問題的檢驗程序 Linux 網路安全簡述. 什麼是電腦?. 一堆硬體,配合一個可以管理硬體的 『 作業系統 』 ,即成為電腦一詞。. 什麼是電腦?. 1960 年代: Multics 計畫始末

Download Presentation

Linux 基本操作與網路安全

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Linux 基本操作與網路安全 VBird 2003/06/23

  2. 報告內容 • 什麼是電腦?硬體與作業系統的關係? • Linux 是什麼?與 Linux 的功能? • Linux 的操作介面與如何有效學習? • Linux 的多人工作平台概念(帳號管理) • Linux 檔案系統管理 • Linux 程序管理與工作排程 • Linux 套件管理員 • Linux 問題的檢驗程序 • Linux 網路安全簡述

  3. 什麼是電腦? • 一堆硬體,配合一個可以管理硬體的『作業系統』,即成為電腦一詞。

  4. 什麼是電腦? • 1960年代:Multics 計畫始末 • 1970年代初期:貝爾研究室的 Thompson • 1973年:Ritchie 使 C 語言與 Unix 誕生 • 1977年:Berkeley 大學的 BSD 的誕生 • 1980年初期:AT&T 的商業行為

  5. 什麼是電腦? • 1984年:Stallman 的 FSF 與 GNU 計畫 • 自由軟體 (free beer or free air ?); • 通用授權 (GNU General Public License) • 開放源碼 (Open Source) • 影響:發展了數百個以上的好用軟體,全部取之於社群、用之於社群。

  6. 什麼是電腦? • GNU 的大問題:有軟體、沒有作業系統….

  7. Linux 是什麼? • 1991年:Linus Torvalds 的一則BBS簡訊 Hello everybody out there using minix- I'm doing a (free) operation system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones.

  8. Linux 是什麼? • Linux = 核心 (Kernel) 即是管理硬體的那個作業系統咯! • 核心在控制整個系統(軟、硬體) • 核心的功能不同,支援的硬體就不同 • 可以支援外掛模組(想像驅動程式) • 硬體驅動模組設計是『硬體廠商』的責任--每人一信、開發才會快!^_^

  9. Linux 是什麼? • Linux distribution: • 僅有核心,能做的功能有限; • 架構在 GNU 的 GPL ,由 GNU 與其他 Open Source 社群提供大量的軟體在 Linux 這個核心上面; • 某些商業團體,將 Linux kernel 配合這些軟體套件(Packages)配套成為一可直接安裝在 X86 上的完整光碟。

  10. Linux 是什麼? • Linux 的發行商 (distributions) • Red Hat • Mandrake • Linpus • CLE • …..(共有將近兩百家) • 通通使用同一個核心功能!

  11. Linux 是什麼? • Linux 的功能: • 桌上型電腦: • Windows 能做的,在 Linux 上面都可以達到,不過,就是中文化差了點~ • KDE, GNOME 都是很優良、很漂亮的 Window Manager • X Window 僅是『一套軟體』

  12. Linux 是什麼? • Linux 的功能: • 工作站(Workstations): • 軟體開發、三D美術開發、數值模式運算…. • 伺服器: • WWW, FTP, Mail, Proxy, File, Firewall, ….

  13. Linux 是什麼? • Linux 優點: • 網路功能強大、軟體眾多、Open Source • Linux 缺點: • 入門門檻高、中文化不夠徹底 • 大眾的問題: • 認知不足…誰說 Linux 架站容易?!

  14. Linux 是什麼? • Linux 與 Windows 的比較?? • 無法比較,因為兩者定位不同; • 各取所需,沒有誰好誰壞!

  15. Linux 的操作介面 • 圖形介面 (X-Window System) • KDE, GNOME….. • 最大的優點是親和、中文化 • 文字介面 (BASH Shell) • 功能強大、但學習歷程較長 • 最大的優點是,更深入系統,適合系統管理員

  16. Linux 的操作介面 • 為何強調 Bash Shell? • Bash shell 佔用資源較少,且由於來自 GNU,與 Linux kernel 相容性高; • X Window 不但佔用資源較多,使系統運作龜速,且可能容易掛點; • Shell scripts 能夠直接設計 program ,可以很快速的管理好 Linux 主機; • 多人多工平台,較適合 Bash shell 。

  17. 如何有效學習? • 想玩一玩 Linux 而已: • 使用 X-Window 爽一爽即可 • 但不要架站喔! • 為了生活、為了興趣、為了管理: • 可以理解為什麼要這樣做? • 問題發生了,會知道哪裡可能出錯? • 整個流程的檢驗程序清晰!

  18. 如何有效學習? • 有心要學習,最好要會的咚咚: • BASH 與最簡易的 vi (文書處理機) • 正規表示法(Regular Expression) • Linux 的檔案、帳號等基本概念 • 套件的安裝(Package Manager) • 網路基礎觀念 • 至於架站…..上面的學會了,架站自然就會了!

  19. 如何有效學習? • 其他必備技巧: • 還是需要讀英文的! • 上網 Google 搜尋技巧; • 懂得找男人( man ) • 注意閱讀螢幕出現的訊息資料; • 注意登錄檔資訊 ( log file ) • 注意發問時提供的資訊

  20. 如何有效學習? • 文書處理器 vi • 管理員至少一定要會一種編輯器 • vi 的使用: • 一般模式:移動、複製、刪除、貼上 • 編輯模式:插入與取代文件 • 指令列模式:搜尋、自動取代、檔案存取等

  21. 如何有效學習? • 線上查詢 man page • 是否一定要『背』指令? • man command • man 5 configuration • info command (尤其 GNU 提供的工具) • /etc/man.conf (尤其自行安裝軟體) • whatis filename

  22. Linux 的多人工作平台 • 每個帳號均有自己的家目錄與相關的 mail box 以及其他帳號相關的操作環境之設定 • Linux 僅認識 ID 數字:UID, GID • 兩種 UID: 0(root), 1~65534(一般身份) • 三種身份:owner, group, others • 與 Linux 檔案權限相關性很高! • /etc/passwd, /etc/shadow, /etc/group • 密碼的設定技巧

  23. Linux 的多人工作平台 • root 的重要性: • 系統管理、安全管理、套件管理….. • 『技術』不是問題『操守』才是重點 • 多人維護之主機的 root 身份變換: • 即使是 root ,亦建議使用一般身份操作平時的 Linux 作業; • su, sudo

  24. Linux 檔案系統管理 • 檔案類型: file type • regular files: data, ascii, binary programs.. • Directory • device files: Block, Character • 檔案系統類型:filesystem type • ext2, ext3, reiserfs • vfat, ntfs…..

  25. Linux 檔案系統管理 • 樹狀目錄

  26. Linux 檔案系統管理 • 檔案權限 • User, Group, Others • 適合多人多工、可達保密防諜之目的

  27. Linux 檔案系統管理 • 檔案權限

  28. Linux 檔案系統管理 • 基本檔案與目錄管理操作 • ls, pwd, cd, mkdir, rmdir • cp, mv, rm, • cat, nl, head, tail, less, more, • file, diff

  29. Linux 檔案系統管理 • 檔案屬性的變換 • chown, chgrp, chmod • # chmod 777 bar

  30. Linux 檔案系統管理 • 檔案的搜尋 • which command (與 PATH 有關) • whereis filename • locate filename • find path type arguments

  31. Linux 檔案系統管理 • 連結檔 • hard link • 不可跨 filesystems, 不可連結 directory • 所有的 link 為 0 時,檔案才會完蛋。 • Symbolic link • 就是『捷徑』囉!

  32. Linux 檔案系統管理 • 磁碟分割槽與掛載問題:

  33. Linux 檔案系統管理 • 磁碟分割槽與掛載問題: • 每個 partition 就是一個完整的 filesystem • 使用 mount 來掛載每一個 partition , • 需要有 mount point 來掛載 (directory) • # mount -t vfat /dev/hda5 /mnt/windows • # mount -t ntfs /dev/hda6 /mnt/winnt • # mount -t ext3 /dev/hdb1 /mnt/linux2

  34. Linux 檔案系統管理 • 磁碟分割槽的分割問題: • fdisk 的使用(需瞭解 MBR, partition 的基本觀念) • mke2fs 來格式化 • fsck 來檢驗磁區 • /etc/fstab 來開機掛載!

  35. Linux 程序管理與工作排程 • 什麼是程序? • 任何觸發系統工作的事件,系統會給予一個 process ID 來控制該事件的執行,這個 PID 就是程序! • 需要注意到,程序『屬於誰?他的權限是不同的!』而程序執行後輸出的訊息則與資料流有關!

  36. Linux 程序管理與工作排程 • 如何觀察程序? • top • ps • 常駐記憶體的程式(daemon, 服務) • 在背景下執行 • 是系統正常運作所必需要的(syslog,cron) • 是某些服務提供所必需要的(www, mail..)

  37. Linux 程序管理與工作排程 • 程序的優先執行順序? • Priority • nice value • nice 新的 PID • renice 已存在的 PID

  38. Linux 程序管理與工作排程 • 給予程序『訊號, signal』 • kill -signal PID • -1 重新讀取設定檔 • -9 無條件強制驅離記憶體 • -15 正常方式關閉該 PID

  39. Linux 程序管理與工作排程 • 重要的程序之一:syslog • 系統在背景下工作的各項服務所產生的『訊息』均統一由 syslog 這個服務 (daemon) 所管理 • /etc/syslog.conf • /var/log/messages • /var/log/secure ...

  40. Linux 程序管理與工作排程 • 工作排程 • 循環式工作排程: • crontab • /etc/crontab • 單一工作排程: • at

  41. Linux 套件管理員 • RPM • 具有資料庫:容易安裝、升級、移除 • 在查驗及搜尋方面極為有效率 • 漏洞修補速度快速 • 最大的缺點:屬性相依的問題(這包含了版本、平台等等)

  42. Linux 套件管理員 • Tarball • 為原始碼 (open source) • 大部分的 tarball 均支援跨平台 • 需要額外的套件支援:make, kernel source, gcc 等等 • 升級、反安裝等較為不方便

  43. Linux 套件管理員 • 沒有任何一套作業系統會『完全』滿足您,所以使用者必需要至少學習一種套件管理員,以提供自我程式資料庫的安裝!

  44. Linux 問題的檢驗程序 • 先查看螢幕出現的錯誤訊息; • 由螢幕出現的錯誤訊息以 man 來查尋該問題的解決方法; • 檢驗登錄檔 (logfile) 的錯誤記錄; • 由錯誤記錄反查該套件的設定檔或者相關指令的校正!

  45. 個人小建議 • 學會一種以上的 package manager • 務必努力去找男人! • 至少要會使用 vi吧~~ ^_^ • 一定要瞭解 Linux 的目錄架構 • 一定要知道 User, Group, Others,以及 Process之間的關係!

  46. 個人小建議 • 知道如何追查與克服問題: • 養成日誌觀察的好習慣! • 天助自助者! • 科技永遠來自於人類的惰性: • 知道 cron 的用途; • 訓練執行 BASH 與編寫 scripts 的能力

  47. 個人小建議 • 『會用』比『會考試』應該要重要的多! • 由『實作』去體驗會比冥想有效的多! • 由『搜尋』取代『發問』會快速而有效的多!

  48. Linux 網路安全簡述 • 如何入侵與攻擊 Linux 主機? • 使用軟體套件的漏洞(Ex>Wu-FTP) • 使用 port scan 軟體掃瞄後,以 root kit 攻擊軟體取得 Linux 主機的 root 功能 • 利用防火牆規則的不當規劃來滲透 • 使用玉石俱焚的當機手段

  49. Linux 網路安全簡述 • 那麼該如何預防? • 瞭解網路的基礎(不論 Linux 與 Windows 的網路基礎均是相同的!) • 將不同的服務分別設定在不同主機上 • 如何升級套件? • 瞭解如何啟動與關閉一個 service (daemon) • 如何架設防火牆?

  50. Linux 網路安全簡述 • 網路基礎 OSI 網路七層協定 • Hub 與 Switch 的差異; • 網路卡卡號? • TCP/IP 的相關重點: • Public IP 與 Private IP ? • 什麼是 port 與協定及 daemon ?

More Related