Kali挂载Windows共享目录
一、实验目的
掌握在Kali Linux系统中挂载Windows共享目录的方法,实现跨系统文件资源访问,深入理解SMB(Server Message Block)协议及相关技术。
二、实验环境
- 操作系统
- Kali Linux:负责发起挂载请求并访问Windows共享资源。
- Windows:提供共享目录。
- 网络环境:Kali Linux与Windows系统处于同一局域网,网络连接正常。
三、实验原理
SMB协议用于网络文件共享,允许客户端通过网络访问服务器的文件、打印机等资源。在本实验里,Kali Linux借助cifs-utils和smbclient工具集,依据SMB协议与Windows系统通信,把Windows系统的共享目录挂载到Kali系统本地目录,从而让Kali系统能像访问本地文件一样操作Windows共享资源。
四、实验具体步骤
(一)安装必要工具
在Kali终端执行下述命令安装cifs-utils和smbclient工具:
sudo apt update
sudo apt install cifs-utils
sudo apt install smbclient
(二)创建挂载点
在Kali系统中创建用于挂载Windows共享目录的本地目录,示例命令如下:
sudo mkdir -p /mnt/win_share
(三)挂载Windows共享目录
运用mount -t cifs命令挂载Windows共享目录共享文件夹的文件夹名,命令格式为:
mount -t cifs //window共享主机的IP地址/共享文件夹的文件夹名 /mnt/win_share -o username=用户名,password=密码
五、实验报错解决
(一)“无法定位软件包 cifs-utils”错误
┌──(root㉿an)-[/mnt/c/Users/19206]
└─# apt install cifs-utils
错误: 无法定位软件包 cifs
错误: 无法定位软件包 utils
- 报错原因:软件包索引未更新或者软件源配置有误。
- 解决方法:
-
更新软件包索引:在终端运行命令
sudo apt update,对APT包管理器的软件包索引进行更新。 -
检查软件源配置:通过命令
cat /etc/apt/sources.list | grep -v '^#' | grep -E '(kali|security)'查看sources.list文件中有效的Kali软件源配置。若源配置不正确,使用文本编辑器打开sources.list文件(命令:sudo nano /etc/apt/sources.list),将内容修改为deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib,保存并退出编辑器后,再次执行
sudo apt update。┌──(root㉿an)-[/mnt/win_share/2_PasswordCracking] └─# cat /etc/apt/sources.list # See: https://www.kali.org/docs/general-use/kali-linux-sources-list-repositories/ #deb http://http.kali.org/kali kali-last-snapshot main contrib non-free non-free-firmwaredeb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib# Additional line for source packages #deb-src http://http.kali.org/kali kali-last-snapshot main contrib non-free non-free-firmware -
测试网络连通性:运行
curl命令,检查能否正常访问软件源。若无法访问,可能是网络或DNS设置问题,可尝试切换到其他镜像源,如清华源,命令为echo "deb https://mirrors.tuna.tsinghua.edu.cn/kali kali - rolling main contrib non - free non - free - firmware" | sudo tee /etc/apt/sources.list,之后执行sudo apt update`。
-
(二)“mount error(2): No such file or directory”错误
┌──(root㉿an)-[/mnt/c/Users/19206]
└─# mount -t cifs //window共享主机的IP地址/共享文件夹的文件夹名 /mnt/win_share -o username=用户名,password=密码
mount error(2): No such file or directory
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg)
- 报错原因:挂载点不存在、网络或权限问题、SMB版本兼容性问题等。
- 解决方法:
- 确保挂载点存在:利用命令
sudo mkdir -p /mnt/win_share创建挂载点。 - 检查网络和权限:
- SMB版本问题:尝试在挂载命令中显式指定SMB版本为3,命令如下:
- 确保挂载点存在:利用命令
mount -t cifs //window共享主机的IP地址/共享文件夹的文件夹名 /mnt/win_share -o username=用户名,password=密码,vers=3.0
- 权限问题:在Windows系统中检查共享文件夹共享文件夹的文件夹名的权限设置,保证用户名用户具备读取和写入权限(若有写入需求)。
- 检查内核日志:运行dmesg命令查看内核日志,查找与CIFS挂载相关的错误信息,依据提示进一步定位问题。
- SELinux或AppArmor:确认Kali系统是否启用了SELinux或AppArmor。若启用了SELinux,可临时关闭进行测试(命令:sudo setenforce 0);若是AppArmor,需调整相关配置文件以允许CIFS挂载操作。
- 防火墙设置:检查Kali系统和Windows系统的防火墙设置。在Kali中,使用ufw命令允许Samba相关流量通过防火墙(命令:sudo ufw allow samba)。若使用iptables,则需相应配置规则。确保Windows防火墙允许来自Kali系统IP地址的SMB连接(TCP端口445)。
通过上述步骤,成功解决实验过程中遇到的问题,实现Kali Linux对Windows共享目录共享文件夹的文件夹名的挂载。
