一、认识web
web的构成:源码+服务器+web服务容器+数据库
二、系统划分
1:服务器(windows server系列)
2.家庭电脑
三、web容器
web容器是什么
web 容器是⼀种服务程序 在服务器⼀个端⼝就有⼀个提供相应服务的程序 ⽽这个程序就是处理从客户端发出的请求,如 JAVA 中的 Tomcat 容器ASP 的 IIS 或 PWS 都是这样的容器 一个服务器可以有多个容器
Web中间件是一种位于客户端和服务器之间的软件,它为两边提供服务。它的作用是处理客户端的请求,将其转换为服务器能够理解的格式,并将服务器的响应转换回客户端能够理解的格式
关键点
web服务在web中间件上跑的,web中间件部署在这个服务器的。
稳定性(对web容器最重要的)
web容器分类
- apache
- IIS
- nginx
- tomcat
创建网站需要了解:
浏览器访问网站没有访问文件的会默认展示文件。
apache 启动的网站的权限不一样:⽤户启动 → ⽤户权限
服务启动 → SYSTEM 权限
四、计算机的通信
计算机通信需要关注的:端口+协议
(一)端口
通信中的端口指逻辑意义上的端口,⼀般是指 TCP/IP 协议中的端⼝,端⼝号的范围从 0 到65535。
1:端口分类:公认端口,动态端口
公认端口:0-1023
它们紧密绑定(binding)于⼀些服务。通常这些端⼝的通讯明确表明了某种服务的协议。
21 端⼝分配给 FTP 服务,25 端⼝分配给 SMTP(简单邮件传输协议),服务,80 端⼝分配给 HTTP 服务,135 端⼝分配给 RPC(远程过程调⽤)服务等
动态端口:1024-65535
之所以称为动态端⼝,是因为它 ⼀般不固定分配某种服务,⽽是动态分配。动态分配是指当⼀个系统进程或应⽤ 程序进程需要⽹络通信时,它向主机申请⼀个端⼝,主机从可⽤的端⼝号中分配 ⼀个供它使⽤。当这个进程关闭时,同时也就释放了所占⽤的端⼝号。
2、常见的端口
21端⼝ FTP ⽂件传输服务 未授权访问(匿名登录),弱⼝令爆破
22端⼝ SSH 远程连接服务 安全登录型 爆破,shh内⽹代理转发,⽂件传输 弱⼝
令 sftp
23端⼝ TELNET 终端仿真服务 不安全的⽂本传送 爆破,嗅探,弱⼝令
3389端⼝ Windows服务器RDP默认远程桌⾯连接端⼝ shift后⻔,爆破
5900端⼝ vnc 弱⼝令爆破
5632端⼝ PyAnywhere服务 抓密码,代码执⾏
20/21/22/69 ftp/tftp⼩型⽂件传输协议 允许匿名上传下载爆破嗅探
139 samba服务 爆破,未授权访问,远程代码执⾏
389 ldap⽬录访问协议 注入,匿名访问,弱⼝令
2094 nfs服务(⽹络⽂件系统) xx
53端⼝ DNS 域名解析服务 对外DNS服务时的端⼝,域名解析时使⽤UDP协议
80端⼝ HTTP 超⽂本传输服务 对外公共服务端⼝ Windows IIS
443端⼝ HTTPS 加密的超⽂本传输服务 安全型,对外公共服务端⼝
1433:端⼝ SQLServer数据库端⼝
1521端⼝ Oracle数据库端⼝
3306端⼝ MYSQL数据库端⼝
5000端⼝ DB2默认端⼝号
5432端⼝ Postgresql数据库端⼝
6379端⼝ Redis数据库端⼝
9200端⼝ Elasticsearch服务器端⼝
27017端⼝ mongoDB数据库默认端⼝
22122端⼝ fastdfs服务器默认端⼝
8080端⼝ TCP服务端默认端⼝ Tomcat Apache Nginx Axis2
7001 weblogic
8888端⼝ Nginx Jboss
9080/9081/9090 Websphere
8080/3700/4848 GlassFish
80 Web # 常⻅Web漏洞,管理后台
80-89 Web # 常⻅Web漏洞,管理后台
161 SNMP # 默认⼝令:public/private ,弱⼝令爆破
389 LDAP # 未授权访问
443 SSL # ⼼脏滴⾎以及⼀些Web漏洞测试
445 SMB # 弱⼝令爆破,检测是否有ms_08067等溢出
(二)协议
1、什么是传输协议
传输协议:定义了客户端和服务器端通信时,发送数据的格式在 web 应⽤中 通信协议默认为 http/https 协议
http→超⽂本传输协议→明⽂传输
https→超⽂本传输安全协议→加密传输
2、传输的协议还有?
- TCP/IP协议
- UDP协议
- DNS协议
- icmp协议
3、数据传输的⽅式
- GET 主要⽤于请求资源
- POST 主要⽤于传输资源到服务器
- PUT 传输⽂件到服务器
- HEAD 主要⽤于获取服务端头部信息
- DELETE 删除⽂件
- OPTIONS 询问服务端⽀持哪些数据传输⽅法
- TRACE 是让web服务器端将之前的请求通信还回给客户端的⽅法
- CONNECT 要求采⽤隧道协议连接代理
4、GET 与 POST ⽅法有哪些区别
GET请求参数会被显示在外部
POST在进⾏参数传递的过程中是不能看到参数的内容
GET请求的数据包有⼤⼩限制
POST请求的数据包理论无⼤⼩限制