我需要使用 CHAP 授权连接到 iSCSI 目标。如何操作?我在 iscsiadm 中未找到所需选项。我需要编辑/etc/iscsid.conf或者/etc/nodes/iqn.200-01..target/../默认?
尝试连接时,我在控制台中看到以下错误:
Logging in to [iface: default, target: iqn.2000-01.com.syno..22e8a, portal: 12.0.3.21,3260] (multiple)
iscsiadm: Could not login to [iface: default, target: iqn.2000-01.com.syno..22e8a, portal: 12.0.3.21,3260].
iscsiadm: initiator reported error (24 - iSCSI login failed due to authorization failure)
iscsiadm: Could not log into all portals
答案1
因此,我找到了一个解决方案。
打开文件 /etc/iscsi/nodes/iqn.2000-节点名称/10.0.3.89,3260,1/默认
插入下一行:
node.session.auth.username = user_defined_in_target_setting
node.session.auth.password = your_password
从启动器登录到目标应该是成功的。
答案2
我对 opensuse 没有任何经验,但这是我们在 centos 中对网络设备目标所做的事情。
脚步
- 使用文本编辑器打开 /etc/iscsi/iscsid.conf 文件。
- 通过将 node.session.auth.authmethod 设置为 CHAP 来启用 CHAP 身份验证,默认值为 None。
node.session.auth.authmethod = CHAP
- 提供目标在对启动器进行身份验证时使用的 CHAP 用户名和密码。您必须删除注释指示符,并为以下配置条目中的选项用户名和密码提供值:
node.session.auth.username = 用户名
node.session.auth.password = 密码
- 提供启动器在验证目标时使用的 CHAP 用户名和密码。您必须删除注释指示符,并为以下配置条目中的选项 username_in 和 password_in 提供值:
node.session.auth.username_in = username_in
node.session.auth.password_in = password_in
为了成功发现会话,请通过在 discovery.sendtargets.auth. 选项中提供密码来启用发现 CHAP 身份验证。
注意:主机上的会话和发现的用户名和密码必须匹配。确保使用与使用 iscsi security 命令在存储系统上设置 CHAP 时相同的用户名和密码。
discovery.sendtargets.auth.authmethod = CHAP
discovery.sendtargets.auth.username = 用户名
discovery.sendtargets.auth.password = 密码
discovery.sendtargets.auth.username_in = username_in
discovery.sendtargets.auth.password_in = password_in
完成这些步骤后,照常进行发现
# iscsiadm -m discovery -t sendtargets -p <portalip>
厚颜无耻地从步骤插入网络应用站点