上篇文章—主要介绍了samba程序的安装,配置文件与其他相关文件的说明,以及要用到的相关命令。
本文将介绍samba服务的防火墙配置,并通过实例说明无需密码访问samba共享资源的配置。
一、samba服务防火墙的配置
samba服务的资源共享是通过smbd和nmbd两个守护进程来控制的,smbd 服务用来管理samba服务器对文件、打印资源的共享访问,利用TCP协议来传输数据,默认的端口为139和445;nmbd服务用来管理samba服务器工作组、NetBIOS主机名的解析,利用UDP协议开启137,138端口来实现名称解析,所以在配置防火墙时,要开放137、138、139及445端口。
iptables防火墙设置
iptables -t filter -I INPUT -p udp --dport 137 -j ACCEPT #开启137端口
iptables -t filter -I INPUT -p udp --dport 138 -j ACCEPT #开启138端口
iptables -t filter -I INPUT -p tcp -m tcp --dport 139 -m state --state NEW -j ACCEPT #开启139端口
iptables -t filter -I INPUT -p tcp -m tcp --dport 445 -m state --state NEW -j ACCEPT #开启445端口
service iptables save #保存防护墙设置
service iptables restart #重启防火墙
iptables -t filter --line-number -nL INPUT #查看防火墙现有规则
firewalld 防火墙配置
方法1—通过添加samba服务,开启防火墙通道。
firewall-cmd --permanent --zone=public --add-port=137/udp #开启137端口
firewall-cmd --permanent --zone=public --add-port=138/udp #开启138端口
firewall-cmd --permanent --zone=public --add-service=samba #开启samba服务规则
firewall-cmd --permanent --zone=public --add-service=samba-client #开启samba-client规则
firewall-cmd --reload #重新加载防护墙
firewall-cmd --list-all #查看防火墙现有规则
方法2—通过添加端口规则,开启防火墙通道。
firewall-cmd --permanent --zone=public --add-port=137/udp #开启137端口
firewall-cmd --permanent --zone=public --add-port=138/udp #开启138端口
firewall-cmd --permanent --zone=public --add-port=139/tcp #开启139端口
firewall-cmd --permanent --zone=public --add-port=445/tcp #开启445端口
firewall-cmd --reload #重新加载防护墙
firewall-cmd --list-all #查看防火墙现有规则