Telegram bot on OpenSSL

﹥>﹥吖頭↗ 提交于 2019-12-22 12:22:10

问题


I have problem with https://core.telegram.org/bots.

  1. Get token from BotFather.
  2. Create self-signed ssl sertificate (https://core.telegram.org/bots/self-signed):

    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"

  3. Run server:

    openssl s_server -accept 88 -key YOURPRIVATE.key -cert YOURPUBLIC.pem

  4. Send hook:

    curl -F "url=https://URL:88/bot" -F "certificate=@YOURPUBLIC.pem" https://api.telegram.org/botTOKEN/setWebhook

Answer:

{"ok":true,"result":true,"description":"Webhook was set"}
  1. Telegram connect to my server. Error:

    139690177754952:error:14094416:SSL routines:SSL3_READ_BYTES:sslv3 alert certificate unknown:s3_pkt.c:1257:SSL alert number 46

  2. Test:

    openssl s_client -connect URL:88

OK. No problem.

How to:

  1. Run openssl s_client ... as Telegram. Use -cert YOURPUBLIC.pem not work.
  2. Fix this problems and recive data.

回答1:


Need set real server name to sertificate CN, equal URL(4).



来源:https://stackoverflow.com/questions/33256898/telegram-bot-on-openssl

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!