SSL:NancyFx Selfhost Mono Linux(pi)

时间:2014-01-08 13:05:01

标签: linux ssl mono nancy self-hosting

我是linux(PI)的新手,也是新手问题的单声道applog。

如何在mono / linux / pi上运行NancyFx,架子主机,通过https?

如果我能够使用OpenSsl(cer文件)创建证书,我该如何将其分配给端口?

文档中的

显示了如何为Windows执行此操作(此处为https://github.com/NancyFx/Nancy/wiki/Accessing-the-client-certificate-when-using-SSL#configuration-of-hostingself

感谢

3 个答案:

答案 0 :(得分:1)

我根本不了解PI,但我认为它与托管任何其他Linux版本没什么不同。

有两种方法。第一个记录在Wiki上:

https://github.com/NancyFx/Nancy/wiki/Hosting-Nancy-with-Nginx-on-Ubuntu

基本上,我们的想法是使用nginx web服务器将调用委托给自托管应用。

第二种是使用nginx,使用mono-fastcgi-server4来处理请求。这更像是传统网站,而不是将请求委托给其他服务的网站。

我在这里写了这个过程:

http://www.philliphaydon.com/2013/06/setting-up-mono-on-nginx/

http://www.philliphaydon.com/2013/07/setting-up-a-nancyfx-website/

理论上第一个解决方案应该允许你使用OWIN并托管其他东西,比如SignalR,而我的解决方案没有,因为nginx不支持集成管道,OWIN无法工作,我也没有成功让SignalR使用它。

答案 1 :(得分:0)

使用android:background="@drawable/img123"将证书绑定到端口,例如:

httpcfg

但遗憾的是,目前需要客户端证书的Mono版本似乎存在问题,请参阅:

https://github.com/mono/mono/pull/1202

和(最近的后续行动)

https://github.com/mono/mono/pull/2817

有效的最后一个Mono版本(我测试了这个版本)是 3.10.0 (由于缺少安全更新,因此不应该在生产环境中使用它。)

请查看我对this question的回答,了解如何通过修补源代码并自行编译来使用最新的Mono版本。

答案 2 :(得分:0)

Internet上仍然充斥着2016年的文章以及有关Mono中带有SSL的httpListener错误的评论(这引起了OP关于Linux上Nancy的问题)。最新的Mono版本中可能已经解决了该问题,但是我没有看到该信息。但是,这甚至可能无关紧要,因为调查此问题的许多用户似乎都报告说,将Nginx用作前端和反向代理是更好的解决方案。

讨论此问题的主要问题可以在这里找到: Mono HttpListener client certificate

有关使用Nginx进行托管的Nancy说明,可以在这里找到: https://github.com/NancyFx/Nancy/wiki/Hosting-Nancy-with-Nginx-on-Ubuntu