AWS EC2连接GitHub Webhook失败 入站规则配置及服务启动异常问题
一、EC2入站规则问题澄清
AWS安全组的设计本身就不支持在同一条入站规则中同时配置IPv4(0.0.0.0/0)和IPv6(::/0)来源段,你当前配置两条独立的8080端口Custom TCP规则是完全符合要求的,这不会是GitHub Webhook无法连接的原因,不需要调整。
二、webhook服务启动失败解决
1. 修复配置文件笔误
你当前的webhook.service配置存在明显的文件名拼写错误:ExecStart行配置的目标文件为/home/ubuntu/NodeWebHooks/webhook.sj,但你实际创建的脚本文件为webhook.js,后缀名.sj为错误写法。
执行sudo nano /etc/systemd/system/webhook.service,将该行修改为:
ExecStart=/usr/bin/nodejs /home/ubuntu/NodeWebHooks/webhook.js
2. 重载配置并重启服务
修改完服务配置后需要先重载systemd的配置缓存,再重启服务,依次执行以下命令:
sudo systemctl daemon-reloadsudo systemctl restart webhook
3. 后续排查方案
如果重启后服务仍报错,可执行journalctl -u webhook -f查看服务的详细运行日志,排查JS脚本自身的语法错误、依赖缺失、8080端口被占用等问题。
三、GitHub Webhook连接验证
服务正常启动后,先在EC2本地执行curl http://localhost:8080验证8080端口监听正常,再到GitHub Webhook配置页触发一次测试推送,确认EC2可以正常收到请求即可。
内容的提问来源于stack exchange,提问作者ThisIsShayan
相关产品推荐
相关产品推荐

