Centralized Authorization Using a Directory Service, Part II
This defines the primary group IDs for jane to be 42 and for joe to be 57.
With the NIS group map you can add additional, secondary group memberships for accounts. The group entry:
defines a new group projectX with no password (*), group ID 127 and two members. No comments are allowed in the group file.
If you now set up a directory with read/write/execute permissions for group projectX:
# mkdir /projects/X/ # chgrp projectX /projects/X/ # chmod g+wrx /projects/X/
every member in the projectX group has permission to read/write/execute files inside that file space. The user might need to do a newgrp projectX first.
Whenever you need to add or remove accounts to or from the group map, do it on your NIS master server by editing the /etc/NIS/group file and executing the commands:
% cd /var/yp % sudo make group
These generate a new group map that makes the changes visible instantaneously on all clients. There is no need to touch any client to make these changes. Everything now is centralized in one place on your NIS master server.
Netgroups are very different from groups. Netgroups come in two flavors, user netgroups and host netgroups. Both types of netgroups can contain netgroups as members, so netgroup definitions can be hierarchical. Both types of netgroups are defined in the same netgroup file. Comments are allowed in the netgroup file.
Host netgroup definitions in /etc/NIS/netgroup look like this:
# Group of project groups: projects \ projectA \ projectB \ projectX # Group of hosts for Project X projectX \ (host1.example.com,-,) \ (host2.example.com,-,) \ (host3.example.com,-,)
These host netgroup definitions now allow you to, for example, export NFS space only to subsets of your machines. In your NFS server's /etc/exports file, you can use constructs like these:
# export the /projects directory to all machines # in the "projects" netgroup /projects @projects(rw,root_squash) # export Project X' space only to machines # in the "projectX" netgroup /projects/X @projectX(rw,root_squash)
Again, adding or removing hosts or adding/deleting netgroups is a simple edit of the /etc/NIS/netgroup file on your NIS master server. Execute cd /var/yp; sudo make netgroup to update the NIS map, and the changes are visible everywhere instantly.
User netgroups, which are netgroups with accounts as members, typically are used to restrict login to computers. User netgroup definitions look slightly different from host netgroup definitions:
# Group of project user groups u-projects \ u-projectA \ u-projectB \ u-projectX # Group of users in Project X u-projectX \ (-,jane,) \ (-,joe,) \ (-,nick,)
The prefix u- in the names is a convention to distinguish user netgroups from host netgroups.
With these definitions in place, you now can grant or restrict login access to your computers with these kinds of entries in a machine's local /etc/passwd file. Remove a + at the very end of the passwd files if present:
Allow access for all accounts in the u-projects netgroup and no one else:
Allow access for only the u-projectX netgroup members and no one else:
Allow access to everybody in u-projects but not in u-projectX:
Order here is important. The first match determines what happens.
Allow everybody in u-projectA and also account nick
The information about nick (home directory, login shell and so on) comes out of the NIS passwd map. It is better to avoid putting explicit account names in here, because management of these entries is not centralized.
To make this +/- syntax work, your clients need to have the entry
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- My +1 Sword of Productivity
- Managing Linux Using Puppet
- Non-Linux FOSS: Caffeine!
- Tech Tip: Really Simple HTTP Server with Python
- SuperTuxKart 0.9.2 Released
- Google's SwiftShader Released
- Returning Values from Bash Functions
- Parsing an RSS News Feed with a Bash Script
- Control Your Linux Desktop with D-Bus
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide