Samba-3 by Example

Pros: Examples, Covers not only Samba, but also Samba interaction with other software, good as a reference

Cons: (small) bad picture quality

Overall, it's a good book. It shows many configuration file examples you can simply implement in your network. In fact it's not a Samba book - it's rather a book about networking solution using Samba (CUPS, DHCP, OpenLDAP and Bind configuration is also discussed).

Let mi first write who is this book for. It's rather not for a person who'd like to just share files between two machines. Solution for such a configuration can be found, but the book is about something else. It's rather about big networks. It may be also hard to read for someone with no networking knowledge (need to know something about: IP addresses, UDP, routing).

If you're not using RedHat or SuSE, you need to know how to install software in your distribution and how to find what you need to install. The author shows step-by-step installation instructions for RH or SuSE (depending on the chapter), but nothing about compiling from source.

The book starts from an interesting (but a bit out of place) chapter showing raw network traffic when using Samba (may be really hard to read for someone who doesn't know what's IP, UDP and broadcast). Then a simple configuration (filesharing, anonymous and with passwords, with printer access) is shown. In third chapter there's about Samba with DHCP, 4th one adds DNSes and so on. The books ends with a network for hundreds of users using Samba with LDAP and Kerberos. Many people may find the chapter about NT4 to Samba migration useful.

Every chapter has a clear structure. After a short passage showing what will be covered, a problem is presented. The whole book uses an example of a growing company (too big growth, probably not to be found in the real life ;) ). The author shows a number of user the configuration will work for. Other limitations (not only hardware/software, but also those like: 'it has to be exactly like before') are also presented. Then a networking topology is shown, explained and discussed. I really like the discussion parts - you can learn *why* the decision was made this way. After the discussion, implementation description starts. It's step-by-step. Certain parts are repeated in more than one chapter, but I think it's a good thing - the book can work as a reference when you just want a working configuration fast. All configuration files are also available on a CD-ROM. For me it's also nice that client (Windows client) configuration is described in detail. At the end of most chapters you can find a short summary ('Key Points Learned') and a FAQ.

I really like the approach, it's not a 'describe-every-option' type of book. If an option is important for the solution presented - it's explained. But the book is more about Samba-based solutions. It shows Samba configuration, but not in a wider context. Example: using Samba for Squid authentication.

There are also small, nice things like (probably off-topic) short discussion about DHCP and static IPs, bandwith discussion when talking about roaming profiles. There are many more.

Of course, not everything is perfect. I don't like the quality of networking topologies (and also other schemes) quality. What's interesting is that screenshots look well.

The second thing is very small. The book covers RedHat and SuSE (package installation part). The author explains his decision and I understand the reasons. It's probably a good way to make the installation/configuration easier for people with not big Linux experience (package names and commands used to install them are shown). But I still don't like it.

As the author clearly states, the book is not about security. So the solutions are not as secure as they could be. You need to make them better on your own. But the decision is fully understandable for me. It's long (more than 300 pages) book and with secure solutions it would be much longer (and probably harder to read).

To sum up, it's a good book. I've learned many things and will for sure make a use of it during my next Samba implementation.