迈尔蒂
Myrtille通过Web浏览器提供了简单而快速的访问远程桌面,应用程序和SSH服务器,而无需任何插件,扩展或配置。
从技术上讲,Myrtille是RDP和SSH Gateway的HTTP。
它如何工作?
用户输入(键盘,鼠标,触摸屏)将从Web浏览器转发到HTTP(S)网关,然后转到RDP(或SSH)客户端,该client以RDP(或SSH)服务器维护会话。
从RDP(或SSH)客户端和通过网关将这些操作的显示(或不)显示回浏览器。
实现非常简单,可以保持速度和稳定性。一些优化,例如输入缓冲和显示质量调整,有助于减轻延迟和带宽问题。
文档文件中的更多信息。
特征
- HTTP(S)到RDP和SSH Gateway(版本2.0.0中的新)
- Hyper-V VM直接连接
- 多因素身份验证(MFA)
- Active Directory集成(主机的管理)
- 会话共享(协作模式)
- 从其URL启动远程程序
- 文件传输(本地和漫游帐户)
- PDF虚拟打印机
- 音频支持
- HTML4和HTML5支持
- 响应式设计
- 剪贴板同步
- PNG,JPEG和WebP压缩
- 实时连接INFO
- 屏幕控制台,logfile,debug-info
- 屏幕键盘(多种语言)
- REST API(即:从浏览器中隐藏连接信息,跟踪连接,监视远程会话等)
- 完全参数化
要求
- 浏览器:任何HTML4或HTML5浏览器(从IE6开始!)。无需扩展或行政权利。剪贴板同步需要Chrome(或异步剪贴板API支持)和HTTPS连接
- Gateway(Myrtille):Windows Server OS(2012 R2或更高版本,IIS 8.0+,.NET 4.5+和WCF/HTTP激活启用)。警告! Windows客户端OS上的IIS(7、8、10-所有版本)仅限于10个同时连接 - 在所有HTTP会话中 - 之后都会挂起!
- RDP服务器:任何RDP启用机器(最好是Windows Server,但也可以是Windows XP,7、8、10或Linux XRDP服务器)
- SSH服务器:任何SSH服务器(使用内置Windows 10 OpenSSH服务器进行测试)
资源
Myrtille支持多个连接/选项卡(根据那里的注释可以在Web.config中禁用)。
除了RDP(或SSH)服务器可以处理的是什么(CALS,CPU,RAM?),并不限制并发用户的最大数量。
关于网关,具有4 GB RAM的简单双核CPU可以同时处理多达50个会话(RDP客户端进程约为50MB RAM,对于SSH而言,更少)。
一个会话平均使用约200 kb/s的带宽。对于大多数情况,每个用户1 MB/S是一个很好的准备。对迈尔提尔来说,真正重要的是传出带宽,因为显示更新将吸引大多数流量。
建造
Microsoft Visual Studio 2017或更高版本。请参阅文档。
安装
所有版本在这里:https://github.com/cedrozor/myrtille/releases
有关更多详细信息,请参见Documentation.md。
Docker
从2.8.0版本中,Myrtille可作为Docker Image提供。
您可以使用以下命令将其从Docker Hub中拉出(使用标签以获取除最新版本以外的任何特定版本)
docker pull cedrozor/myrtille(:tag)
以独立模式运行图像(可选地提供所得容器一个能够连接主机的网络适配器)
docker run -d (--network="<network adapter>") cedrozor/myrtille(:tag)
有关更多详细信息,请参见Documentation.md。
远程桌面服务
这是RDP连接的主要要求。请阅读Documentation.md,以获取有关RDS角色和功能的更多信息,以及如何为Myrtille最好地配置它。
用法
安装在服务器上后,您可以在http:// myserver/myrtille上使用Myrtile。设置RDP(或SSH)服务器地址,用户域(如果有),名称和密码,然后单击“连接”以登录登录,然后“断开连接”以注销。您可以在仪表板访问仪表板的一键式访问中预先配置连接,以管理主机。
默认情况下,多因素身份验证(MFA)和Active Directory Integration(企业模式)都关闭。该文档将帮助您打开这些功能。
您可以连接远程桌面并从URL自动启动程序(请参见Documentation.md)。从1.5.0版本,Myrtille确实支持加密的凭据(又称“密码51”为.rdp文件),因此可以将URL分发给第三方而不会损害安全性。
安装程序使您可以选择为https:// myserver/myrtille创建一个自签名的证书。像所有自签名证书一样,您将必须在Web浏览器中添加安全例外(只需忽略警告消息,然后继续访问网站)。建议使用HTTPS保护您的远程连接。当然,您可以通过安装由受信任的认证机构提供的证书(请参阅文档.md)来避免这种情况。
如果需要连接信息,请打开“ stat”(在屏幕上或浏览器控制台显示)。如果您想要调试信息,请打开“调试”(大多数轨迹通过.JS文件中的评论而关闭(通过评论),但可以根据需要(通过对其进行删除)打开)。
您也可以选择HTML4或HTML5渲染模式(例如,如果Websocket被代理或防火墙阻止)。
在触摸屏设备上,您可以使用“键盘”按钮弹出设备键盘。然后输入一些文本,然后单击“发送”。例如,可以使用它来粘贴本地剪贴板内容并将其发送到服务器(然后在远程会话中从那里复制它)。另外,您可以在远程会话中运行OSK.EXE (屏幕键盘上的窗口,位于%SystemRoot% System32中)。可以自动启动OPON开始一个Windows会话(https://www.cybernetman.com/kb/index.cfm/fuseaction/home.viewarticles/articleid/197)。
还可以使用“剪贴板”按钮(仅文本格式)在本地检索远程剪贴板内容。
您可以使用“文件”按钮将文件上传/下载到/从用户文档文件夹上升。请注意,它要求RDP服务器是本地主机(与HTTP服务器相同的机器)或要指定的域。 SSH不可用。
您可以使用“ Myrtille PDF”(重定向)虚拟打印机在本地或网络打印机上打印任何文档。只需使用应用程序的打印功能,然后打开/打印下载的PDF即可。
从2.1.0版本中,您可以直接连接Hyper-V VM(控制台会话)。如果在VM上未启用远程桌面访问(IE:Linux VM),如果VM没有网络连接(或出于安全原因或使用DHCP)在其他网络上,或者仅在系统启动或关闭期间连接VM,则它将很有用。请参阅注释和限制以连接Hyper-V VM以及与标准RDP连接的差异。
第三者
Myrtille使用以下Libre软件:
- RDP客户端:FreerDP,许可的Apache 2.0。 Myrtille使用FreerDP(https://github.com/cedrozor/freerdp)的叉子来执行松散的耦合体系结构,并始终使用最新版本的FreerDP(叉子与FreerDP Master Branch定期同步)。
- OpenSSL工具包1.0.2N,许可的Apache 2.0。可以在此处获得OpenSSL的预编译版本:https://wiki.openssl.org/index.php/binaries。
- WebP编码:libwebp 0.5.1(https://developers.google.com/speed/webp/),以BSD类似的方式许可。
- 日志记录:Log4net 2.0.8,许可的Apache 2.0。
- 多因素身份验证:OASIS.Integration 1.6.1,许可的Apache 2.0。源代码可从https://github.com/oliveinnovations/oasis获得。版权橄榄创新有限公司2017。
- PDF虚拟打印机:PDFScribe 1.0.5,许可AGPLV3。
- 重定向端口监视器:Redmon 1.9(http://pages.cs.wisc.edu/~ghost/redmon/index.htm),许可的GPL V3。
- SSH客户端:SSH.NET 2016.1.0(https://github.com/sshnet/ssh.net/),许可的麻省理工学院。
- HTML终端模拟器:XTermJS,许可的MIT。
- WAV音频支持:Naudio,许可的MIT。
- mp3音频支持:naudio.lame,许可的麻省理工学院。
- mp3音频支持:la脚,许可的LGPLV2。
- 远程桌面服务API包装器:Cassia,许可的MIT。
- 屏幕键盘:简单键盘,许可的MIT。
- 可拖动弹出窗口:Interact.js,许可的MIT。
专有(未透视),矛盾或未知的术语:
- PostScript打印机驱动程序:Microsoft Postscript打印机驱动程序V3,版权(C)Microsoft Corporation。版权所有。
- PostScript和PDF解释器/渲染器:Ghostscript 9.23,许可的AGPLV3和GPLV3,以及自定义许可证中的不兼容条款。
- html5 websockets:microsoft.websockets 0.2.3.1(https://www.nuget.org/packages/microsoft.websockets/0.2.3.1) ](https://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm)。持有信号的Myrtile替换,许可的Apache 2.O.
请参阅“免责声明”文件。
FreerDP中的Myrtille代码被区域标签“ #pragma region Myrtille”和“ #Pragma End Region”所包围。
Libwebp作为Google官方的WebP预编译的二进制文件提供,未修饰。
执照
Myrtille是许可的Apache 2.0。请参阅许可证文件。
作者
塞德里克·科斯特。
- 网站:https://www.cedric-coste.com
- LinkedIn:https://fr.linkedin.com/in/cedric-coste-a1b9194b
- Twitter:https://twitter.com/cedrozor
- Facebook:https://www.facebook.com/profile.php?id=100011710352840
贡献者
- Catalin Trifanescu(Applikr开发人员:Application Server。Steemind Cofounder)
- Fabien Janvier(Applikr开发人员:网站CSS,剪辑算法,WebSocket服务器)
- Ultrasam(Applikr开发人员:RDP客户端,HTTP网关)
- Paul Oliver(Olive Innovations Ltd:MFA,企业模式,SSH终端)
赞助商
- 黑鱼软件(http://www.blackfishsoftware.com/) - IE选项卡的制造商 - 在触摸屏设备上滑动
- plasticserver(http://www.elasticserver.co/) - 使用浏览器打印对话框打印远程文档
- CODUCT GMBH(https://www.coduct.com/) - 重新连接浏览器调整大小,保持显示长宽比
- 练习范围(https://practice-labs.com/) - 音频支持,REST API,改进的IFRAMES集成
- Schleupen AG(https://www.schleupen.de/) - 剪贴板同步,断开API,断开会话的流失
- Microarea Spa(https://www.microarea.it/) - 应用程序池API,减少内存使用情况
- Arkafort(https://www.arkafort.com) - 改进的Hyper-V控制台支持,屏幕键盘
- 您的公司在这里(与我联系!)
乐趣
是否曾经想在特斯拉超级跑车中经营Myrtille? :) https://www.youtube.com/watch?v=ywnlf6bm_so
链接
- 网站:https://www.myrtille.io(支持与咨询服务)
- 资料来源:https://github.com/cedrozor/myrtille
- 跟踪器:https://github.com/cedrozor/myrtille/issues
- Wiki:https://github.com/cedrozor/myrtille/wiki
- 论坛:https://groups.google.com/forum/#!forum/myrtille_rdp(社区)
- 捐赠:https://www.paypal.me/costecedric