host

SSO单点登录

走远了吗. 提交于 2020-04-06 07:35:15
前言:今天刚学完B站up主“楠哥教你学Java”前些日子的一个直播教学,通过录播跟着把代码敲了一遍,整理了一下。前半部分取自楠哥的笔记,后部分代码和思维导图自己归纳总结,代码细节今天是撸不完了,明后天在多研究几遍一些细节 单点登录 什么是单点登录:一处登录,处处登录,一处登出,处处登出。 用户只需要登录一次就可以访问所有相互信任的应用系统。 SSO Single Sign On 单点登录 企业业务整合解决方案 一票通 SSO 原理 当用户第一次访问淘宝的时候,因为还没有登录,会被引导到认证中心进行登录。 根据用户提供的登录信息,认证系统进行身份验证,如果通过,则登录成功,并返回给用户一个认证的凭据(token)。 当用户访问天猫时,就会将这个 token 带上,作为自己认证的凭据。 应用系统接收到请求后会把 token 送到认证中心进行校验,检查 token 的合法性。 如果通过校验,用户就可以在不用再次登录的情况下访问天猫了。 SSO 实现技术 Cookie 单点登录 使用 Cookie 作为媒介,存放用户凭证。 用户登录淘宝之后,返回一个 token,存入客户端的 Cookie 中,当用户访问天猫的时候,会自动带上 Cookie,这样 token 又传给了认证中心,进行校验。 分布式 Session 1、用户第一次登录时,将会话信息,写入分布式 Session。 2

MySQL设置允许用户远程登录

非 Y 不嫁゛ 提交于 2020-04-06 05:12:01
项目中需要连接虚拟机上面的MySQL数据库,但是总是出错,怀疑本机是否有连接远程数据库的权限。 执行命令: mysql > use mysql ; mysql > select host , user from user ; 查看结果是不是root用户仅允许本地(localhost)登录,下面这个截图就是这种情况: mysql-root-state 是的话,就要修改它的host为 % ,表示任意IP地址都可以登录。 mysql > update user set host = '%' where user = 'root' ; 执行完后可能提示error。再 mysql> select host,user from user; 查看下吧。 root对应的host成了 % ,表示可以任意IP地址登录了。 mysql-change-root-state mysql > flush privileges ; 把缓存flush掉,在使用update语句修改用户记录后,需要FLUSH语句告诉服务器重载授权表。 MySQL默认在本地localhost登录root用户,然而远程连接却会报错(root@X.X.X.X acess denied) 这里就需要进行配置允许远程连接 方式一: 进入mysql: mysql -uroot -p 运行mysql: use mysql; 开启远程访问权限:

Tomcat启动过程原理详解

*爱你&永不变心* 提交于 2020-04-06 00:51:00
基于 Java 的Web 应用程序是 servlet、JSP 页面、静态页面、类和其他资源的集合,它们可以用标准方式打包,并运行在来自多个供应商的多个容器。Web 应用程序存在于结构化层次结构的目录中,该层次结构是由 Java Servlet 规范定义的。Web 应用程序的根目录包含直接存储或存储在子文件夹中的所有公共资源,比如图像、HTML 页面等。构成:Web应用由Web组件(一组Java类库)、html文件,静态资源文件(如图像)、帮助类和库组成。 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器

Tomcat启动过程原理详解

允我心安 提交于 2020-04-06 00:44:55
基于 Java 的Web 应用程序是 servlet、JSP 页面、静态页面、类和其他资源的集合,它们可以用标准方式打包,并运行在来自多个供应商的多个容器。Web 应用程序存在于结构化层次结构的目录中,该层次结构是由 Java Servlet 规范定义的。Web 应用程序的根目录包含直接存储或存储在子文件夹中的所有公共资源,比如图像、HTML 页面等。构成:Web应用由Web组件(一组Java类库)、html文件,静态资源文件(如图像)、帮助类和库组成。 1 – Tomcat Server的组成部分 1.1 – Server A Server element represents the entire Catalina servlet container. (Singleton) 1.2 – Service A Service element represents the combination of one or more Connector components that share a single Engine Service是这样一个集合:它由一个或者多个Connector组成,以及一个Engine,负责处理所有Connector所获得的客户请求 1.3 – Connector 一个Connector将在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处理

ConfigParser 读写配置文件

為{幸葍}努か 提交于 2020-04-06 00:36:05
很多时候需要从配置文件中读取参数,在程序中使用,这时候就需要用到ConfigParser模块(在Python3以上的版本中为configparser模块) 首先新建一个配置文件样例:myapp.conf # database source [db] host = 127.0.0.1 port = 3306 user = root pass = root # ssh [ssh] host = 192.168.1.101 user = huey pass = huey 在Python代码中: #实例化 ConfigParser 并加载配置文件 cp = ConfigParser.SafeConfigParser() cp.read('myapp.conf') #获取 section 列表、option 键列表和 option 键值元组列表 print 'all sections:', cp.sections() # sections: ['db', 'ssh'] print 'options of [db]:', cp.options('db') # options of [db]: ['host', 'port', 'user', 'pass'] print 'items of [ssh]:', cp.items('ssh') # items of [ssh]: [('host',

玩转 Nginx 之:使用 Lua 扩展 Nginx 功能

北慕城南 提交于 2020-04-04 21:39:28
https://my.oschina.net/leejun2005/blog/494248 https://github.com/iresty/nginx-lua-module-zh-wiki 1、Nginx 简介 Nginx 作为一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。其流行度越来越高,应用也越来越广泛,常见的应用有:网页服务器、反向代理服务器以及电子邮件(IMAP/POP3)代理服务器,高并发大流量站点常用来做接入层的负载均衡,还有非常常见的用法是作为日志采集服务器等。 Nginx 整体采用模块化设计,有丰富的模块库和第三方模块库,配置灵活。其中模块化设计是nginx的一大卖点,甚至http服务器核心功能也是一个模块。要注意的是:nginx的模块是静态的,添加和删除模块都要对nginx进行重新编译,这一点与Apache的动态模块完全不同。不过后来淘宝做了二次开发开源的 tengine 是支持 官方所有的 HTTP 模块动态加载而不必重新编译 Nginx,除非是第三方模块才需要重新编译。因此,在生产环境中,推荐用淘宝开源的 tengine,本文也以 tengine 作为示例。 虽然 Nginx 有如此强大的性能以及众多的三方模块支持,但每次重新编译以及寻找三方模块对生产环境来说还是不可接受的,幸运的是,Nginx

玩转 Nginx 之:使用 Lua 扩展 Nginx 功能

可紊 提交于 2020-04-04 21:35:35
https://my.oschina.net/leejun2005/blog/494248 https://github.com/iresty/nginx-lua-module-zh-wiki 1、Nginx 简介 Nginx 作为一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。其流行度越来越高,应用也越来越广泛,常见的应用有:网页服务器、反向代理服务器以及电子邮件(IMAP/POP3)代理服务器,高并发大流量站点常用来做接入层的负载均衡,还有非常常见的用法是作为日志采集服务器等。 Nginx 整体采用模块化设计,有丰富的模块库和第三方模块库,配置灵活。其中模块化设计是nginx的一大卖点,甚至http服务器核心功能也是一个模块。要注意的是:nginx的模块是静态的,添加和删除模块都要对nginx进行重新编译,这一点与Apache的动态模块完全不同。不过后来淘宝做了二次开发开源的 tengine 是支持 官方所有的 HTTP 模块动态加载而不必重新编译 Nginx,除非是第三方模块才需要重新编译。因此,在生产环境中,推荐用淘宝开源的 tengine,本文也以 tengine 作为示例。 虽然 Nginx 有如此强大的性能以及众多的三方模块支持,但每次重新编译以及寻找三方模块对生产环境来说还是不可接受的,幸运的是,Nginx

ssh登陆提示 REMOTE HOST IDENTIFICATION HAS CHANGED

大憨熊 提交于 2020-04-04 09:19:39
找到known_hosts文件把里面相应的主机那行删除即可 MAC/Linux vi ~/.ssh/known_hosts Windows C:\Users\用户登陆名\.ssh\known_hosts 报错信息: ➜ ssh root@mongo.top @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the ECDSA key sent by the remote host is SHA256

wireshark 过滤规则

你说的曾经没有我的故事 提交于 2020-04-03 08:28:20
转载 http://openmaniak.com/cn/wireshark_use.php 捕捉过滤器 :用于决定将什么样的信息记录在捕捉结果中。需要在开始捕捉前设置。 显示过滤器 :在捕捉结果中进行详细查找。他们可以在得到捕捉结果后随意修改。 两种过滤器使用的语法是完全不同的。 1. 捕捉过滤器 捕捉过滤器的语法与其它使用Lipcap(Linux)或者Winpcap(Windows)库开发的软件一样,比如著名的 TCPdump 。捕捉过滤器必须在开始捕捉前设置完毕,这一点跟显示过滤器是不同的。 语法: Protocol Direction Host(s) Value Logical Operations Other expression 例子: tcp dst port 80 and tcp dst port 90 Protocol(协议) 可能的值: ether, fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp and udp. 如果没有特别指明是什么协议,则默认使用所有支持的协议。 Direction(方向) : 可能的值: src, dst, src and dst, src or dst 如果没有特别指明来源或目的地,则默认使用 "src or dst" 作为关键字。 例如,"host 10.2.2.2"与

31.1.http基础知识简介

瘦欲@ 提交于 2020-04-02 12:11:37
TCP/IP协议 跨网络的主机间通讯 在建立通信连接的每一端,进程间的传输要有两个标志: IP地址和端口号,合称为套接字地址 socket address 客户机套接字地址定义了一个唯一的客户进程 服务器套接字地址定义了一个唯一的服务器进程 SOCKET套接字 Socket:套接字,进程间通信IPC的一种实现,允许位于不同主机(或同一主机)上不同进程之间进行通信和数据交换,SocketAPI出现于1983年,4.2 BSD实现 Socket API:封装了内核中所提供的socket通信相关的系统调用 Socket Domain:根据其所使用的地址 AF_INET:Address Family,IPv4 AF_INET6:IPv6 AF_UNIX:同一主机上不同进程之间通信时使用 Socket Type:根据使用的传输层协议 SOCK_STREAM:流,tcp套接字,可靠地传递、面向连接 SOCK_DGRAM:数据报,udp套接字,不可靠地传递、无连接 SOCK_RAW: 裸套接字,无须tcp或udp,APP直接通过IP包通信 客户/服务器程序的套接字函数 套接字相关的系统调用: socket(): 创建一个套接字 bind(): 绑定IP和端口 listen(): 监听 accept(): 接收请求 connect(): 请求连接建立 write(): 发送 read(): 接收