linux测试lsquic

编译

安装依赖

#不安装zlib make会报错

#不安装 libevent不会报错,但不会生成所需可执行文件

sudo apt-get install cmake zlib1g-dev libevent-dev

boringssl

git clone https://github.com/google/boringssl

cd boringssl

git checkout 0.20250807.0

cmake . && make

export BORINGSSL=$PWD

lsquic

git clone https://github.com/litespeedtech/lsquic

或者git clone https://gitee.com/mirrors/boringssl.git

cd lsquic

git submodule update --init

cmake -DLIBSSL_DIR=$BORINGSSL .

make

#make执行完后确认bin下是否生成http_server和http_client

#测试功能是否正常

make test

证书和dns

签发证书

需要pem格式的证书,pem格式的证书以 -----BEGIN CERTIFICATE----- 开头

可以自己签发,过程略

检查证书有效性:

openssl x509 -in /home/user1/certs/example.pem -text -noout

检查私钥有效性:

openssl rsa -in /home/user1/certs/priv.key -check

确保证书和私钥匹配:

openssl x509 -noout -modulus -in /home/user1/certs/example.pem | openssl md5

openssl rsa -noout -modulus -in /home/user1/certs/priv.key | openssl md5

两者md5值相同

客户端ca证书

把ca证书拷贝到客户端,加载到系统中

客户端hosts配置

把example.com和server的IP映射关系写入/etc/hosts文件

然后重启dns服务

服务端hosts配置

把example.com和0.0.0.0映射关系写入/etc/hosts文件

然后重启dns服务

运行

server

example.com为证书签发的域名

cert.pem是服务端证书

priv.key是相应私钥

监听4443端口

-r指定服务端文件的根目录

-L debug 2打印详细信息

-W

-o base_plpmtu=8900 指定包大小

./http_server -c example.com,/home/user1/cert/cert.pem,/home/user1/cert/priv.key -s 0.0.0.0:4443 -r /home/user1/http3-server/ -L debug 2 -W -o base_plpmtu=8900

client

example.com为server的域名

获取server根目录下的文件index.html

-L debug 2打印详细信息

-T response.txt 将response信息写入指定文件

-K reponse内容不打印到界面上

./http_client -s example.com:4443 -p /index.html -L debug 2 -T response.txt -K

相关推荐
SkyWalking中文站3 小时前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维
tntxia20 小时前
linux curl命令详解_curl详解
linux
扛枪的书生1 天前
Linux 网络管理器用法速查
linux
SkyWalking中文站1 天前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
顺风尿一寸1 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
雪梨酱QAQ1 天前
Kubeneters HA Cluster部署
运维
江华森1 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森1 天前
Matplotlib 数据绘图基础入门
运维
XIAOHEZIcode1 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
江华森1 天前
NumPy 数值计算基础入门
运维