curl如何识别请求的来源?

时间:2014-07-20 17:29:44

标签: php security curl

我打算通过curl将一些数据从服务器A发送到服务器B.我有点担心攻击者(服务器C)会伪装成服务器A的情况:

A->B : Hello, I am server A;
C->B : Hello, I am server A;

服务器B如何知道谁是服务器A或哪些数据来自服务器A?

我是PHP的新手。我真的很感激任何帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用$_SERVER['REMOTE_ADDR']获取客户端IP。

只需获取服务器A的IP地址,然后在服务器B上检查$_SERVER['REMOTE_ADDR']是否等于服务器A IP。

虽然服务器C与服务器A位于同一子网中,但它将具有相同的地址。

在这种情况下,您可以让A向服务器B发送密钥,B可以验证它。

例如:A ==== data='blabla' ==== key='654zd87zda32z1d68zad7' ===> B

在B方面,检查该密钥是否等于654zd87zda32z1d68zad7。您可以定期更改此密钥以提高安全性(和/或使用更复杂的密钥)。

在node.js上,它的预处理也很简单,为了获得客户端IP(使用express),请使用:req.ip