Gio*_*ino 5 ssl https nginx ssl-certificate telegram-bot
我正在使用Ruby语言服务器通过setwebhooks管理多个Telegram Bots
顺便说一句,我将把服务器作为开源在BOTServer上交付
问题
我很难从Telegram Bot API Server接收webhook更新.我已经设置了一个webhook令牌(电报回复"成功")但我没有收到有关成功配置的webhook的任何更新.
我认为问题可能出在自签名证书之谜上.查看旧的reddit问题和答案.
我有类似的问题,我认为重点在于发送HTTPs webhooks更新的Telegram Bot API服务器和接收webhooks的bot服务器之间的一些"误解"(我使用nginx作为代理/ https SSL证书处理程序).
似乎有人解决了使用证书"chain"配置nginx的问题; 我在证书技巧方面非常狡猾,所以我问:
题
可能有人可以发布信息,配置nginx(任何ssl web服务器!)的详细设置/傻瓜步骤,显示如何传递此处描述的.key和.pem文件:https://core.telegram.org /机器人/自签名,以建立证书"链"中的nginx配置配置,将"接受"的电报博特API服务器?
BTW,我的nginx配置现在:
upstream backend {
server 127.0.0.1:3000;
}
#
# HTTPS server
#
server {
listen 8443 ssl;
server_name myhost.com;
ssl on;
ssl_certificate /mypath/ssl/PUBLIC.pem;
ssl_certificate_key /mypath/ssl/PRIVATE.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
ssl_prefer_server_ciphers on;
location @backend {
proxy_pass http://backend;
}
location / {
try_files $uri @backend;
}
}
Run Code Online (Sandbox Code Playgroud)
其中PRIVATE.key + PUBLIC.pem文件是根据指南生成的文件:使用自签名证书:
openssl req -newkey rsa:2048 -sha256 -nodes -keyout PRIVATE.key -x509 -days 365 -out PUBLIC.pem -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=YOURDOMAIN.EXAMPLE"
Run Code Online (Sandbox Code Playgroud)
谢谢
乔治
我回答自己,分享这里找到的解决方案:https: //stackoverflow.com/a/33260827/1786393
关键不是提到的nginx配置,而是PEM文件:
openssl req -newkey rsa:2048 -sha256 -nodes -keyout YOURPRIVATE.key -x509 -days 365 -out YOURPUBLIC.pem -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=YOURDOMAIN.EXAMPLE"
Run Code Online (Sandbox Code Playgroud)
openssl的subj strig中的YOURDOMAIN.EXAMPLE必须是接收webhook的服务器的真实主机名.
| 归档时间: |
|
| 查看次数: |
5149 次 |
| 最近记录: |