1.如果在A分析B的IP来过滤是否真正可以,是否黑客可以伪造B的IP给A返回响应?
2.如果使用https是否可以实现A只能接收B的请求(https证书是不是分服务与客户证书,A上是服务器证书,只把客户证书给B是否这样的?还是说证书可以自己下载或者客户设置全信任就可以?)
3.使用加密与签名是否可以实现这个需求?
如果把完全分为四层,1.网络(使用专线过滤)2.硬件服务器+操作系统 3.中间件 4.coding
如果要在硬件服务器或者操作系统上实现A只能接收B的请求是否有思路??
你的问题有好多种情况,因为你没有说具体的网络结构,如果说A、B服务器分别在两个网段内,那么问题就不一样了,因为你从A服务器取得到请求IP并不是B服务器的,可能是A的网关的,也有可能是B的网关的。从HTTP头里面取得的转发地址也不可靠。所以,通过IP来识别是不可取的。
使用证书当然是可以的,证书解决的首要问题就是身份问题,但是前提是B这台服务器你要能控制让它使用证书来请求。而因为软证书的可复制性,最好是插一把key在B服务器上面,然后由B服务器使用key中的证书进行通信。
如果配置起来麻烦,就在B服务器请求的时候带口令呗,不然没有办法的。除非你建一个VPN。
coding自己的通讯协议,有过类似尝试。
防火墙白名单,不要想着什么改IP.IP是路由改的
请求接口,,不一样。不就可以了。。。
我觉得2可行,12306不就是这样的吗,要想访问得先在客户端安装证书