0

0

大神教你:ownCloud的双因素身份验证教程

碧海醫心

碧海醫心

发布时间:2024-10-28 21:57:01

|

417人浏览过

|

来源于Linux就该这么学

转载

先决条件

我假设你已经有一个owncloud 8系统并运行。 那里有一些很好的例子。 你也可以看一下在本网站上如何安装owncloud 8和nginx 。

另外我假设你正在运行一个privacyIDEA系统。 这个方法不包括privacyIDEA的安装。 您还可以在Howtoforge中找到如何在CentOS上安装privacyIDEA,也可以使用文档中的安装说明 。

请注意:您不需要在同一台服务器上运行privacyIDEA和ownCloud。 在一个服务器上安装privacyIDEA作为身份验证系统,并根据此privacyIDEA配置其他应用程序(如ownCloud),您将释放此类设置的全部功能。 这还包括您不需要管理ownCloud的身份验证设备,您的第二个应用程序的身份验证设备和第三个应用程序的身份验证设备等优点。 你会看到,如果你有几个应用程序和两个以上的用户,这个解决方案证明了它的优势。 但当然也可以在较小的情况下工作。

请注意: ownCloud privacyIDEA应用程序处于早期开发阶段。 所以您提供的任何反馈都非常感谢,并将有助于改进此工具。 您可以通过github问题或通过Google群组来提供反馈意见。

准备数据库

privacyIDEA有一个条件。 自己的Cloud用户必须以privacyIDEA或其他方式知道,您在privacyIDEA中分配令牌的用户也必须在ownCloud中可用。

您可以运行用户位于LDAP目录中的安装程序,但在本示例中,我们仅使用现有的ownCloud SQL用户表。

请注意:如果您在不同的服务器上运行privacyIDEA和ownCloud,则需要授予对SQL数据库的访问权限。 在MySQL / MariaDB的情况下,您需要修改/etc/mysql/my.cnf中的绑定地址 ,如下所示:

bind-address = 0.0.0.0

此外,您需要根据MySQL添加访问权限:

grant all privileges on owncloud.* to "ocuser"@"privacyIDEA-Server" identified by "password";

现在,MySQL用户“ocuser”可以从privacyIDEA服务器访问ownCloud服务器上的数据库。

警告:到MySQL服务器的网络流量未加密。 如果您运行此方案,我们非常建议您设置TLS。 您还可以在本网站上找到一些使用SSL设置MySQL的howtos。

创建用户解析器

现在我们将privacyIDEA连接到ownCloud,以便privacyIDEA知道用户。 我们在Config→Users创建一个新的用户解析器 。
大神教你:ownCloud的双因素身份验证教程

大神教你:ownCloud的双因素身份验证教程

您可以点击ownCloud应该预设数据库属性映射中所有必需字段的按钮。

然后,您可以单击测试SQL解析器来查看,如果一切顺利。

创建领域

现在您可以通过Config→Realms从解析器创建默认域。
大神教你:ownCloud的双因素身份验证教程

您现在应该在“ 用户 ”选项卡中查看ownCloud用户,并可以为这些用户注册令牌。

注册Google Authenticator

privacyIDEA支持各种令牌,您可以在这里找到。

我们将以简单的例子快速注册Google Authenticator。

网页制作与PHP语言应用
网页制作与PHP语言应用

图书《网页制作与PHP语言应用》,由武汉大学出版社于2006出版,该书为普通高等院校网络传播系列教材之一,主要阐述了网页制作的基础知识与实践,以及PHP语言在网络传播中的应用。该书内容涉及:HTML基础知识、PHP的基本语法、PHP程序中的常用函数、数据库软件MySQL的基本操作、网页加密和身份验证、动态生成图像、MySQL与多媒体素材库的建设等。

下载

转到用户视图,选择一个用户来查看用户的详细信息。 在这里您可以点击按钮注册新令牌 。
大神教你:ownCloud的双因素身份验证教程

在注册对话框中,您可以选择令牌类型,并根据输入不同详细信息所需的令牌类型。 但是在这个例子中,我们使用默认的token类型HOTP 。 在页面的底部,您可以输入OTP PIN。

单击注册令牌 。
大神教你:ownCloud的双因素身份验证教程
该令牌已注册,您会看到一个QR码,您可以使用Google Authenticator App进行扫描。
大神教你:ownCloud的双因素身份验证教程

其他令牌类型以其他方式注册,这超出了本教程的范围。 有关更多信息,请参阅privacyIDEA文档 。

现在我们完成了,因为ownCloud用户分配了一个令牌。 您可以重复此过程,以进一步为自己的Cloud用户。

获取ownCloud应用程序

首先,您需要下载ownCloud privacyIDEA应用程序。

您可以在这里下载App。 您需要将目录user_privacyidea 复制到您自己的Cloud目录apps / 。 假设你把ownCloud安装到/ var / www / owncloud ,这样你就可以得到一个结构了

root@owncloud:~# ls /var/www/owncloud/apps/user_privacyidea/ -l
-rw-rw-r-- 1 root root 1671 Jun 25 15:05 adminSettings.php
drwxrwxr-x 2 root root 4096 Jun 25 15:17 appinfo
drwxrwxr-x 2 root root 4096 Jun 25 15:17 img
drwxrwxr-x 2 root root 4096 Jun 25 15:17 js
drwxrwxr-x 2 root root 4096 Jun 25 15:17 lib
drwxrwxr-x 2 root root 4096 Jun 25 15:17 templates

privacyIDEA应用程序实现为ownCloud用户后端,并将作为现有用户后台的覆盖图,以便能够跳转到身份验证请求,以将第二个因素添加到登录。

配置ownCloud App

转到应用程序→不启用并启用应用程序。
大神教你:ownCloud的双因素身份验证教程

然后,您可以访问您的用户→管理员来配置privacyIDEA应用程序。
大神教你:ownCloud的双因素身份验证教程

您需要提供privacyIDEA服务器的URL 。 您应该运行带有受信任证书的privacyIDEA服务器。 如果在安装过程中没有可信任的证书,可以取消选中VerifyID SSL服务器的SSL证书 。

为了避免锁定您,您可以勾选复选框, 还允许用户使用其正常密码进行身份验证 。 在这种情况下,如果对privacyIDEA的身份验证失败,则用户将针对底层的ownCloud用户后端进行身份验证。 在生产性使用中,您应该取消选中此复选框。

桌面客户端当然会出现一次性密码问题。 如果您使用这样的客户端,您应该勾选允许使用静态密码访问remote.php的API 。 在这种情况下,来自桌面客户端(由remote.php标识)的身份验证请求将不会针对privacyIDEA而是针对底层用户后端进行身份验证。

最后,如果一切正常,您可以通过勾选“ 使用privacyIDEA ”复选框来激活双因素身份验证。

登录到ownCloud

激活privacyIDEA应用程序后,ownCloud的登录屏幕不会更改。

要登录,您需要输入用户名,并在密码字段中输入您的Google身份验证器生成的OTP密码和OTP值。

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2676

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1658

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1515

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

952

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1419

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1234

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1468

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1306

2023.11.13

PHP WebSocket 实时通信开发
PHP WebSocket 实时通信开发

本专题系统讲解 PHP 在实时通信与长连接场景中的应用实践,涵盖 WebSocket 协议原理、服务端连接管理、消息推送机制、心跳检测、断线重连以及与前端的实时交互实现。通过聊天系统、实时通知等案例,帮助开发者掌握 使用 PHP 构建实时通信与推送服务的完整开发流程,适用于即时消息与高互动性应用场景。

0

2026.01.19

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
jQuery  红蓝两方投票功能实战教程
jQuery 红蓝两方投票功能实战教程

共8课时 | 2.3万人学习

传智播客Swift基础视频教程
传智播客Swift基础视频教程

共40课时 | 7.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号