Linux云计算【第一阶段】第十二章:网络管理、进制及SSH管理与攻防
第十二章:網絡管理及SSH管理與攻防 【重難點】
一.網絡發展概述
局域網
城域網
廣域網
基本網絡協議
- 客戶端與服務器的概念
- 從客戶端到服務器的經過
No.1 客戶端與服務器的概念
客戶端: 即表示可以介入互聯網的個人終端設備, 比如個人PC機、個人Mac電腦, 操作系統為Windows和MacOS.
服務端: 即代表在互聯網中提供給用戶服務的設備, 比如淘寶網、京東網、阿里云等網站或平臺.
No.2 從客戶端到服務器的經過
Q: 是客戶端主動訪問服務器獲取信息?還是服務器主動給客戶端發送信息?
集線器 hub 最早使用的一種連接工具 網橋 bridge 交換機 switch 隔離沖突域 路由器 router 隔離廣播域同軸電纜 //光纖 雙絞線 //網線 中繼器 //1 2 3 4 5 6 7 8 橙白 橙 綠白 藍 藍白 綠 棕白 棕二進制 十進制 十六進制 相互轉換在遇到網絡請求過程中可能會遇到哪些安全問題 1.DNS劫持 //設置固定的dns [dhcp的劫持] 2.cookies 竊取 //盡量不要在非自己設備上記住密碼,登錄后及時退出 [社會工程學] 3.中間人劫持 //網站考慮問題 ssl加密 4.數據截取 //網站考慮的問題 ssl加密//郵遞員偷看了你的信 5.數據篡改 //網站考慮的問題 ssl加密 ca證書//郵遞員修改了你的信 6.偽裝 //網站考慮的問題 ssl加密 ca證書//郵遞員偽裝了你和小紅見面密碼三原則:密碼設定長度在十位數以上、帶有英文大小寫、數字、字符,每三個月定時更換一次密碼,密碼不以手機號、身份證、生日掛鉤。 了解通訊過程,重點例: 淘寶雙十一2600億銷量額 訪問用戶1000w 要保證安全首先要保證【高并發】 【高可用】 【安全】 //后面持續更細會講到====================================================================================
二.網絡基礎【重點】
OSI七層模型
OSI七層模型及其對應的協議
OSI七層: 物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層
- 特點: 下層只和上層有來往關系, 不可跨層傳輸
- 協議:
- 物理層: 由底層網絡定義協議, 即遵循ISP所制定的底層協議
- 數據層: 同上
- 網絡層: ICMP IP(IPV4 IPV6) ARP
- 傳輸層: TCP UDP
- 會話層: 建立、管理、終止會話
- 表示層: 數據的表示、安全、壓縮
- 應用層: HTTP FTP DNS TELNET HTTPS POP3 DHCP
- 設備:
- 物理層: 網線、光纖等通訊器材
- 數據層: 交換機
- 網絡層: 路由器
數據包的傳輸過程
OSI七層: 物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層
TCP/IP四層: 物理層、網絡層、傳輸層、應用層
osi 模型只是參考模型。
真正使用的是TCP/IP協議模型
IP
No.1 網絡地址的劃分及區分
ip地址組成 :
IP地址由4部分數字組成,每部分數字對應于8位二進制數字,各部分之間用小數點分開 這是點分2進制 如果換算為10進制我 們稱為點分10進制.每個ip地址由兩部分組成網絡地址(NetID)和主機地址(HostID).網絡地址表示其屬于互聯網中的哪一個網絡,而主機地址則表示其屬于該網絡中的哪一臺主機.
一:分類:
A類:0.0.0.0 - 127.255.255.255/8 0是保留的并且表示所有IP地址,而127也是保留的地址,并且是用于測試環回用的。回環:一臺電腦上兩個應用程序通過網絡通信。127.0.0.1,通常被稱為本地回環地址。
B類:128.0.0.0 - 191.255.255.255/16
C類:192.0.0.0 - 223.255.255.255/24
D類:范圍從224-239,D類IP地址第一個字節以“1110”開始,它是一個專門保留的地址。它并不指向特定的網絡,目前這一類地址被用在多點廣播(Multicast)中。多點廣播地址用來一次尋址一組計算機,它標識共享同一協議的一組計算機。224.0.0.0-239.255.255.255 組播地址
E類:范圍從240-254,以“11110”開始,為將來使用保留。 全零(“0.0.0.0”)地址對應于當前主機。全“1”的IP地址(“255.255.255.255”)是當前子網的廣播地 址。240.0.0.0-255.255.255.254 保留地址
## 網絡位 主機位
子網掩碼:網絡位全1,主機位全0 就是為了區分ip地址的中的網絡號和主機號的, 對于一臺具體的主機,子網掩碼用于判斷要通信的對象跟自己是否在同一網絡
-
私有IP地址:
所謂的私有地址就是在互聯網上不使用,而被用在局域網絡中的地址- A類: 10.0.0.0 — 10.255.255.255
- B類: 172.16.0.0 — 172.31.255.555
- C類: 192.168.0.0 — 192.168.255.255
-
概念:
- IP地址: 用于端對端通信時所使用的標識地址
- 子網掩碼: 用來劃分網絡位與主機位所使用的數字, 可以表示一個網段中IP地址的數量
- 網關: 從局域網到廣域網 或 從局域網到局域網的關口
- 網段: 包含所有IP地址的一個區域
- DNS: 用來解析公網中存在的域名與公網IP之間的對應關系
-
特殊的IP地址:
- 網段中255結尾的IP地址為廣播地址
- 網段中1結尾的IP地址為網關地址
- 網段中0結尾的IP地址表示整個網段
三.配置IP【本章重點】
實戰:
重點: 靜態IP地址配置防護墻: [root@lxw0 ~]# systemctl status firewalld.service //查看防火墻狀態 [root@lxw0 ~]# systemctl stop firewalld //關閉防護墻 [root@lxw0 ~]# systemctl disable firewalld //開機不啟動SELINUX: [root@lxw0 ~]# getenforce //查看SELINUX狀態,enforcing:攔截 permissive:提醒不攔截 disabled:禁用 [root@lxw0 ~]# setenforce 0 //立即關閉,將狀態改為permissive [root@lxw0 ~]# vim /etc/selinux/config //開機不啟動, 修改成SELINUX=disabled 廣州鐵通DNS:首選:bai61.235.70.98、備用:211.98.4.1廣州電信DNS: 首選:202.96.128.143 、備用:202.96.128.68首選:202.96.134.133 、備用:202.96.128.166首選:61.144.56.100、備用:61.144.56.101廣州網通DNS:首選:221.4.66.66 、備用:221.4.98.66 首選:210.21.3.140、備用:221.5.88.88 廣州移動DNS:211.136.20.203一、查看網絡的信息 IP、網關、DNS、主機名 IP: [root@lxw0 ~]# ifconfig //查看IP、掩碼、MAC... [root@lxw0 ~]# ifconfig enp3s0 //只顯示enp3s0的信息 [root@lxw0 ~]# ip a 10.3.133.100/24 ip 10.3.133.181 子網[netmask] 24 255.255.255.0網關:[Gateway] [root@lxw0 ~]# route -n //查看網關信息 10.3.133.1 [如果你的機器式nat模式 網關為 x.x.x.2] -- x.x.x.1子網掩碼ip階段已經得到dns: 223.5.5.5 225.6.6.6 114.114.114.114 8.8.8.8 DNS: 查看:# cat /etc/resolv.conf 修改:1.直接修改resolv.conf文件2.修改網卡配置文件,添加DNS1=XXX,重啟網卡生效主機名:# hostname 修改: [root@lxw0 ~]# hostname 主機名 //馬上生效,開機失效 [root@lxw0 ~]# hostnamectl set-hostname 主機名 //修改主機名,永久生效二、常見網絡接口enp3s0 以太網接口 eth0,eth1 wlan0 無線接口lo 本地回環接口 127.0.0.1 localhostvirbr0 橋接接口 vmnet1 vmware提供的 hostonly 模式vmnet8 vmware提供的 nat模式三、修改網絡信息【重點】 network 服務 配置靜態ip地址 1. 修改網絡配置文件 [root@lxw0 ~]# cat /etc/sysconfig/network-scripts/ //網絡配置文件 " [root@lxw0 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 //進入網絡配置文件,這里不需要配置,只是了解信息 interface configure-網卡名字 TYPE=Ethernet #網絡類型 以太網 BOOTPROTO=none #協議 none static 靜態 dhcp 動態 DEVICE=ens33 #設備名,一定要正確 NAME=ens33 # ONBOOT=yes #是否激活 是否開機啟動 IPADDR=10.3.133.181 #IP地址 PREFIX=24 #掩碼 prefix prefix NETMASK=255.255.255.0 #掩碼 兩個使用一個 UUID=63aa2036-8665-f54d-9a92-c3035bad03f7 #網卡的uuid HWADDR=00:50:56:c0:00:08 #MAC地址 GATEWAY=10.3.133.1 #默認網關 DNS1=223.5.5.5 #DNS服務器1 DNS2=223.6.6.6 #DNS服務器2 " [root@lxw0 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 //配置靜態IP,ps需要把里面原本的所有內容使用#號注釋,然后輸入新的內容,這樣下次調回動態IP就只需要把注釋消除即可 TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" DEFROUTE="yes" NAME="ens33" DEVICE="ens33" ONBOOT="yes" IPADDR=10.3.133.181 PREFIX=24 GATEWAY=10.3.133.1 DNS1=223.5.5.5 DNS2=223.6.6.6'ps:必須要輸入自己的ip,網關,掩碼,DNS服務器'[root@lxw0 ~]# systemctl restart network //重啟網絡,也可使用ifdown if-name && ifup if-name' ps:重啟之后如果還有ip 能ping www.jd.com 則說明配置成功 否則重新檢查配置文件' [root@lxw0 ~]# nmap -sP 10.3.133.0/24 |grep "report for" //查看目前局域網有那些ip已經使用了 臨時配置IP # ifconfig enp3s0 10.3.133.181 # ip addr add dev eth1 3.3.3.3/24 ip addr add dev ens33 10.3.133.101/24網絡管理后續還有更多的內容,目前只講前期用到的配置靜態IP方便目前實戰學習的用途.......四.SSH管理與攻防
本段全部以實戰操作為基礎:
一.免密登錄 1.登錄歷史信息 [root@lxw0 ~]# last //查看系統最近登錄的用戶時間和時間總長 [root@lxw0 ~]# lastlog //查看每個用戶最近第一次的登錄時間 [root@lxw0 ~]# whoami //查看當前用戶身份 [root@lxw0 ~]# who i am //原始登錄用戶身份2.秘鑰登錄 [root@lxw0 ~]# ssh-keygen //產生秘鑰 Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): 回車 Enter passphrase (empty for no passphrase): 回車 Enter same passphrase again: 回車 Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:uPsWuHLk7ww+jf6E5U1GPLbMBIwWDRzEGzDdv2gHz9o root@vm1 The key's randomart image is: +---[RSA 2048]----+ | o*=O. | | .B +o | | . o .* | | ...*.o | | ..S=*. | | o=++= | | o+=o=. | | ..*=+ E | | ++B* | +----[SHA256]-----+[root@vm1 ~]# ls /root/.ssh/ id_rsa id_rsa.pub 私鑰[打開鎖的唯一鑰匙] 公鑰[鎖] [root@lxw0 ~]# ls /root/.ssh/ //查看秘鑰文件 id_rsa 私鑰 id_rsa.pub公鑰 known_hosts 記錄主機信息 [root@lxw0 ~]# ssh-cony-id -i 10.3.133.180 //把公鑰【鎖拷貝給ip180用戶】 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" The authenticity of host '10.3.133.180 (10.3.133.180)' can't be established. ECDSA key fingerprint is SHA256:GiaWYwKSRo8tU0nxZzDY/wM7BPrW5l6CeK94gl1N/dI. ECDSA key fingerprint is MD5:9a:ba:f2:09:25:97:af:b6:7b:86:5d:94:b5:54:b1:14. Are you sure you want to continue connecting (yes/no)? yes [輸入yes確認下一步操作] /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@10.3.133.253's password: [輸入想要鏈接的機器的密碼] Number of key(s) added: 1 Now try logging into the machine, with: "ssh '10.3.133.253'" and check to make sure that only the key(s) you wanted were added.公鑰拷貝成功 [root@lxw0 ~]# ssh 10.3.133.180 //測試免費連接 Last login: Fri Sep 11 09:46:29 2020 from 10.3.133.180探察ssh-copy-id 做了什么 ssh-copy-id 把 vm1機器的 ~/.ssh/id_rsa.pub 追加到了目標機器 vm2 的 ~/.ssh/authorized_keys~/.ssh 都有那些問題 分別什么作用 id_rsa id_rsa.pub authorized_keys known_hosts[可以刪除] 私鑰[打開鎖的唯一鑰匙] 公鑰[鎖] 被人拷貝過來的公鑰存放位置 記錄該機器所鏈接過的其他機器信息和識別碼3.禁止密碼登錄,防止爆破 [root@lxw0 ~]# vim /etc/ssh/sshd_config //修改password密碼登錄信息,防止遠程攻擊,把yes改成no PasswordAuthentication no //把后面的yes修改成no [root@lxw0 ~]# systemctl restart sshd //重啟sshd 4.遠程拷貝 [root@lxw0 ~]# scp /tmp/aa.txt 10.3.133.180:/tmp/ //本地到遠端 [root@lxw0 ~]# scp /root/install.log 10.3.133.180:/tmp/ //遠端到本地 [root@lxw0 ~]# scp 10.3.133.180:/tmp/aa.txt 10.3.133.182:/tmp/ //遠端到遠端=================================================================================================二.ftp共享文件1.rz安裝使用 //連接Windows,傳輸工具 [root@lxw0 ~]# yum -y provides rz //查找rz安裝包 [root@lxw0 ~]# yum -y install lrzsz-0.12.20-36.el7.x86_64 //yum安裝rz2.ftp 安裝使用 [root@lxw0 ~]# /etc/vsftpd/vsftpd.conf //配置文件 [root@lxw0 ~]# yum -y install vsftpd //安裝vsftpd [root@lxw0 ~]# service vsftpd restart //重啟服務 [root@lxw0 ~]# systemctl start vsftpd //啟動服務 [root@lxw0 ~]# systemctl enable vsftpd //開機啟動 [root@lxw0 ~]# systemctl status vsftpd //查看服務狀態,dead未啟動,running正常啟動ps: 若想正常啟動需要一鍵三連:selinux ; iptables;firewalld; /var/ftp/ //用戶共享目錄,權限必須755 3.ftp:配置 【重點】 [root@lxw0 ~]# vim /etc/vsftpd/vsftpd.conf anonymous_enable=YES //開啟匿名用戶訪問 local_enable=YES //開啟本地用戶訪問 訪問的目錄為該用戶自己的家目錄 write_enable=YES // local_umask=022 //本地用戶的 umask anon_umask=077 //新添加 匿名用戶的umask anon_upload_enable=YES //打開注釋 允許匿名用戶上傳文件 anon_mkdir_write_enable=YES //打開注釋 允許匿名用戶創建目錄 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=NO listen_ipv6=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES[root@lxw0 ~]# systemctl restart vsftpd //重啟vsftpd經過上邊的配置和修改,用戶即可訪問ftp [以匿名 用戶的身份]linux訪問ftp的客戶端為 lftp lftp 10.3.133.181 [匿名用戶訪問 訪問的地址為/var/ftp ]cd ls put[上傳] filename get[下載] filename lftp tom@10.3.133.181 [第一tom為 254機器上的本地用戶 而且tom需要有密碼 此時訪問的地址為 /home/tom ]lcd 切換get下載的路徑 [默認是下載到lftp登錄ftp服務器時所在的目錄]mirror /dir 上傳目錄chroot change root暴力破解防御/etc/ssh/sshd_config 限止登錄的用戶或組 AllowUsers AllowGroups/etc/hosts.allow中設置允許的IP訪問,例如sshd:10.3.133.181:allow使用DenyHosts自動統計,并將其加入到/etc/hosts.deny基于PAM實現登錄限制: 模塊:pam_tally2.so 功能:登錄統計 示例:實現防止對sshd暴力破解 [root@lxw0 ~]# grep tally2 /etc/pam.d/sshd auth required pam_tally2.so deny=2 even_deny_root root_unlock_time=60 unlock_time=60[root@lxw0 ~]# pam_tally2 --reset -u root總結
以上是生活随笔為你收集整理的Linux云计算【第一阶段】第十二章:网络管理、进制及SSH管理与攻防的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 促活用户新方式:在app内嵌入小游戏
- 下一篇: [JZOJ4274] [NOIP2015