Mock Server
https://www.ywbj.cc/?p=965
init
必要パッケージインストール
sudo dnf install python3 augeas-libs cronie
下载获取 Ngrok 源码
git clone https://github.com/tutumcloud/ngrok.git ngrok
venv作成・pipからcertbotをインストール
sudo python3 -m venv /opt/certbot/
sudo /opt/certbot/bin/pip install --upgrade pip
sudo /opt/certbot/bin/pip install certbot certbot-nginx
sudo ln -s /opt/certbot/bin/certbot /usr/bin/certbot
renew mock certbot(?not work)
sudo certbot certonly --force-renew --manual --preferred-challenges=dns -d mock.run5.jp -d tl.mock.run5.jp
setup certbot
sudo certbot certonly --standalone -d mock.run5.jp -d tl.mock.run5.jp --preferred-challenges dns
config cert
sudo cp /etc/letsencrypt/live/mock.run5.jp/fullchain.pem ngrok/assets/server/tls/snakeoil.crt
sudo cp /etc/letsencrypt/live/mock.run5.jp/privkey.pem ngrok/assets/server/tls/snakeoil.key
sudo cp ngrok/assets/server/tls/snakeoil.crt ngrok/assets/client/tls/ngrokroot.crt
编译生成服务端和客户端
sudo rm -rf ngrok/bin/darwin_amd64/ ngrok/bin/go-bindata ngrok/bin/ngrokd
sudo GOOS=linux GOARCH=amd64 make release-server
sudo GOOS=darwin GOARCH=amd64 make release-client
start server
sudo ./bin/ngrokd -domain="mock.run5.jp" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443"
copy client
scp -r -i "mock.pem" ec2-user@ec2-54-95-221-150.ap-northeast-1.compute.amazonaws.com:/home/ec2-user/ngrok/bin/darwin_amd64/ ./
config macos client
touch ngrok.cfg
vim ngrok.cfg
server_addr: "mock.run5.jp:4443"
trust_host_root_cert: false
start macos client
./ngrok -subdomain tl -config=ngrok.cfg 80
renew certbot(mock2)
get mock2 cert
sudo certbot certonly --standalone -d mock2.run5.jp -d tl.mock2.run5.jp
sudo cp /etc/letsencrypt/live/mock2.run5.jp/fullchain.pem ngrok/assets/server/tls/snakeoil.crt
sudo cp /etc/letsencrypt/live/mock2.run5.jp/privkey.pem ngrok/assets/server/tls/snakeoil.key
sudo cp ngrok/assets/server/tls/snakeoil.crt ngrok/assets/client/tls/ngrokroot.crt
rebuild
sudo rm -rf ngrok/bin/darwin_amd64/ ngrok/bin/go-bindata ngrok/bin/ngrokd
sudo GOOS=linux GOARCH=amd64 make release-server
sudo GOOS=darwin GOARCH=amd64 make release-client
start server
sudo ./bin/ngrokd -domain="mock2.run5.jp" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443"
config & start client
touch ngrok.cfg
vim ngrok.cfg
server_addr: "mock2.run5.jp:4443"
trust_host_root_cert: false
./ngrok -subdomain tl -config=ngrok.cfg 80