What's new

DIY routers and APs

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

Yep, that is what I found out last night. Ksmb does look like a compact lightweight alternative to samba.
I changed over to ksmbd on my custom build. For one thing, it's only about 20% the size of samba4. Everything seems to work fine, but the same constraints about adding a share with specific user access. All manual config. (At least I was able to add the necessary tools as part of my build). Performance seems good but I haven't done any in depth measurements.
 
I changed over to ksmbd on my custom build. For one thing, it's only about 20% the size of samba4. Everything seems to work fine, but the same constraints about adding a share with specific user access. All manual config. (At least I was able to add the necessary tools as part of my build). Performance seems good but I haven't done any in depth measurements.

I have not ventured into trying to make my own build yet. Mostly due to lack of skill. I am still trying to decide if I want to stay with OpenWRT or stay with Ubuntu on the RasPi (the whole nervous about making my own firewall thing). Perhaps this winter when it is freaken cold -30c out and locked up, I will tackle that. In the meantime, I am putting the finishing touches on my own OpenWRT version of SpdOpenWRT for the RasPi4. I don't want to loose that lovely database (sorry, no GUI).

I will edit my pose above about Samba. I did find out that if you use the LuCI interface with Samba, you need to do your custom smb.conf changes with the template in LuCI or they will get overwritten. The the other option is to dump the LuCI interface and start Samba from rc.d directory (smbd -d).

Thanks for the update
 
I am still trying to decide if I want to stay with OpenWRT or stay with Ubuntu on the RasPi (the whole nervous about making my own firewall thing).
If Ubuntu has switched to nftables, there is a very concise nft-based firewall config shared by dlakelan on the OpenWrt forum. He himself uses Debian on the Pi, but was trying to help OpenWrt users test nftables. Much easier to comprehend than iptables, depending on your experience.

 
A little more status on my 'x86Orion' OpenWrt build.
I realized that I had sort of hit a milestone without really thinking about it. In the past, when I had tried pfSense/OPNsense, I always ended up going back to my LTS fork config for one reason or another. What happened is that I saw I had been running OpenWrt for about a week, without anything really missing or broken. Sure, I can't keep from playing with it, but it's basically all there and stable.

I've been working on learning the code structure via small fixes and 'usability' improvements. Learned how to create my own packages and am currently running my own local package server. I merged in the 21.02.1 update without any problems. Next, I can't avoid really getting into LuCI anymore :) I do see that a lot of the luci code is based on an 'n-1' version, which runs with a compatibility layer. This code is a lot easier to understand and I may start with that.

Here's my current commit lists for anyone interested.....
Code:
openwrt
87c1537412 (HEAD -> orion-21.02) Merge branch 'openwrt-21.02' of https://github.com/openwrt/openwrt into orion-21.02
b306954829 odhcpd: ipv6 dns updates
53c000fb5d sysupgrade: update default backup files
0527266b00 dnsmasq: make lease file link for asus access point
e626187878 startup: start odhcpd same priority as dnsmasq
8b00c76e15 opkg: make: add support for customfeeds.conf.default
defe7aa964 Merge branch 'openwrt-21.02' of https://github.com/openwrt/openwrt into orion-21.02
979318ef0f startup: delay dropbear until core services up
ee106ec3a6 files: eliminate unnecessary use of revision code w/version code
f0227c62b8 startup: optimize odhcpd, urandom start sequencing
4383a55647 dnsmasq: update default dhcp.conf
a318985d94 make: add support for default distfeeds.conf
6ea5746e9f target: remove explicit hd0 root
d2f50118b4 git: show patch files in status

packages
f4c020156 (HEAD -> orion-21.02) wsdd2: allow smb multiple interfaces, wsdd2 only supports first
2a1ebf34f wsdd2: init script updates
24c6ecc3f wsdd2: revert to version 1.8.3.2
70689f8eb avahi-daemon: update default configuration
35fd1e9c1 avahi-daemon: move start to end of boot
7afbd398d Merge branch 'openwrt-21.02' of https://github.com/openwrt/packages into orion-21.02
bc8be1efb ip6neigh: add option to set dnsmasq reload_interval
a5995fbe5 ip6neigh: added version 2.0.0
18ff77f45 Merge branch 'openwrt-21.02' of https://github.com/openwrt/packages into orion-21.02
5c6090fcf stubby: run as root to allow access to /dev/crypto
0a61207e6 udp-broadcast-relay-redux: change special addresses
8883627ac udp-broadcast-relay-redux: add multicast option; change defaults
fc3c40bc0 nano: update build recipe; support nanorc
333605112 openvpn: update to 2.5.4
7eb752cf9 avahi-daemon: update default conf
21d31c192 ddns-scripts: update registered ip immediately on update
087280853 acme: misc parameter fixes; eliminate conflicting server checks
b6de41b98 ddns: no-ip: eliminate return after dummy update
3504a0ddd getdns: revert udp max payload check which can block some sites
8062d224b stubby: upstream fix option parsing
7bd94eef5 stubby: change default appdata dir
2fc0a3659 stubby: add additional config options

luci
30c4c9191e (HEAD -> orion-21.02) luci-app-ksmbd: allow multiple interface selection
7c302366eb luci-mod-status: position system log at end, disable refresh on open
ad44fc45e0 luci-mod-status: fit system and kernel log textareas to page
b1879c8421 luci-mod-status: sort neighbour tables by hostname
73fed58c27 luci-mod-status: show all neighbour addresses and add state info
3cb66387d5 luci-mod-status: add hostnames to route/neighbor tables
93f0f4ebea luci-mod-network: sort ipv4/ipv6 leases tables by ip address
b1f140a763 luci-mod-status: sort ipv4/ipv6 leases tables by ip address
bfc87331d1 luci-mod-system: fix name sort in startup.js
a3e919bc48 luci-app-upnp: fix disappearing description field data
e23dde9603 bootstrap: standardize version codes in footer
4448e0ddc1 luci.mk: fix branch detection
7ebd09741e overview: webui/luci firmware release info on separate line
c238bcfc18 dhcp: add dnsmasq proxy-dnssec option
490ff0309c ddns: fix last update time calc
e6e5329928 acme: add support for alpn mode
 
A little more status on my 'x86Orion' OpenWrt build.
I realized that I had sort of hit a milestone without really thinking about it. In the past, when I had tried pfSense/OPNsense, I always ended up going back to my LTS fork config for one reason or another. What happened is that I saw I had been running OpenWrt for about a week, without anything really missing or broken. Sure, I can't keep from playing with it, but it's basically all there and stable.

I've been working on learning the code structure via small fixes and 'usability' improvements. Learned how to create my own packages and am currently running my own local package server. I merged in the 21.02.1 update without any problems. Next, I can't avoid really getting into LuCI anymore :) I do see that a lot of the luci code is based on an 'n-1' version, which runs with a compatibility layer. This code is a lot easier to understand and I may start with that.

Here's my current commit lists for anyone interested.....
Code:
openwrt
87c1537412 (HEAD -> orion-21.02) Merge branch 'openwrt-21.02' of https://github.com/openwrt/openwrt into orion-21.02
b306954829 odhcpd: ipv6 dns updates
53c000fb5d sysupgrade: update default backup files
0527266b00 dnsmasq: make lease file link for asus access point
e626187878 startup: start odhcpd same priority as dnsmasq
8b00c76e15 opkg: make: add support for customfeeds.conf.default
defe7aa964 Merge branch 'openwrt-21.02' of https://github.com/openwrt/openwrt into orion-21.02
979318ef0f startup: delay dropbear until core services up
ee106ec3a6 files: eliminate unnecessary use of revision code w/version code
f0227c62b8 startup: optimize odhcpd, urandom start sequencing
4383a55647 dnsmasq: update default dhcp.conf
a318985d94 make: add support for default distfeeds.conf
6ea5746e9f target: remove explicit hd0 root
d2f50118b4 git: show patch files in status

packages
f4c020156 (HEAD -> orion-21.02) wsdd2: allow smb multiple interfaces, wsdd2 only supports first
2a1ebf34f wsdd2: init script updates
24c6ecc3f wsdd2: revert to version 1.8.3.2
70689f8eb avahi-daemon: update default configuration
35fd1e9c1 avahi-daemon: move start to end of boot
7afbd398d Merge branch 'openwrt-21.02' of https://github.com/openwrt/packages into orion-21.02
bc8be1efb ip6neigh: add option to set dnsmasq reload_interval
a5995fbe5 ip6neigh: added version 2.0.0
18ff77f45 Merge branch 'openwrt-21.02' of https://github.com/openwrt/packages into orion-21.02
5c6090fcf stubby: run as root to allow access to /dev/crypto
0a61207e6 udp-broadcast-relay-redux: change special addresses
8883627ac udp-broadcast-relay-redux: add multicast option; change defaults
fc3c40bc0 nano: update build recipe; support nanorc
333605112 openvpn: update to 2.5.4
7eb752cf9 avahi-daemon: update default conf
21d31c192 ddns-scripts: update registered ip immediately on update
087280853 acme: misc parameter fixes; eliminate conflicting server checks
b6de41b98 ddns: no-ip: eliminate return after dummy update
3504a0ddd getdns: revert udp max payload check which can block some sites
8062d224b stubby: upstream fix option parsing
7bd94eef5 stubby: change default appdata dir
2fc0a3659 stubby: add additional config options

luci
30c4c9191e (HEAD -> orion-21.02) luci-app-ksmbd: allow multiple interface selection
7c302366eb luci-mod-status: position system log at end, disable refresh on open
ad44fc45e0 luci-mod-status: fit system and kernel log textareas to page
b1879c8421 luci-mod-status: sort neighbour tables by hostname
73fed58c27 luci-mod-status: show all neighbour addresses and add state info
3cb66387d5 luci-mod-status: add hostnames to route/neighbor tables
93f0f4ebea luci-mod-network: sort ipv4/ipv6 leases tables by ip address
b1f140a763 luci-mod-status: sort ipv4/ipv6 leases tables by ip address
bfc87331d1 luci-mod-system: fix name sort in startup.js
a3e919bc48 luci-app-upnp: fix disappearing description field data
e23dde9603 bootstrap: standardize version codes in footer
4448e0ddc1 luci.mk: fix branch detection
7ebd09741e overview: webui/luci firmware release info on separate line
c238bcfc18 dhcp: add dnsmasq proxy-dnssec option
490ff0309c ddns: fix last update time calc
e6e5329928 acme: add support for alpn mode
I’m interested in 53c000fb5d (sysupgrade) since I’m trying to wrap my head around upgrades and backups. I don‘t have serious enough build HW so I use Image Builder with the FILES option to incorporate my baseline customizations. But I lost some config when upgrading to 21.02.1, so I’m curious what others are doing.

I don’t yet find any public Orion github repo…share your work! :)

Also intrigued by ad44fc45e0 (syslog page).
 
I’m interested in 53c000fb5d (sysupgrade)
I just defaulted some things I added via the gui under Backup/Restore > Configuration. For example, I have a /user directory where I'm playing with migrating things from Merlin /jffs.
Also intrigued by ad44fc45e0 (syslog page).
That was a cheap change....just limited the number of lines in a textarea. The one above is even better (at least for me) to open to the end of the log instead of the beginning.
I don’t yet find any public Orion github repo…share your work! :)
As soon as I have a bit more to share....something to show some functional 'focus' for the gui. :) Then I'll also have to start looking for a provider to host my custom feeds.....
 
If Ubuntu has switched to nftables, there is a very concise nft-based firewall config shared by dlakelan on the OpenWrt forum. He himself uses Debian on the Pi, but was trying to help OpenWrt users test nftables. Much easier to comprehend than iptables, depending on your experience.


Thanks @dave14305 for the link. I will look into it. I have studied how Asus makes up there firewall as well as how OpenWRT makes up there firewall. I understand well enough, just paranoid to miss something.

I would like to learn how to build my own Samba image for OpenWRT (aarch64) platform as I would like to have Active Directory components. Since my ISP is not very taxing (80/40), I would like to move DC also over RasPi router and eliminate one machine. Now being in my mid-50's, I don't find things come quite as easy as they once did. My basic playing helps keep me sharp enough that I don't go completely numb. That said, google is my best friend.

However, I have not yet found good instructions on how to compile from source for different platforms.

The RasPi just seems to be too much hardware not to use something better that BusyBox.

@john9527 You want to be careful - with so many fixes and updates, you are going to be head hunted by OpenWRT :)

Having a real harddrive is a nice thing with OpenWRT. I have noticed a steady stream of package updates. I only wish opkg had an upgrade option (I get by with opkg list-upgradable | cut -f 1 -d ' ' | xargs -r opkg upgrade

Cheers all
 
Now being in my mid-50's, I don't find things come quite as easy as they once did.
LOL....I hear you. Let's just say I'm north of your 50's.
But like you....it's exercise for the brain :)
You’re all really old. I’m only 50. :)
The RasPi just seems to be too much hardware not to use something better that BusyBox.
I hear this. I went to run a watch tc -s qdisc | grep -A29 cake command and realized watch isn’t included by default in OpenWrt.
 
Having a real harddrive is a nice thing with OpenWRT. I have noticed a steady stream of package updates. I only wish opkg had an upgrade option (I get by with opkg list-upgradable | cut -f 1 -d ' ' | xargs -r opkg upgrade

Cheers all
If you read the OpenWRT forums, updating individual packages is discouraged, as it could break dependencies, it's not like a normal Linux distribution.
 
f you read the OpenWRT forums, updating individual packages is discouraged, as it could break dependencies, it's not like a normal Linux distribution.

Exactly - one could end up out in left field...

Good example of this is the QSDK - it's OpenWRT (cc), but with all of Qualcomm/Atheros special sauce and closed drivers - it's essentially a fork, and hard to back port functionality into their code, and hard to bring things forward as well.

At least they do maintain QSDK to some degree with patches and what not..
 
I realized that I had sort of hit a milestone without really thinking about it. In the past, when I had tried pfSense/OPNsense, I always ended up going back to my LTS fork config for one reason or another. What happened is that I saw I had been running OpenWrt for about a week, without anything really missing or broken. Sure, I can't keep from playing with it, but it's basically all there and stable.

I've been maintaining a private build based on OpenWRT for some time now - and it's pretty well thought out (OpenWRT that is) so easy to pick and chose.

But as noted, doing PR's back to master is another story, as one can get into dependency hell if one is not careful. Introducing breakage into Master is frowned upon, so even getting commit access is a matter of earning trust by the team.

I've usually found someone that has access if I need to get something in, and evangelize it there, and work it with that person to get features in...
 
I'm really not looking to become an OpenWrt 'developer'. Something more along the lines of my LTS fork. If I get to the point where I think others may benefit, I'll put up my repo and make a build available. I think OpenWrt calls them 'Community Builds'. At that point, anybody will be free to borrow whatever changes I made. As @sfx2000 said, one of the real pluses of OpenWrt is that you literally have access to make changes anywhere you want.

I know at one point I thought I found some of my code in Fresh Tomato....which is great and the way things should work.

Ignoring all the talk of closed source components for a moment....this is really just me looking for something that could provide what I was looking for
- Real VLAN support which is something I wanted to implement
- Performance. I got good deal from my ISP for Gb service and wanted something that could handle it without having to worry about 'HW acceleration' to do it.
 
Stay there, I'm coming.
You guys are still young pups ;-)
Wait until your late 60’s! That’s when the fun really begins.
Coming from System III, System V, BSD then Linux - incredible that Unix/Linux runs on these SBC’s and routers.
I envy the next generation!
 
@PeterR @sfx2000

Thanks for the comments. My intention was not to update OpenWRT repos in any way. Just build my own private package of Samba from the official Samba source. Not even sure if that is possible under OpenWRT as there does not seem to be any build essential package. Perhaps another reason to learn more toward Ubuntu for the RasPi.

Thanks though for the comments. They were helpful none the less.
 

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top