CentOS 6.2 x86_64サーバーのsamba共有にアドレス\\ REPO(REPOのNETBIOS名)を使用して接続しようとすると、タイムアウトしてエラーが表示されます。 IP経由で直接行う場合は、正常に機能します。さらに、私のサーバーはWINSサーバーとして正しく機能しませんが、私のsamba設定は正しいです(詳細は以下を参照)。
iptablesサービスを停止すると、正常に動作します。
このページを使用するポートのリファレンスとして使用しています: http://www.samba.org/samba/docs/server_security.html
具体的には:
UDP/137 - used by nmbd
UDP/138 - used by nmbd
TCP/139 - used by smbd
TCP/445 - used by smbd
以下の安全なiptablesの設計を本当に維持したいのですが、この特定の問題を修正するだけです。
SMB.CONF
[global]
netbios name = REPO
workgroup = AWESOME
security = user
encrypt passwords = yes
# Use the native linux password database
#passdb backend = tdbsam
# Be a WINS server
wins support = yes
# Make this server a master browser
local master = yes
preferred master = yes
os level = 65
# Disable print support
load printers = no
printing = bsd
printcap name = /dev/null
disable spoolss = yes
# Restrict who can access the shares
hosts allow = 127.0.0. 10.1.1.
[public]
path = /mnt/repo/public
create mode = 0640
directory mode = 0750
writable = yes
valid users = mangs repoman
IPTABLES CONFIGURE SCRIPT
# Remove all existing rules
iptables -F
# Set default chain policies
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# Allow incoming SSH
iptables -A INPUT -i eth0 -p tcp --dport 22222 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22222 -m state --state ESTABLISHED -j ACCEPT
# Allow incoming HTTP
#iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
# Allow incoming Samba
iptables -A INPUT -i eth0 -p udp --dport 137 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp --sport 137 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p udp --dport 138 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp --sport 138 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 139 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 139 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 445 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 445 -m state --state ESTABLISHED -j ACCEPT
# Make these rules permanent
service iptables save
service iptables restart**strong text**
NETBIOSの名前解決をやめ、代わりにDNSを使用することを選択したことがわかりました(これはより適切に機能します)。したがって、機能するために必要なのはポート445のみであり、ファイアウォール構成が小さくなります。
あなたの症状は、NMBに到達できないことと一致しています。あなたのIPTables設定は私には良さそうです。 nmbdサービスが開始されていないのと同じくらい簡単かもしれません。まったく新しいSambaサービスに名前でアクセスできない理由を理解しようとすると、非常に問題が発生しました。