当我做
curl --insecure https://localhost/svn
从我的 Linux 机器上我可以看到它正在返回一些数据
但是,当我从同一网络上的另一台机器在这台机器上运行 curl 时,例如
curl --insecure https://<serverip>/svn
我收到错误curl: (7) couldn't connect to host
尽管我可以运行其他东西,例如curl http://<serverip>:8080/
或curl http://<serverip>:9090/
我可以使用 iptables 来使其正常工作吗?或者做其他的事情?
以下是我的 iptables 的样子:
# iptables -L -n --line-numbers
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:8080 /* Tomcat Server port */
6 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:9090 /* Tomcat Server port */
7 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
答案1
打开 https 的默认端口 443
iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT
注意 -I 很重要。如果有效,请使用
service iptables save
更新/etc/sysconfig/iptables
。
答案2
有时 selinux 可能会阻止 curl 请求。您应该检查 selinux 配置是否处于宽容模式或已禁用。