我没有太多的服务器安全经验,所以只是寻找一个答案(我已经搜索并得到了不同的结果)。
我有一台使用 MySQL 存储大量数据的服务器。我想在其上创建一个发送电子邮件验证链接的账户登录系统。目前,测试电子邮件发送的链接如下所示(不是实际链接):
https://58.87.12.222/SomeFolder/VerifyNewAccount.php?idCode=someThing
从安全性角度来说这是否很糟糕?
有人知道链接中包含的 IP 地址和其他信息后会做出坏事吗?
有人可以通过“监听”该地址来获取传入的登录信息吗?
考虑到我缺乏知识,有没有简单的方法来隐藏它?
答案1
它被视为一种不好的做法的唯一原因是因为你无法从广泛信任的 CA 获取针对 IP 地址的签名证书。
只要获得一个合适的域名即可。现在域名几乎都是免费的。
答案2
您的问题有几种答案:
您曾问过,如果有人知道链接中的 IP 地址和其他信息,他是否能做一些坏事。(您的链接使用 IP 地址、PHP 文件的完整路径和参数idCode
。)使用其中任何一项都不会隐含不安全。但是,无论是否某人能够做到某物坏处很大程度上取决于VerifyNewAccount.php
脚本的具体内容以及idCode=someThing
实际使用方式。拥有这些信息本身并不危险,除非脚本允许这些信息被不当使用(编程细节超出了这个问题的范围,根据 PHP 脚本的内容,这个问题更适合另一个问题)。
你还问过是否有人可以“监听”该地址。没有人可以仅仅通过知道该地址是什么就监听该地址。然而,这并不排除有人可以监听该地址的可能性。中间人攻击(再次强调,网络细节超出了这个问题的范围,并且更适合基于您的网络架构的另一个问题)。
确实,在这个链接中,你不可能“隐藏”任何东西,而使用基本的网络工具无法揭示这些东西。(事实上,你必须揭示所有部分,否则你的系统根本无法使用。)
考虑到你缺乏知识,请继续提出这样的问题,并在系统构建时继续检查系统的每个部分。安全没有什么神奇之处,但你必须继续提出问题,检查并加强薄弱环节。