20199102《網絡攻防實踐》假期做業

20199102《網絡攻防實踐》假期做業

[TOC]html

0 整體結構

本次做業屬於那個課程 《網絡攻防實踐》
這個做業要求在哪裏 《網絡攻防實踐》假期做業
我在這個課程的目標是 學習網絡攻防相關技術、掌握網絡攻防相關能力
這個做業在哪一個具體方面幫助我實現目標 複習markdown相關語法,學習Latex公式輸入方法,複習linux虛擬機安裝
做業正文 下述正文,做業1、做業二
其餘參考文獻

1 做業一

1.1 你對網絡攻擊和防護瞭解多少?該課程須要計算機和網絡相關的基礎知識,你原專業是什麼專業,目前你掌握多少基礎知識?linux

1.2 做業要使用Markdown格式,Markdown入門參考shell


1.1 學習經歷

  • 本科專業計算機科學與技術-軟件工程
  • 以前學習過《計算機網絡》、《協議分析》等與計算機網絡相關的課程
  • 瞭解ICMP洪水、IP分片攻擊和路由協議攻擊等網絡攻擊方式。
  • 學習過網絡協議相關防護措施,瞭解網絡攻擊防護相關措施如網絡防火牆技術、入侵檢測技術和網絡掃描技術等相關防護技術。

1.2 markdown格式

2 做業二

2.1 學習基於VirtualBox虛擬機安裝Ubuntu圖文教程在本身筆記本上安裝Linux操做系統(也可使用VMWare安裝虛擬機,安裝方法本身百度)數據庫

2.2 經過實踐學習別出心裁的Linux命令學習法,掌握Linux命令的學習方法ubuntu

2.3 參考上面的學習方法經過實踐學習Linux 基礎入門(新版)課程,掌握經常使用的Linux命令,重點是3/4/5/6/7/8節。centos


2.1 虛擬機的安裝

下面是安裝過程當中的相關注意事項、操做步驟和截圖bash

  • 主力機器放在學校實驗室,經過蒲公英+遠程桌面操做機器,相關截圖可能比較奇怪。markdown

  • 在Intel的CPU中虛擬化技術爲VT-V, AMD的CPU中爲SVM mode網絡

  • 下載Ubuntu 18.04 鏡像文件app

  • 虛擬機建立的相關參數設置(另外推薦圖牀網站)

1GL6OI.png

  • 安裝過程以後須要重啓虛擬機,安裝vmware-tools實現虛擬機和主機之間的溝通。至此,系統安裝過程到此結束,下面我將使用我平常使用的虛擬系統完成接下來的做業。

  • 接下來在剛安裝系統以後須要對系統進行相關設置

    • apt-get換國內源 國內常見的兩個源爲aliyun清華源

    • sudo apt-get updata & upgrade更新系統相關程序

    • sudo apt-get install zsh 安裝shell,並設置相關插件。

  • 至此係統設置安裝完成

2.2 linux命令學習

2.2.1用戶及文件權限管理

2.2.1.1 linux用戶管理相關命令
who 
	-a 所有信息
	-d 死掉進程
	-m 
	-q 當前已經登陸的
	-u 當前已經登陸的信息
	-r 等級
who mom likes //獲取當前終端的用戶名
sudo adduser username //
su username //切換用戶
group groupname //建立group
sudo usermod -G sudo username //添加管理員權限
sudo deluser name --remove-home //刪除用戶及其目錄
​```

adduser會建立用戶、建立目錄和設置用戶名

useradd只會建立用戶, 須要經過passwd username去設置密碼

1GxYaq.png

2.2.1.2 linux文件權限
ls
	-s    //顯示大小
	-S	  //按照大小排序
	-Al   
	-h
touch filename    //建立文件
chmod -R XXX filename //賦予文件權限
//三個數字分別表明groups、others和user
//1 2 4 三個數字分別表明run、read和write,加和爲7

1J9R7d.png

2.2.2 linux目錄結構及文件基本操做

2.2.2.1 linux目錄結構

linux的大部分目錄結構是規定好了的FHS標準

FHS(英文:Filesystem Hierarchy Standard 中文:文件系統層次結構標準),多數 Linux 版本採用這種文件組織形式,FHS 定義了系統中每一個區域的用途、所須要的最小構成的文件和目錄同時還給出了例外處理與矛盾處理。

shiyanlou

2.2.2.2 linux文件基本操做
touch filename 				//建立文件
mdkir dirname				//建立目錄
mkdir -p path/dirname		//-p連同路徑一塊兒建立
cp filename1 dirname		//copy
cp -r dirname1 dirname2		//遞歸copy
rm filename 				//刪除文件
	-r //遞歸刪除
	-f //忽視警告
mv A B						//移動文件A -> B
rename perl-exp perl-exp	//rename
cat filename				//打印文件
tac filename				//反向打印文件
nl filename					//顯示行號打印文件
	-b //添加行號方式
	-n //設置行號央視
	-w //行號佔用字段位數
file filename				//顯示文件類型
head filename				//顯示文件前10行
tail filename				//顯示文件後10行

2.2.3 環境變量與文件查找

2.2.3.1 環境變量
命令 說明
set 顯示當前 Shell 全部變量,包括其內建環境變量(與 Shell 外觀等相關),用戶自定義變量及導出的環境變量。
env 顯示與當前用戶相關的環境變量,還可讓命令在指定環境中運行。
export 顯示從 Shell 中導出成環境變量的變量,也能經過它將自定義變量導出爲環境變量。
$ path=$PATH
$ echo $path
$ path=${path%/home/shiyanlou/mybin}
# 或使用通配符,*表示任意多個任意字符
$ path=${path%*/mybin}

$ unset temp				//取消變量

source .zshrc				//變量當即生效

1Jeg2j.png

2.2.3.2 命令的查找路徑與順序
命令 特色
where 這個搜索很快,由於它並無從硬盤中依次查找,而是直接從數據庫中查詢。
locate 經過「 /var/lib/mlocate/mlocate.db 」數據庫查找,不過這個數據庫也不是實時更新的,系統會使用定時任務天天自動執行 updatedb 命令更新一次,因此有時候你剛添加的文件,它可能會找不到,須要手動執行一次 updatedb 命令
which 咱們一般使用 which 來肯定是否安裝了某個指定的軟件,由於它只從 PATH 環境變量指定的路徑中去搜索命令:
find 咱們一般使用 which 來肯定是否安裝了某個指定的軟件,由於它只從 PATH 環境變量指定的路徑中去搜索命令:

find的一級參數和二級參數

參數 說明
-atime 最後訪問時間
-ctime 最後修改文件內容的時間
-mtime 最後修改文件屬性的時間
  • -mtime n:n 爲數字,表示爲在 n 天以前的「一天以內」修改過的文件
  • -mtime +n:列出在 n 天以前(不包含 n 天自己)被修改過的文件
  • -mtime -n:列出在 n 天以內(包含 n 天自己)被修改過的文件
  • -newer file:file 爲一個已存在的文件,列出比 file 還要新的文件名

2.2.4文件的打包與解壓縮

文件後綴名 說明
*.zip zip 程序打包壓縮的文件
*.rar rar 程序壓縮的文件
*.7z 7zip 程序壓縮的文件
*.tar tar 程序打包,未壓縮的文件
*.gz gzip 程序(GNU zip)壓縮的文件
*.xz xz 程序壓縮的文件
*.bz2 bzip2 程序壓縮的文件
*.tar.gz tar 打包,gzip 程序壓縮的文件
*.tar.xz tar 打包,xz 程序壓縮的文件
*tar.bz2 tar 打包,bzip2 程序壓縮的文件
*.tar.7z tar 打包,7z 程序壓縮的文件
2.2.4.1 打包
tar -czvf ***.tar.gz
tar -cjvf ***.tar.bz2
2.2.4.2解壓
tar -xzvf ***.tar.gz
tar -xjvf ***.tar.bz2
2.2.4.3參數
參數 做用
-x 檔案文件中釋放文件。
-c 建立新的檔案文件。若是用戶想備份一個目錄或是一些文件,就要選擇這個選項。
-r 把要存檔的文件追加到檔案文件的末尾。例如用戶已經作好備份文件,又發現還有一個目錄或是一些文件忘 記備份了,這時可使用該選項,將忘記的目錄或文件追加到備份文件中。
-t 列出檔案文件的內容,查看已經備份了哪些文件。
-u 更新文件。就是說,用新增的文件取代原備份文件,若是在備份文件中找不到要更新的文件,則把它追加到備份文件的最後。

2.2.5 文件系統操做和磁盤管理

2.2.5.1基本操做
df				//顯示磁盤容量
du				//顯示目錄大小
	-h			//更易於閱讀
	-d			//顯示深度
	-s			//顯示總計
2.2.5.2 磁盤管理
# 輸出到文件
$ dd of=test bs=10 count=1 # 或者 dd if=/dev/stdin of=test bs=10 count=1
# 輸出到標準輸出
$ dd if=/dev/stdin of=/dev/stdout bs=10 count=1

//從/dev/zero設備建立一個容量爲 256M 的空文件:
$ dd if=/dev/zero of=virtual.img bs=1M count=256
$ du -h virtual.img

$ mount -o loop -t ext4 virtual.img /mnt 
# 也能夠省略掛載類型,不少時候 mount 會自動識別

# 以只讀方式掛載
$ mount -o loop --ro virtual.img /mnt

# 進入磁盤分區模式
$ sudo fdisk virtual.img

$ sudo losetup /dev/loop0 virtual.img
# 若是提示設備忙你也可使用其它的迴環設備,"ls /dev/loop*"參看全部迴環設備

# 解除設備關聯
$ sudo losetup -d /dev/loop0

格式化mkfs分區
$ sudo apt-get install kpartx
$ sudo kpartx -av /dev/loop0

# 取消映射
$ sudo kpartx -dv /dev/loop0

所有格式化爲ext4
$ sudo mkfs.ext4 -q /dev/mapper/loop0p1
$ sudo mkfs.ext4 -q /dev/mapper/loop0p5
$ sudo mkfs.ext4 -q /dev/mapper/loop0p6

1JKdfS.png

2.2.5 linux下的幫助命令

內建命令其實是 shell 程序的一部分,其中包含的是一些比較簡單的 Linux 系統命令,這些命令是寫在bash源碼的builtins裏面的,由 shell 程序識別並在 shell 程序內部完成運行,一般在 Linux 系統加載運行時 shell 就被加載並駐留在系統內存中。並且解析內部命令 shell 不須要建立子進程,所以其執行速度比外部命令快。好比:history、cd、exit 等等。

外部命令是 Linux 系統中的實用程序部分,由於實用程序的功能一般都比較強大,因此其包含的程序量也會很大,在系統加載時並不隨系統一塊兒被加載到內存中,而是在須要時纔將其調入內存。雖然其不包含在 shell 中,可是其命令執行過程是由 shell 程序控制的。外部命令是在 Bash 以外額外安裝的,一般放在/bin,/usr/bin,/sbin,/usr/sbin等等。好比:ls、vi等。

命令 特色
help 由於 help 命令是用於顯示 shell 內建命令的簡要幫助信息。幫助信息中顯示有該命令的簡要說明以及一些參數的使用以及說明,必定記住 help 命令只能用於顯示內建命令的幫助信息,否則就會獲得你剛剛獲得的結果。
man 由於 man 工具是顯示系統手冊頁中的內容,也就是一本電子版的字典,這些內容大多數都是對命令的解釋信息,還有一些相關的描述。經過查看系統文檔中的 man 也能夠獲得程序的更多相關信息和 Linux 的更多特性。
info 獲得的信息是否是比 man 還要多了,info 來自自由軟件基金會的 GNU 項目,是 GNU 的超文本幫助系統,可以更完整的顯示出 GNU 信息。因此獲得的信息固然更多

3. 參考文獻

[1].http://www.javashuo.com/article/p-gjwrvaoz-kb.html

[2].https://www.cnblogs.com/littleby/p/9843620.html

[3].https://blog.csdn.net/makercloud/article/details/82696960

[4].http://www.javashuo.com/article/p-zfuctdzv-c.html

相關文章
相關標籤/搜索