需安装targetcli并配置后端存储、iSCSI目标器、LUN映射、网络门户、ACL及CHAP认证,以在Linux中搭建安全的iSCSI目标服务。

如果您希望在Linux系统中将某台服务器配置为iSCSI目标(Target),使其能够向其他主机提供块级存储服务,则需要安装并配置iSCSI目标软件,设置存储后端,并启用相关网络服务。以下是完成该配置的具体步骤:
一、安装targetcli工具
targetcli是Linux下管理iSCSI目标的主流命令行工具,它基于LIO内核子系统,提供统一的配置接口。安装targetcli可快速构建符合标准的iSCSI目标服务。
1、执行命令安装targetcli软件包:sudo apt install targetcli-fb(Ubuntu/Debian系统)。
2、对于CentOS/RHEL 8及以上版本,运行:sudo dnf install targetcli。
3、启动并启用target服务:sudo systemctl enable --now target。
二、创建后端存储对象
后端存储对象是iSCSI目标对外提供的实际存储资源,可以是文件、逻辑卷或物理块设备。配置前需确保该存储介质已存在且具有足够权限。
1、创建一个2GB的稀疏文件作为后端存储:sudo dd if=/dev/zero of=/var/lib/iscsi_disks/disk01.img bs=1M count=2048 seek=2048。
2、为该文件设置适当权限:sudo chown -R root:root /var/lib/iscsi_disks/。
3、在targetcli中创建fileio类型的存储对象:/backstores/fileio create disk01 /var/lib/iscsi_disks/disk01.img。
三、配置iSCSI目标器与LUN映射
iSCSI目标器定义了对外发布的IQN标识符,LUN则将后端存储对象绑定到该目标器下,使发起端能识别并访问对应设备。
1、进入targetcli交互环境:sudo targetcli。
2、创建新的iSCSI目标器:/iscsi create iqn.2024-06.com.example:storage.target01。
3、在目标器下创建TPG(Target Portal Group):/iscsi/iqn.2024-06.com.example:storage.target01/tpg1 create。
4、将后端存储对象映射为LUN:/iscsi/iqn.2024-06.com.example:storage.target01/tpg1/luns create /backstores/fileio/disk01。
四、配置网络门户与访问控制
网络门户指定iSCSI服务监听的IP地址和端口;访问控制通过ACL限制允许连接的发起端IQN,保障存储服务安全性。
1、添加监听门户(绑定本机IP):/iscsi/iqn.2024-06.com.example:storage.target01/tpg1/portals create 192.168.100.10。
2、禁用全局认证并启用ACL模式:/iscsi/iqn.2024-06.com.example:storage.target01/tpg1 set attribute authentication=0。
3、添加允许访问的客户端IQN:/iscsi/iqn.2024-06.com.example:storage.target01/tpg1/acls create iqn.2024-06.com.client:web01。
五、启用CHAP认证增强安全性
CHAP(Challenge-Handshake Authentication Protocol)可在连接建立阶段验证发起端身份,防止未授权访问。启用后需在客户端同步配置对应凭据。
1、在TPG中启用CHAP认证:/iscsi/iqn.2024-06.com.example:storage.target01/tpg1 set attribute authentication=1。
2、为ACL条目设置CHAP用户名与密码:/iscsi/iqn.2024-06.com.example:storage.target01/tpg1/acls/iqn.2024-06.com.client:web01 set auth userid=admin。
3、设置对应密码:/iscsi/iqn.2024-06.com.example:storage.target01/tpg1/acls/iqn.2024-06.com.client:web01 set auth password=Secr3tP@ss。










