Simple SMB on home network. I decided to figure this out when I wasn't able to play most games from USB stick on my Sony PlayStation2. SMB was the answer and my Linksys EA8500v1 is the only device I own with a USB3.0 port for the drive. PS2 is USB1.0 so yeeeaaahhhh had to fix that.
I'm getting 90MB/s on gig net and the PS2 loads faster than media.
It's not meant to be hardened it's just functional enough for my needs in my own little world.
All that said I present to you my Samba4WRT setup.
CHANGE THE FOLLOWING VALUES
SMBUSER SMBPASS SMBPASS2 SMBGROUP SHARE SHARENAME
First install these packages via uci or Luci
block-mount
kmod-usb-storage
kmod-fs-ext4
libext2fs2
luci-app-samba4
mount-utils
samba4-admin
samba4-client
samba4-libs
samba4-server
samba4-utils
Add the USB device by following this.
DO NOT PERFORM STEP 7!!!!!
DONT FSTAB ORMOUNT LUCI DOES THAT
STOP AT STEP SIX STOP AT STEP SIX DO NOT PERFORM STEP 7!!!!!
usb-drives-quickstart
STOP AT STEP SIX STOP AT STEP SIX DO NOT PERFORM STEP 7!!!!!
Luci>System>Mount Points>Mount Points
Add UUID device leave path empty
auto generate config, enable, save
(may need to enable again after 1st save)
SSH>
Add a new system user,system group and Samba user
Edit the following files:
/etc/passwd: SMBUSER:x:1000:1000:SMBGROUP:/mnt/sda1/SHARE/:/bin/false
/etc/group: SMBGROUP:x:1000:
/etc/shadow: SMBUSER:xyzDummyString:16666:0:99999:7:::
Change password
passwd SMBUSER
Create samba user and password
smbpasswd -a SMBUSER SMBPASS2 (these will be the login credentials)
Create share directory in for new Mount Point location SHARE
mkdir -p /mnt/sda1/SHARE
Group and user chown
chgrp -R SMBGROUP /mnt/sda1/SHARE/
chmod 2777 /mnt/sda1/SHARE/
Luci>System>Mount Points/Mount Points
Select UUID edit
custom /mnt/sda1/SHARE/ <- dont forget the wack!!
Luci>Services>Network Shares>EditTemplate
Replace all with the following:
[global]
netbios name = |NAME|
interfaces = |INTERFACES|
server string = |DESCRIPTION|
unix charset = |CHARSET|
workgroup = |WORKGROUP|
bind interfaces only = yes
deadtime = 15
enable core files = no
security = user
invalid users = root
map to guest = never
passdb backend = smbpasswd
socket options = IPTOS_LOWDELAY TCP_NODELAY
load printers = No
printcap name = /dev/null
disable spoolss = yes
printing = bsd
mdns name = mdns
disable netbios = yes
local master = yes
preferred master = yes
veto files = /Thumbs.db/.DS_Store/._.DS_Store/.apdisk/
delete veto files = yes
fstype = Samba
max protocol = SMB2
min protocol = SMB2
Luci>Network Shares>General Settings>General Settings
Check boxes default
Luci>Network Shares>General Settings>Shared Directories
Add
!!FALSE on all but browsable!!
Name:SHARENAME
PATH: /mnt/sda1/SHARE/
Browseable=TRUE
AllowedUser:SMBUSER
0777
0777
!!FALSE on all but browsable!!!
SSH>
Verify /etc/config/samba4
config samba
option workgroup 'WORKGROUP'
option charset 'UTF-8'
option description 'Samba on OpenWRT'
config sambashare
option name 'SHARENAME'
option guest_ok 'no'
option dir_mask '0777'
option read_only 'no'
option path '/mnt/sda1/SHARE/'
option create_mask '0777'
option users 'SMBUSER'
Local SMB client test
smbclient -U SMBUSER //IP/SHARE/ <- dont forget the wack!!
Windows will require SMBUSER and SMBPASS to connect, click Sign in with different credentials
I'll update If I forgot something.
Stay Healthy!