使用透明代理抓包

背景

通常我们使用fiddler等工具抓包时,只需要在客户端设置好代理的端口和信任证书,就可以抓取https请求的内容。但是少数app可能会内置客户端证书,这种情况我们无能为力。不过还有一种情况,是app在代码层面判断机器是否有代理,进而让请求不走代理。此时我们可以通过透明代理转发客户端的请求到fillder,完成抓包。

阅读全文

使用Cloudflare转发任意内网端口

  1. 在Cloudflare Zero Trust -> Network -> Tunnels里创建一个tunnels

  2. 在内网的机器上下载并使用cloudflared转发

    1
    docker run --name=cloudflared -d cloudflare/cloudflared:latest tunnel --no-autoupdate run --token {your token} --name cloudflared

阅读全文

Git使用另外的密钥

Git Clone

在git clone时使用非默认密钥

git clone git@github.com:<your repo>.git --config core.sshCommand="ssh -i ~/.ssh/<your another key>"

阅读全文

MySQL里创建表和用户

1
2
3
4
5
create database TABLE_NAME default character set utf8mb4 collate utf8mb4_general_ci;

CREATE USER 'USER_NAME'@'%' IDENTIFIED BY 'USER_PASSWORD';

GRANT ALL ON TABLE_NAME.* TO 'USER_NAME'@'%';

阅读全文

spring boot中request的getParameterMap坑

简介

使用spring boot 的时候,通常会拦截请求中的参数在使用Filter拦截Request的时候,除了要注意body是一个stream,读取了一次要重新设置一个stream以外,鲜有人提到拦截前后getParameterMap方法的行为会产生变化

阅读全文

Ubuntu里安装MySQL数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
sudo apt-get install mysql-server mysql-client

cat /etc/mysql/debian.cnf 找到初始帐号密码

mysql -u username -p password 用初始帐号密码登陆mysql

1. use mysql;
2. update mysql.user set authentication_string=password('yourpassword') where user='root' and Host ='localhost';
3. update user set plugin="mysql_native_password";
4. flush privileges;
5. quit;

sudo service mysql restart

阅读全文

Ubuntu里安装Java JDK 11

1
2
3
4
5
6
7
8
9
sudo mkdir -p /var/cache/oracle-jdk11-installer-local/

sudo cp jdk-11.0.5_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

sudo add-apt-repository ppa:linuxuprising/java

sudo apt-get update

sudo apt-get install oracle-java11-installer-local

阅读全文

限流

简介

限流是保障服务稳定的一个方式(此篇文章以摘要参考文档为主)

方案

    阅读全文

    断路器

    简介

    断路器是保障服务稳定的一个方式

    介绍

    断路器又称熔断器,作用是暂时切断服务的调用。主要场景是当上游服务发现下游服务不可用时,为避免血崩效应,主动切断对下游服务的调用,当服务恢复后再重新调用。

    阅读全文

    分布式锁

    简介

    分布式锁是分布式系统中必要且重要的控制资源并发访问的手段

    要求

      阅读全文