AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[ntlm](server)

Martin Hope
JohnLBevan
Asked: 2022-11-17 05:49:10 +0800 CST

使用 Azure 应用程序网关时出现 HTTP 401.2 错误

  • 5

我在 Azure 的 Windows Server 2019 DataCenter 上的 IIS 10 中托管了一个 ASP.Net 站点。此站点仅启用了 Windows 身份验证。

当我直接访问该站点 ( http://mysite-backend.example.com ) 时,系统会提示我输入凭据,之后一切都按预期进行。当我通过 App Gateway(配置为私有 IP)(https://mysite.example.com)访问该站点时,系统会提示我输入凭据,然后再次提示我请求其他资源(托管在同一个服务器上)站点,对任何子文件夹没有特殊规则)。我反复收到提示,直到我单击取消,此时我在 Chrome 的网络日志中看到资源请求的 401。

我遇到此问题的资源之一是对favicon.png. 如果我直接访问该资源(https://mysite.example.com/favicon.png)一切正常,但是当我访问该站点的页面时,浏览器会将该资源作为页面资源的一部分发送,我看到了错误。这意味着该资源是可访问的;但是关于它在“交易”中的处理方式的一些事情引起了问题。

我尝试过使用不同的浏览器,包括全新安装/来自不同的客户端设备,以确保没有任何缓存导致问题。此外,我还Disable Cache检查了 F12 网络设置,以确保我在两个站点之间进行完整的请求/公平比较。

后端池只有 1 个节点。后端设置说使用后端池的主机名而不是前端的主机名——所以从网络服务器的角度来看,请求看起来很相似。

在 Web 服务器的安全事件日志中,我看到4625使用我的测试用户名登录失败(事件 ID);确认请求正在使用正确的用户名发送到后端服务器(并且我一直非常小心以确保我始终输入正确的密码/已经做了很多次以消除人为错误的可能性/都尝试过使用并覆盖保存的密码)。如果我尝试太多次,我的测试帐户就会被锁定(即在 AD 中该lockedout属性设置为true);之后所有请求都会收到 401 响应(可以理解)。

我检查了 App Gateway 日志以确认它没有阻止任何内容。我还为此站点设置了一个自定义 WAF 规则,并将其设置为detection only模式以确保它不会阻止请求;以防万一某些东西被阻止但没有记录。

我在后端服务器上启用了状态 401 的失败请求跟踪;显示 401 来自:

-MODULE_SET_RESPONSE_ERROR_STATUS 

ModuleName: IIS Web Core 
Notification: AUTHENTICATE_REQUEST 
HttpStatus: 401 
HttpReason: Unauthorized 
HttpSubStatus: 2 
ErrorCode: Access is denied. (0x80070005) 
ConfigExceptionInfo

注意:我在给定时间段内在同一设备上测试时,被阻止的资源(即获得 401 响应)通常是一致的;但如果我在不同的日子或在不同的设备上进行测试,我可能会看到不同的资源被阻止。我第一次在任何设备上进行测试(大部分情况下)时,我看到POST对页面的两个 xhr 请求/subfolder###/Search失败,然后在该设备上进行了几次测试后,其他资源似乎被污染了。这感觉就像它们是主要原因 - 但随后会导致会话出现问题。

我正在尝试访问后端站点的源代码,以更好地了解这些搜索端点在其中编码的内容,以了解这是否可能导致问题。

同时,非常感谢这里的任何人的任何想法......提前致谢。


更新:直接调用搜索端点也会导致 HTTP 200 / 有效响应:

$resp = Invoke-RestMethod -Method Post -Uri 'https://mySite.example.com/subfolder###/Search' -Form @{recordsToTake=25;recordsToSkip=0;sortColumn='CategorieName';sortDirection='Ascending'} -Credential $cred -StatusCodeVariable sc;"Status $sc";$resp

ntlm
  • 1 个回答
  • 28 Views
Martin Hope
bahrep
Asked: 2021-12-02 15:37:42 +0800 CST

未定义“网络安全:限制 NTLM:此域中的 NTLM 身份验证”GPO 的状态

  • 0

NTLM 默认情况下是否在具有 Windows Server 2019 的域控制器上禁用?

我当前的测试表明,GPO网络安全:限制 NTLM:此域中的 NTLM 身份验证无法按文档说明工作。未定义此 GPO 时,NTLM 不起作用,并且我在 Windows 安全日志中看到错误:

Status: 0x80090302
Sub Status: 0xC0000418

状态 0xC0000418转换为STATUS_NTLM_BLOCKED(身份验证失败,因为 NTLM 被阻止)。

但是,如果我将 GPO 更改为禁用,NTLM 将再次工作。

文档说,当“未定义”时,“域控制器将允许部署策略的域中的所有 NTLM 身份验证请求。”。所以我假设我不需要更改组策略来启用 NTLM。

操作系统名称 Microsoft Windows Server 2019 Standard

版本 10.0.17763 内部版本 17763

windows group-policy windows-server-2019 ntlm
  • 1 个回答
  • 295 Views
Martin Hope
LT.Son
Asked: 2021-02-10 13:21:22 +0800 CST

SMB 连接到非域服务器

  • 0

我有一项服务需要与多台服务器建立 SMB 连接。使用具有访问权限的域帐户加入域的计算机没有问题。但是,我需要它连接到一些未加入的服务器。

  • 该服务需要 Admin$ 共享的管理员权限。
  • 内置管理员帐户被禁用。
  • 我有创建的本地管理员用户名和密码。
  • Windows 防火墙已关闭。
  • 服务器在同一个子网上,它们之间没有防火墙。

最初 NTLM 被设置为 DENY ALL,我从来没有得到连接。当我将设置“降低”到拒绝所有域帐户时,我终于能够连接到测试服务器。但是,当我对生产服务器进行相同的更改时,我无法连接。

花了一段时间,但我意识到我正在使用测试系统上的内置管理员帐户。我们在所有生产服务器上禁用此内置帐户,并创建一个添加到本地管理员组的新帐户。

如果启用,我可以使用内置的管理员帐户进行连接。

C:\Windows\system32>net use \\Server\Admin$ /USER:Administrator P@$$w0rd1
The command completed successfully.

但是,使用本地管理员组的任何其他成员,我无法连接。

C:\Windows\system32>net use \\Server\Admin$ /USER:NewAdmin NewP@$$wd
System error 5 has occurred.
    
Access is denied

任何指导表示赞赏。

server-message-block windows-server-2016 windows-server-2012-r2 ntlm
  • 1 个回答
  • 1117 Views
Martin Hope
John Constantine
Asked: 2020-11-17 23:56:20 +0800 CST

访问 Windows 群集文件 Server 2008 R2 中的共享文件夹时出现问题

  • 0

首先,我需要为我糟糕的技术和语言技能道歉。我会尽可能详细地描述一个问题。

有子网 172.16.10.0/24 在这个子网中我有 3 个服务器 1 个存储和 7 个工作站(实际数量更多)。所有这些机器都连接到 1 个单核交换机。

172.16.10.15/24 gw 172.16.10.1 - windows domain controller sovi.sk (FQDN dcsrv.sovi.sk) win serv 2008r2
172.16.10.11/24 gw 172.16.10.1 - Cluster1 (FQDN Cluster1.sovi.sk) win serv 2008r2
172.16.10.12/24 gw 172.16.10.1 - Cluster2 (FQDN Cluster2.sovi.sk) win serv 2008r2
172.16.10.13-14/24             - IBM system storage
172.16.10.1                    - VPN router.        
172.16.10.9                    - file server role (NetBios Name ClusterFS)  
10.62.17.130                   - windows domain controller System911.com (win serv 2008r2)

两台服务器和存储是故障转移集群的一部分。集群所需的 Sovi.sk Windows 域控制器。我们使用集群作为内部子网 172.16.10.0/24 的故障转移文件服务器。有很多文件夹为 sovi.sk 用户配置了 SMB 和 NTLM 权限。

我稍后描述的 7 个工作站 (win 7 x64 pro) 172.16.10.101-107/24 gw 1​​72.16.10.1 dns 10.62.17.130 是我们另一个域 System911.com 的一部分。

域 system911 是位于云服务(虚拟机 VMware)中的 Windows 域控制器,在 172.16.10.1 上配置的 NAT 允许我们的工作站访问域 System911.com(IP 10.62.17.130),但不适用于 sovi.sk 服务器。

7台工作站正在使用System911.com的帐号登录。一切正常。我正在使用 netbios 名称 \\ClusterFS\Share 通过网络路径从文件服务器上的这 7 个工作站访问文件服务器。Netbios 名称 ClusterFS 我写在工作站 System911.com 的文件主机中(之前我在 System911.com 域上创建了一条 A 记录,但后来我删除了它)。共享是文件夹的名称。在我录下这个网络路径后,窗口会要求我输入用户名和密码。我正在使用 sovi.sk 帐户,例如 admin@sovi.sk 并输入密码或 sovi\admin 并输入密码。我更喜欢第二种变体。在那之后,奇怪的事情开始了。出现窗口并显示“\\ClusterFS\Share 无法访问错误 0x800704cf”的消息。在我选择一个诊断按钮后,共享文件夹出现了!好的,之后一切正常。但大约几个小时后,文件夹变得无法访问。我试图再次访问一个文件夹,出现新的授权窗口,需要再次输入用户名和密码(输入正确的用户名和密码不能解决问题)授权窗口包含一条消息“系统检测到可能尝试危及安全。请确保您可以联系对您进行身份验证的服务器。” Windows 安全日志通知审计失败。t 解决问题)授权窗口包含一条消息“系统检测到可能尝试破坏安全性。请确保您可以联系对您进行身份验证的服务器。” Windows 安全日志通知审计失败。t 解决问题)授权窗口包含一条消息“系统检测到可能尝试破坏安全性。请确保您可以联系对您进行身份验证的服务器。” Windows 安全日志通知审计失败。

帐户无法登录。

Subject:
    Security ID:        NULL SID
    Account Name:       -
    Account Domain:     -
    Logon ID:       0x0

Logon Type:         3  (network access)

Account For Which Logon Failed:
Security ID:        NULL SID
Account Name:       1011120         (this is username of system911.com)
Account Domain:     system911.com

Failure Information:
Failure Reason:     Unknown user name or bad password.
Status:         0xC000006D
Sub Status:     0xC0000064

Process Information:
Caller Process ID:  0x0
Caller Process Name:    -

Network Information:
Workstation Name:   system911-PC1
Source Network Address: 172.16.10.101
Source Port:        57380

Detailed Authentication Information:
Logon Process:      NtLmSsp 
Authentication Package: NTLM
Transited Services: -
Package Name (NTLM only):   -
Key Length:     0

我启用了所有 NTLM 审计,但它没有提供任何适当的信息。在阅读了很多论坛后,我发现很多答案都认为这是 NULL SID 的攻击,但事实并非如此。子网 172.16.10.0 和 Internet 之间没有访问权限。这个工作站系统 911-PC1 和另外 6 个没有任何病毒。工作 NTLM、SMB、Kerberos 所需的所有端口都在服务器和工作站上打开。我什至尝试禁用服务器和工作站上的防火墙。在网络适配器上启用 TCP\IP 网络。

我也无法通过 IP \172.16.10.9\Share 访问 Share 文件夹。Cmd 命令 net use \ClusterFS 显示命令成功完成。如果我使用 net use \172.16.10.9 命令显示错误 1231。我在 system911-PC1 工作站上执行此 cmd 命令。集群验证测试成功通过,但有 1 个警告,只有一个可访问的子网(建议需要两个)。

我不知道如何启用通过 IP 访问文件夹,例如 \172.16.10.9\Share。我还需要知道当我访问 ClusterFS 上的共享文件夹时授权发生在哪里。访问共享文件夹的授权在哪里发生?在 ClusterFS 或 sovi.sk 域上,还是在 system911.com 域上?当我的工作站试图访问 ClusterFS 上的共享文件夹时,谁询问授权、ClusterFS、Sovi.sk 域或 system911.com 域?我无法在它们之间配置森林间信任,因为 system911.com 域作为服务从另一家公司提供给我。似乎是 NTLM 问题。但正如我稍后所描述的,在几个小时内一切正常。关于错误“系统检测到可能试图破坏安全性。” 文件服务器系统检测到工作站的尝试或系统?关于为什么几个小时后文件夹变得无法访问的任何想法?

network-share server-message-block windows-server-2008-r2 ntlm failovercluster
  • 1 个回答
  • 92 Views
Martin Hope
Felix Eriksson
Asked: 2020-05-16 08:51:33 +0800 CST

强化文件服务 Windows Server 2019 实例

  • 5

我正在为我工​​作的小公司重新配置和保护服务器。我们使用它通过 Autodesk Vault 存储设计文件和其他数据。它在附近的服务器提供商的 VPS 上运行。

我这样做的原因是我们的服务器提供商已通知我们,他们收到了有关我们的服务器在互联网上行为不端的投诉,这表明它在某种程度上受到了损害。除此之外,我们没有发现任何问题。该服务器最初是我来公司之前设置的,我找不到任何有关其配置的文档。它还运行 Windows Server 2012,所以我决定重新开始使用运行 Windows Server 2019 的新 VPS。这是我第一次使用 Windows 作为服务器操作系统,但我有一些管理 Ubuntu 服务器的经验。

在旧服务器上的事件查看器中,有无数次“4625 审核失败”登录尝试到服务器,但也有不少不是来自我或我们组织的成功登录。4624 审核成功示例:

An account was successfully logged on.

Subject:
    Security ID:        NULL SID
    Account Name:       -
    Account Domain:     -
    Logon ID:       0x0

Logon Type:         3

Impersonation Level:        Impersonation

New Logon:
    Security ID:        ANONYMOUS LOGON
    Account Name:       ANONYMOUS LOGON
    Account Domain:     NT AUTHORITY
    Logon ID:       0x9ABEAB7
    Logon GUID:     {00000000-0000-0000-0000-000000000000}

Process Information:
    Process ID:     0x0
    Process Name:       -

Network Information:
    Workstation Name:   
    Source Network Address: 117.45.167.129
    Source Port:        11949

Detailed Authentication Information:
    Logon Process:      NtLmSsp 
    Authentication Package: NTLM
    Transited Services: -
    Package Name (NTLM only):   NTLM V1
    Key Length:     0

所以,为了强化新服务器,我做了以下事情

  • 选择比以前更安全的密码
  • 安装了 IPBan ( https://github.com/DigitalRuby/IPBan ),它会阻止使用各种服务登录尝试失败的 IP
  • 根据 IPBan 安装指南中的建议,禁用 NTLM 登录

我想通过只允许 Autodesk Vault 来阻止所有可能的访问路径,它通过 HTTP(S) 在端口 80/443 进行通信(我可能会对其进行配置,以便只允许 HTTPS)和远程桌面,我需要管理服务器。但是查看 Windows Defender 防火墙默认规则,有大量开放端口作为默认配置。我发现这在服务器操作系统上有点奇怪 - 我希望它阻止我没有明确允许的所有内容。我可以安全地禁用除 RDP 和 HTTPS 之外的所有这些吗?它有帮助吗?我在服务器强化过程中​​是否遗漏了其他明显的东西? Windows Defender 防火墙中允许的服务的屏幕截图

有一个美好的周末!

rdp https windows-server-2019 ntlm windows-firewall
  • 2 个回答
  • 696 Views
Martin Hope
Chris Driver
Asked: 2020-03-15 03:12:52 +0800 CST

NTLM 身份验证和未加入域的计算机访问域上的共享

  • 1

我有一台未加入域的 Win 10 计算机,它访问已加入域的 Win 2016 服务器上的共享。第一次连接其中一个共享时,Win 10 客户端受到挑战,我提供域凭据。一切都按预期工作。

如果我理解正确的话,这种情况下的连接将使用 NTLM,而不是更安全的协议,例如 Kerberos。这个假设正确吗?我有一个有效的用例让这台计算机不加入域,但由于 Mimikatz 等黑客工具,我想避免使用 NTLM。是否有任何最佳实践来确保未加入域的计算机可以安全地访问域上的共享?

windows security ntlm
  • 1 个回答
  • 1844 Views
Martin Hope
Rich
Asked: 2017-08-30 08:00:37 +0800 CST

寻找轻量级 NTLM HTTP 代理服务器

  • 6

对于一些测试,我正在寻找 NTLM HTTP 代理服务器。服务器应该对客户端进行身份验证,而不是将该身份验证委托给上游“真实”NTLM 代理服务器(如“ NTLMAPS ”或“ CNTLM ”所做的那样)。

创建需要 NTLM 身份验证的 HTTP 代理服务器的最简单方法是什么?

我希望能够将用户添加到此代理并控制他们的密码。如果创建 Windows 域是实现这一目标的唯一方法,那么请在您的答案中包含实现这一点的最简单方法。

ntlm
  • 2 个回答
  • 5180 Views
Martin Hope
totalfreakingnoob
Asked: 2017-01-17 07:59:54 +0800 CST

LmCompatibilityLevel 应用于客户端、域控制器或两者?

  • 1

我想将LmCompatibilityLevel = 5应用于我的域,但我不确定这是否将应用于所有客户端(通过 GPO)、仅域控制器或两者。我有点困惑,因为 TechNet 描述指出此选项是让域控制器拒绝某些身份验证响应。

来自技术网:

客户端仅使用 NTLMv2 身份验证,如果服务器支持,它们使用 NTLMv2 会话安全性。域控制器拒绝 LM 和 NTLM 身份验证响应,但它接受 NTLMv2。

security domain-controller active-directory ntlm windows-server-2012
  • 1 个回答
  • 2552 Views
Martin Hope
mep
Asked: 2016-08-27 01:17:59 +0800 CST

如何使用 nginx 代理到需要 NTLM 身份验证的主机?

  • 0

基本上与如何使用 nginx 代理到需要身份验证的主机相同的问题?但这次使用 NTLM 身份验证。不幸的是,公司 IIS 不接受基本身份验证。

我需要将 nginx 配置为对所有代理请求使用单个用户域帐户。因此,客户端不应收到任何凭据提示。

iis nginx ntlm
  • 3 个回答
  • 7325 Views
Martin Hope
Nanne
Asked: 2012-07-18 00:15:55 +0800 CST

带有 cURL 的 NTLM 返回 401

  • 5

目标:连接到 Exchange 服务器 (EWS)
方法:cURL
问题:无法获得身份验证 (NTLM),请求返回401。1

似乎有一个古老的、有据可查的2问题,它始于 cURL 从 OpenSSL 到 NSS 的迁移。我读到 NTLM 的实现依赖于 OpenSSL,因此此举破坏了 NTLM 身份验证。

问题如下所示,但重要的部分似乎是返回401的,gss_init_sec_context()下面是。

我不明白的是我当前的版本:

  • 根据https://launchpad.net/ubuntu/+source/curl/7.22.0-3ubuntu4有一个 OpenSSL 变体
  • 根据同一链接支持 NTLM
  • 根据下面的日志(它说)实际上使用了这个变体(而不是 NSS libcurl/7.22.0 OpenSSL)
  • 根据以上几点,不应受到链接错误的困扰。
  • 但受到影响,正如我得到 401 的事实所示

我不确定如何解决这个问题。我可以找到很多关于这个问题的旧的(主要是 2010 年的)参考,但没有新的,当然也没有解决方案。我知道提供的参考资料(参见2)表明这可能适用于旧版本 (7.19),但我不能(也不愿意)降级到该版本。

Exchange-communication (EWS) 的几种实现使用 cURL 来检索 EWS 文件(wsdl 等),所以我确信一定有一个可行的方法,但我找不到它。有谁知道我能做什么?我是否还有另一个错误,我是否错误地解释了事实,这是否仍然与链接中提供的情况相同并且永远不会修复?


1错误是这样的:

curl https://*DOMAIN*/Exchange.asmx -w %{http_code} --ntlm -u *USERNAME* --verbose --show-error
Enter host password for user '*USERNAME':
* About to connect() to DOMAIN port 443 (#0)
*   Trying IP... connected
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Server finished (14):
* SSLv3, TLS handshake, Client key exchange (16):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSL connection using AES128-SHA
* Server certificate:
     *SNIP*
*        SSL certificate verify ok.
* Server auth using NTLM with user 'USERNAME'
> GET /EWS/Exchange.asmx HTTP/1.1
> Authorization: NTLM *snip*
> User-Agent: curl/7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
> Host: DOMAIN
> Accept: */*
>
< HTTP/1.1 401 Unauthorized
< Server: Microsoft-IIS/7.5
< Set-Cookie: exchangecookie=xxx; expires=Wed, 17-Jul-2013 07:45:30 GMT; path=/; HttpOnly
< WWW-Authenticate: NTLM  *SNIP*
* gss_init_sec_context() failed: : Credentials cache file '/tmp/krb5cc_1005' not foundWWW-Authenticate: Negotiate
< X-Powered-By: ASP.NET
< Date: Tue, 17 Jul 2012 07:45:30 GMT
< Content-Length: 0
<
* Connection #0 to host DOMAIN left intact
* Closing connection #0
* SSLv3, TLS alert, Client hello (1):

2例如:

  • https://bugs.launchpad.net/ubuntu/+source/curl/+bug/675974
  • https://bugzilla.redhat.com/show_bug.cgi?id=603783
  • https://stackoverflow.com/questions/4341368/curl-always-returns-401-with-ntlm
    • 这是同一个问题,但没有解决我的libcurlNSS中不应该出现该问题的事实。OpenSSL

卷曲信息:

user@server:~$ curl -V
curl 7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtmp rtsp smtp smtps telnet tftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP
linux exchange exchange-2010 curl ntlm
  • 2 个回答
  • 13122 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve