作者文章归档:seraphln

MySQL忘记ROOT密码怎么办


背景

最近有一个网站使用了MySQL作为数据库,但是由于是很久之前部署的数据库,结果忘记了admin的密码。 经过一番折腾,发现可以通过修改mysql的配置来绕过权限验证,之后再修改mysql root用户的密码,所以记录一下,方便后续查阅。 具体流程如下:

流程

1. 修改my.conf

在[mysqld]的section中加上一行配置: skip-grant-tables 例如:

[mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    skip-name-resolve
    skip...

Read more

2021年的目标们


鉴于过去的2020年并没有太多的收获,所以决定在2020年底开始制定一些目标,希望在2021年年底的时候回顾的时候,可以发现自己的成长。

与此同时,我一直认为人生的乐趣就在于不断的发现自己,完善自己。所以要趁着年轻,多去做一些想做的事情,尝试一些有趣的活法。

吃喝玩乐

“民以食为天”,多尝试一些没吃过的餐厅是一个有趣的探索的过程。试着从自己熟悉的区域走出去,去探索陌生的环境,也从另一个角度去认识熟悉这个生活了这么多年的环境。

德顺斋

量化交易

量化交易是另一个感兴趣的topic,也正好借此机会好好的了解一下如何去做理财,如何去做金融产品的价值评估。

健身 & 练字

健身和练字都属...

Read more

K8S-CheatSheet


kubernetes 常用操作

查看帮助和集群基本信息

kubectl --help                                 ## 查看帮助
kubectl --version                            ## 查看k8s版本信息
kubectl cluster-info                       ## 查看k8s集群信息,master和服务地址
kubectl cluster-info dump            ## 将集群状态信息输出到stdout
kubectl cluster-info dump --out...

Read more

HTTP学习笔记08 - 如何申请HTTPS证书


根据签发证书的CA的不同,证书可以分为2种:

  1. 由自己创建的CA签发的证书,通常叫做自签名证书;
  2. 由PKI的CA签发的证书,具有普遍可信的证书。

自签名证书

之前12306的证书就是一个自签名证书,所以浏览器第一次打开12306的官网时,会被提示不安全。但是现在已经改为由PKI签发的证书,可以正确通过浏览器的证书检查了。 但是,这并不意味着自签名证书就没有用。比如在内网中,为了测试或者部署内部服务,为了成本考虑,可以签发一些自签名证书,由于时内网环境,我们已经100%确认对方的身份,所以就不需要PKI来帮助我们校验证书是否正确。

使用openssl创建自签名证书:

制作CA证书:

1....

Read more

HTTP学习笔记07 - HTTPS证书介绍


什么是TLS/SSL证书

SSL证书跟驾照有点类似。在驾照里,关键信息有几点:

  1. 我是谁
  2. 驾照是谁颁发的
  3. 驾照是否过期

在SSL证书里也是类似的:

  1. 我是谁(域名、实体是谁)
  2. 证书是由谁签发的
  3. 证书是否过期

所以,一个SSL证书可以这么定义:由无条件信任的机构颁发给实际使用者来提供身份认证的一段数据编码。

证书的编码

X.690定义了ASN.1用到的几种编码格式:

  1. Basic Encoding Rules(BER)
  2. Canonical Encoding Rules(CER)
  3. Distinguished Encoding Rules(DER)

其中: BER是最基本的编码格式。CE...

Read more

HTTP学习笔记06 - 安全的HTTP的好帮手


SSL协议背景

在互联网设计之初,设计者并没有太过于考虑安全方面的问题,因此,在网络上传输的数据都是明文的,也就意味着,任何一个恶意的攻击者都可以得到我们提交的任何数据,这会带来3类风险:

  1. 数据窃听(eavesdropping): 第三方可以获知信息内容
  2. 数据篡改(tampering): 第三方可以修改通信内容
  3. 身份冒充(pretending): 第三方可以冒充他人身份参与通信

SSL&TLS协议的出现正是为了解决这3类问题,希望可以达到:

  1. 所有信息都是加密传输,第三方无法窃听
  2. 具有校验机制,一旦被篡改,通信双方会立刻发现
  3. 具备身份证书,防止身份被冒充 从而实现在“不安全”...

Read more

HTTP学习笔记05 - 安全的HTTP


为什么HTTP不安全

HTTP作为互联网上应用最为广泛的一种网络协议,目前最常见的版本有HTTP1.0, HTTP1.1和HTTP2。其中HTTP1.0和1.1版本传输为Text,也就是明文传输。而HTTP2传输的是二进制数据。但是如果不对数据进行加密处理的话,不管是二进制还是明文,都会存在很多安全风险,比如:数据篡改,身份伪造,中间人窃听等。

HTTPS (Secure Hypertext Transfer Protocol)

即安全超文本传输协议,它是在基于TLS/SSL的HTTP协议,可以理解为HTTP的安全版。HTTPS的主要作用是:

  1. 对数据进行加密,并建立一个安全信道来保证传...

Read more

HTTP学习笔记04 - 未来已来的HTTP2


HTTP/1当前的困境

当今的web,已经不再是当年的纯粹的一个展示性页面,而是基于浏览器的应用(browser-server application)。同时越来越多的页面元素导致页面需要加载的资源也日益增多。alexa排名前100的web站点上,平均每个页面需要加载的资源最少也会有大几十个。同时出于性能考虑,在浏览器里每个域名同时可以打开的连接数最多不超过8个。这就导致了每个连接最少也要处理10个左右的请求才能保证整个页面加载完毕。这势必会消耗大量的时间!

对于这些问题,我们通常会从以下几个方面进行优化:

  1. 异步接口合并(Batch Ajax Request)
  2. 图片合并,雪碧图(CSS...

Read more

HTTP学习笔记03 - http method


概述

HTTP 定义了一组请求方法, 以表明要对给定资源执行的操作。通过请求方法向服务器表明针对给定资源要执行的期望动作。 虽然他们也可以是名词, 但这些请求方法一般被称为HTTP动词.。每一个请求方法都实现了不同的语义。

HTTP METHOD是根据HTTP的使用场景不断增加完善的: HTTP/0.9中只有GET方法。 HTTP/1.0时增加了POST和HEAD。 HTTP/1.1增加了OPTIONS,PUT,PATCH,DELETE,TRACE和CONNECT这5种方法。

GET

向指定的资源发出“显示”请求。使用GET方法应该只用在读取数据,而不应当被用于产生“副作用”的操作中,例...

Read more

HTTP学习笔记02-常见状态码


所有HTTP响应的第一行都是状态行,依次是当前HTTP版本号,3位数字组成的状态代码,以及描述状态的短语,彼此由空格分隔。

状态代码的第一个数字代表当前响应的类型:

1xx消息:请求已被服务器接收,继续处理

2xx成功:请求已成功被服务器接收、理解、并接受

3xx重定向:需要后续操作才能完成这一请求

4xx请求错误:请求含有词法错误或者无法被执行

5xx服务器错误:服务器在处理某个正确请求时发生错误

虽然 RFC 2616 中已经推荐了描述状态的短语,例如"200 OK","404 Not Found",但是WEB开发者仍然能够自行决定采用何种短语,用以显示本地化的状态描述或者自定义信息...

Read more