כיצד לבטל את SMB 1 או את NetBIOS ב-macOS

למדו כיצד לבטל את SMB 1 או את NetBIOS כדי למנוע מעבר לגיבוי בעת כשל (Failover).

מאמר זה מיועד למנהלי מערכת בארגונים ובמוסדות חינוך.

בעת ביצוע חיבורים יוצאים לשרתים, SMB 1 ו-NetBIOS מופעלים כברירת מחדל ב-macOS כדי לשפר את התאימות למוצרים של צד שלישי. ב-macOS יתבצע ניסיון להשתמש בגרסאות המאוחרות יותר של SMB, כמו גם ב-DNS וביציאה 445, עם מעבר לגיבוי ביציאה 139 ו-SMB 1 לפי הצורך. אפשר לבטל את SMB 1 או את NetBIOS כדי למנוע את המעבר לגיבוי בעת כשל.

כדי לבטל את SMB 1, יש להוסיף את השורה הבאה לקובץ ‎/etc/nsmb.conf:

protocol_vers_map=6

כדי לבטל את NetBIOS, יש להוסיף את השורה הבאה לקובץ ‎/etc/nsmb.conf:

port445=no_netbios

הקובץ ‎/etc/nsmb.conf אינו קיים כברירת מחדל. כדי ליצור קובץ כזה ולהחיל את שני השינויים שתוארו לעיל, יש להשתמש בפקודות 'המסוף' הבאות:

echo "[default]" | sudo tee -a /etc/nsmb.conf
echo "protocol_vers_map=6" | sudo tee -a /etc/nsmb.conf
echo "port445=no_netbios" | sudo tee -a /etc/nsmb.conf

כדי לבטל את השינויים שתוארו לעיל, תוכלו למחוק בבטחה את הקובץ ‎/etc/nsmb.conf.

כברירת מחדל, macOS אינה מקבלת חיבורי SMB. אם הגדרתם את ה-Mac לפעול כשרת קבצים בהעדפות של שיתוף קבצים, תוכלו להשבית את SMB 1 ולהמשיך לאפשר חיבורי SMB 2 ו-SMB 3. השתמשו בפקודות הבאות:

sudo scutil --prefs com.apple.smb.server.plist
get /
d.add ProtocolVersionMap # 6
set /
commit
apply
quit

כדי לבטל את השינוי שתואר לעיל, הפעילו את הפקודות הבאות:

sudo scutil --prefs com.apple.smb.server.plist
get /
d.add ProtocolVersionMap # 7
set /
commit
apply
quit

כדי להשבית את רישום שמות netbiosd, הפעילו את הפקודה הבאה:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.netbiosd.plist

כדי לוודא שה-netbiosd אינו פועל, הפעילו את הפקודה הבאה. אם לא יוחזרו תוצאות, netbiosd אינו פועל:

sudo ps aux | grep -i netbiosd | grep -v grep

כדי לבטל את השינוי הזה, הפעילו את הפקודה הבאה:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.netbiosd.plist
תאריך פרסום: