利用ISCSI存储技术构建IP存储网络(安全篇)(2)

二、Initiator主机以密码认证方式获取iSCSI Target资源

iSCSI Target使用账号密码方式认证分成两阶段:
第一阶段是Discovery查询认证所使用的账号和密码(即SendTargets 用的)。
第二阶段是登入Target / iqn / Lun时所使用的账号密码(即Login登录时用的)。
此种方式在配置方面稍复杂一些,需要在Initiator主机和iSCSI Target服务器上做简单配置,下面分步介绍。
 

1 配置iSCSI Target
首先修改/etc/iet/initiators.allow文件,打开所有权限,修改后的内容如下:
#iqn.2000-04.net.ixdba:sdc1 192.168.12.136
#iqn.2002-04.net.ixdba:sdc2 192.168.12.26
ALL ALL
 接着修改/etc/iet/ietd.conf文件,修改后的内容如下:
IncomingUser  discovery.auth  discoverysecret

Target iqn.2000-04.net.ixdba:sdc1
IncomingUser  login.windows.auth  windowssecret
Lun 0 Path=/dev/sdc1,Type=fileio
 
Target iqn.2002-04.net.ixdba:sdc2
IncomingUser  login.linux.auth linuxsecret
Lun 0 Path=/dev/sdc2,Type=fileio
 其中,第一个“IncomingUser”是个全局参数,用来指定Discovery查询认证所使用的账号和密码,必须与initiator主机中设定的用户名密码一致。第二个和第三个“IncomingUser”选项包含在对应的Target中,用来指定windows和Linux客户端主机登录Target/iqn/Lun时所使用的账号密码。也必须与initiator主机中设定的用户名密码一致。
 所有配置完毕以后,重启iscsitarget服务。
 

2 配置Linux Initiator主机
修改/etc/iscsi/iscsid.conf文件,添加如下选项:
#以下三个是针对login的
node.session.auth.authmethod = CHAP     #表示在login时启用CHAP验证。
node.session.auth.username = login.linux.auth    #验证用户名称,可以是任意字符,但必须与target端IncomingUse配置的名字一致。
node.session.auth.password = linuxsecret     #验证密码,必须与target端对应的IncomingUse选项设置的密码一致。

#以下三个是针对discovery的
discovery.sendtargets.auth.authmethod = CHAP     #表示discovery时启用CHAP验证。
discovery.sendtargets.auth.username = discovery.auth  #验证用户名称,可以是任意字符,但必须与target端IncomingUse配置的名称一致。
discovery.sendtargets.auth.password = discoverysecret #验证密码,必须与target端对应的IncomingUse选项设置的密码一致。
配置完毕,重启initiator,重新执行Discovery查询,操作如下:
[root@ Initiator iscsi ]#/etc/init.d/iscsi restart
[root@ Initiator iscsi ]# iscsiadm -m discovery -t sendtargets -p 192.168.12.246
192.168.12.246:3260,1 iqn.2000-04.net.ixdba:sdc1
192.168.12.246:3260,1 iqn.2002-04.net.ixdba:sdc2
从查询结果可知,initiator查询到了两个Target,最后执行fdisk操作:
[root@ Initiator iscsi ]# fdisk -l
Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14       38913   312464250   8e  Linux LVM

Disk /dev/sdb: 5724 MB, 5724794880 bytes
177 heads, 62 sectors/track, 1018 cylinders
Units = cylinders of 10974 * 512 = 5618688 bytes

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        1018     5585735   83  Linux
从fdisk的输出结果可知,Linux initiator已经成功连接了ISCSI共享磁盘,而“/dev/sdb: 5724 MB”就是识别的硬盘标识和大小。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wywzpp.html