squid

HTTP Keep-Alive模式

ぃ、小莉子 提交于 2020-12-31 10:06:57
——献给那些向我这样对HTTP的“伪”熟悉者。 故事发生在10月份的一次面试经历中,本来我不想说出来丢人显眼,但是为了警醒自己和告诫后人,我决定写成博文发出来。因为在面试过程中,我讲在2009年写过QQ农场助手,在这期间深入学习了HTTP协议,而且在2010-05-18写了博文: HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等 。面试官说既然我熟悉HTTP协议,就问“当HTTP采用keepalive模式,当客户端向服务器发生请求之后,客户端如何判断服务器的数据已经发生完成?” 说实话,当时我懵了,一直没有关注过keepalive模式。我只知道: HTTP协议中客户端发送一个小请求,服务器响应以所期望的信息(例如一个html文件或一副gif图像)。服务器通常在发送回所请求的数据之后就关闭连接。这样客户端读数据时会返回EOF(-1),就知道数据已经接收完全了。 我就这样被面试官判了死刑!!!说我完全停留在表面,没有深入(当时真的很受打击,一直自认为技术还不错!)。我当时真的很想找各种借口: 之前没有用到HTTP的keepalive模式,所以没有深入 好久没有用HTTP协议,细节忘了 实习的东西跟HTTP协议没有关系,用得少了就忘了 。。。。。。 觉得各种解释都是那么苍白无力!我再次感叹书到用时方恨少,也感叹一个人的时间是多么的有限

马哥教育Linux网络班结业考试(架构师)-简答题题目(附答案)

好久不见. 提交于 2020-12-01 07:01:07
1、叙述 centos7 启动图形界面的开机启动流程? 答:新版本的CentOS7里,已经做了调整.具体/etc/inittab 文件的第7行已经做出了说明: 系统已经使用'targets' 取代了运行级别的概念. 系统有两种默认的'targets': 多用户.target 对应之前版本的3 运行级别; 而图形.target 对应之前的5运行级别. 方法如下: (1)# systemctl get-default 查看当前运行模式 # systemctl set-default graphical.target(设置图形界面模式) # reboot(重启系统) 如果转回开机启动字符界面模式 # systemctl set-default multi-user.target(字符界面模式) # reboot(重启系统) 或者: # ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target # reboot(重启系统) CENTOS 7 开机启动图形界面的流程如下: (1)UEFI或BIOS初始化,开始post加电自检 (2)加载MBR到内存 (3)GRUB引导 (4)加载内核和inintamfs模块 (5)内核开始初始化,使用systemd来代替centos6以前的init程序 (6

Linux服务器拒绝NMAP SYN恶意扫描

自闭症网瘾萝莉.ら 提交于 2020-11-30 12:07:22
什么是SYN扫描 SYN扫描就是黑客通过建立不完全连接来判断通信端口状态的一种手法。 SYN扫描也被称为半开放扫描,在SYN扫描中,恶意的客户端通过向服务器每个端口发送一个SYN数据包,伪装发起三次握手。如果服务器特定的端口返回了SYN/ACK 同步应答数据,就表示该端口处于开放状态。 当客户端发送RST数据包时,服务器以为存在了通信错误,以为客户端决定不建立链接。开放端口因而保持开放,容易收到攻击。如果服务器从特定端口返回一个RST数据包,这表示端口是关闭的。不能攻击。 客户端发送大量的SYN数据包,能够消耗服务器的资源,服务器会被恶意客户端所淹没。不能或只能和很少合法客户端建立通信。 如何拒绝恶意扫描 Linux 的 /etc/sysctl.conf 文件用于控制内核参数,我要做的就是修改内核参数,配置如下 [root@localhost ~]# vim /etc/sysctl.conf //编辑配置文件 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_max_orphans = 3276800 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_fin_timeout = 30 net.ipv4.icmp_echo_ignore_broadcasts = 1 net.ipv4.icmp_ignore_bogus

【Linux学习笔记21】Apache(web服务器部署)

梦想与她 提交于 2020-11-28 13:55:59
文章目录 1. Apache的作用(httpd) 2. Apache安装并开启httpd 3. Apache基本信息 4. Apache基本配置 4.1. 修改Apache端口号 4.2. 修改默认发布目录 4.3. 修改默认发布文件 5. Apache访问控制 5.1. 基于客户端ip的访问控制 5.2. 基于用户认证的访问控制 6. Apache的虚拟主机 7. Apache的语言支持 7.1. html 7.2. php 7.3. perl(CGI) 7.4. python(WSGI) 8. Apache的加密访问https 8.1. 安装加密插件 8.2. 生成证书 8.3. 编辑ssl.conf配置文件 8.4. 修改配置文件 9. Squid+Apache 9.1 squid正向代理【代购式】 9.1.1 设定联网主机 9.1.2 设定无网主机 9.2. squid反向代理(加速)【分店式】 9.2.1 设定有squid服务,但没有httpd服务的主机 9.2.2 设定需要从node1获取数据的主机 在访问网页的主机配置解析文件 /etc/hosts #内容 ip地址 访问地址 1. Apache的作用(httpd) Apache HTTP Server(简称Apache)是 Apache 软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行

Linux运维精华面试题

夙愿已清 提交于 2020-11-27 02:25:57
1、什么是运维?什么是游戏运维? 1)运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常, 在他运转的过程中,对他进行维护,他集合了网络、系统、数据库、开发、安全、监控于一身的技术 运维又包括很多种,有DBA运维、网站运维、虚拟化运维、监控运维、游戏运维等等 2)游戏运维又有分工,分为开发运维、应用运维(业务运维)和系统运维 开发运维:是给应用运维开发运维工具和运维平台的 应用运维:是给业务上线、维护和做故障排除的,用开发运维开发出来的工具给业务上线、维护、做故障排查 系统运维:是给应用运维提供业务上的基础设施,比如:系统、网络、监控、硬件等等 总结:开发运维和系统运维给应用运维提供了“工具”和“基础设施”上的支撑 开发运维、应用运维和系统运维他们的工作是环环相扣的 2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的? 游戏运营要做的一个事情除了协调工作以外 还需要与各平台沟通,做好开服的时间、开服数、用户导量、活动等计划 3、现在给你三百台服务器,你怎么对他们进行管理? 管理3百台服务器的方式: 1)设定跳板机,使用统一账号登录,便于安全与登录的考量。 2)使用salt、ansiable、puppet进行系统的统一调度与配置的统一管理。 3)建立简单的服务器的系统、配置、应用的cmdb信息管理。便于查阅每台服务器上的各种信息记录

分享Linux下的sudo及其配置文件/etc/sudoers详细配置

两盒软妹~` 提交于 2020-11-16 11:36:12
这篇文章主要介绍了详解 Linux 下的sudo及其配置文件/etc/sudoers的详细配置的相关资料,需要的朋友可以参考下。 1.sudo介绍 sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root 命令 ,如halt,reboot,su等等。这样不仅减少了root用户的登陆 和管理时间,同样也提高了安全性。Sudo不是对 shell 的一个代替,它是面向每个 命令 的。 它的特性主要有这样几点: sudo能够限制用户只在某台主机上运行某些命令。 sudo提供了丰富的日志,详细地记录了每个用户干了什么。它能够将日志传到中心主机或者日志服务器。 sudo使用时间戳文件来执行类似的“检票”系统。当用户调用sudo并且输入它的密码时,用户获得了一张存活期为5分钟的票(这个值可以在编译的时候改变)。 sudo的配置文件是sudoers文件,它允许系统管理员集中的管理用户的使用权限和使用的主机。它所存放的位置默认是在/etc/sudoers,属性必须为0411。 2.配置文件/etc/sudoers 它的主要配置文件是sudoers,linux下通常在/etc目录下,如果是solaris,缺省不装sudo的,编译安装后通常在安装目录的 etc目录下,不过不管sudoers文件在哪儿,sudo都提供了一个编辑该文件的命令

一分钟了解互联网动静分离架构

|▌冷眼眸甩不掉的悲伤 提交于 2020-11-13 19:26:24
一、静态页面 静态页面,是指互联网架构中,几乎不变的页面(或者变化频率很低),例如: 首页等html页面 js/css等样式文件 jpg/apk等资源文件 静态页面,有与之匹配的技术架构来加速,例如: CDN nginx squid/varnish 二、动态页面 动态页面,是指互联网架构中,不同用户不同场景访问,都不一样的页面,例如: 百度搜索结果页 淘宝商品列表页 速运个人订单中心页 这些页面,不同用户,不同场景访问,大都会动态生成不同的页面。 动态页面,有与之匹配的技术架构,例如: 分层架构 服务化架构 数据库,缓存架构 三、互联网动静分离架构 动静分离是指,静态页面与动态页面分开不同系统访问的架构设计方法。 一般来说: 静态页面访问路径短,访问速度快,几毫秒 动态页面访问路径长,访问速度相对较慢(数据库的访问,网络传输,业务逻辑计算),几十毫秒甚至几百毫秒,对架构扩展性的要求更高 静态页面与动态页面以不同域名区分 四、页面静态化 既然静态页面访问快,动态页面生成慢,有没有可能,将原本需要动态生成的站点提前生成好,使用静态页面加速技术来访问呢? 这就是互联网架构中的“页面静态化”优化技术。 举例,如下图,58同城的帖子详情页,原本是需要动态生成的: 浏览器发起http请求,访问/detail/12348888x.shtml 详情页 web-server层从RESTful接口中

服务器centos 内网代理上网- tinyproxy

痴心易碎 提交于 2020-10-30 03:51:21
1. 安装代理软件 tinyproxy TinyProxy 和 Squid 都是比较优秀的代理软件 TinyProxy比较小众,虽然没有Squid的功能丰富,但是小巧简单,也能满足一般的用户需求。 Squid 是一款优秀的代理软件,有很丰富的ACL管理功能,虽然squid很强大,但配置较繁琐 有公网IP的服务器上 CentOS 安装 TinyProxy yum install -y tinyproxy 启动、停止、重启 # 启动 service tinyproxy start # 停止 service tinyproxy stop # 重启 service tinyproxy restart 相关配置 默认配置文件路径 /etc/tinyproxy/tinyproxy.conf 允许所有人使用代理,注释 Allow 127.0.0.1 # Allow 127.0.0.1 修改监听端口号, 默认 8888 Port 8888 代理请求过滤,示例:仅允许代理请求 anoyi.com 的内容,配置如下: # 指定过滤内容的文件位置 Filter "/etc/tinyproxy/filter" # 使用 URL 过滤而不是 domains FilterURLs On # 允许代理过滤文件里的地址,若不允许,此处设置为 No FilterDefaultDeny Yes 然后在 /etc

「查缺补漏」巩固你的Nginx知识体系

萝らか妹 提交于 2020-10-27 17:46:25
Nginx 篇 基本介绍 Nginx 是一款轻量级的 Web 服务器 / 反向代理服务器 / 电子邮件(IMAP/POP3)代理服务器,主要的优点是: 支持高并发连接,尤其是静态界面,官方测试 Nginx 能够支撑 5 万并发连接 内存占用极低 配置简单,使用灵活,可以基于自身需要增强其功能,同时支持自定义模块的开发 使用灵活:可以根据需要,配置不同的负载均衡模式,URL 地址重写等功能 稳定性高,在进行反向代理时,宕机的概率很低 支持热部署,应用启动重载非常迅速 基础使用 Windows 版 安装 文件下载地址:http://nginx.org/en/docs/windows.html 如果下载很慢可以用该链接: 百度云盘链接: https://pan.baidu.com/s/1r3mSEGhmz4HA46Cw9w6QTQ 提取码: d8bi 解压即可 基本命令 # 启动 # 建议使用第一种,第二种会使窗口一直处于执行中,不能进行其他命令操作 C:\server\nginx-1.19.2> start nginx C:\server\nginx-1.19.2> nginx.exe # 停止 # stop是快速停止nginx,可能并不保存相关信息;quit是完整有序的停止nginx,并保存相关信息 C:\server\nginx-1.19.2> nginx.exe -s stop

缓存加速--Squid代理服务器应用(ACL 访问控制、 Squid 日志分析、反向代理)

送分小仙女□ 提交于 2020-10-17 03:06:33
文章目录 一、 ACL 访问控制 1.1 定义访问控制列表 1.2 设置访问权限 1.3 ACL 访问控制实验(基于传统模式) 1. 手工编译安装squid 2. 修改配置文件 3. 传统代理配置 4. 在web服务器上安装httpd,并启动服务 5. 在win10虚拟机上测试,传统代理是否配置成功 6. 进行ACL列表访问控制 二、Squid 日志分析 2.1 安装部署SARG 三、 squid反向代理 3.1 工作机制 3.2 搭建squid反向代理 一、 ACL 访问控制 Squid 提供了强大的代理控制机制,通过合理设置 ACL(Access Control List,访问控制列表)并进行限制,可以针对源地址、目标地址、访问的 URL 路径、访问的时间等各种条件进行过滤。 在配置文件 squid.conf 中,ACL 访问控制通过以下两个步骤来实现: 使用 acl 配置项定义需要控制的条件; 通过 http_access 配置项对已定义的列表做“允许”或“拒绝”访问的控制。 1.1 定义访问控制列表 每行 acl 配置可以定义一条访问控制列表 acl格式 acl 列表名称 列表类型 列表内容 … 列表名称可以自行指定,用来识别控制条件。 列表类型必须使用 Squid 预定义的值,对应不同类别的控制条件;常用的包括源地址、目标地址、访问时间、 访问端口等。