Tthe FTP service uses RFC 931 for user identification, which isn’t supported in Mac OS X (why we’ll move on to other FTP servers in the future). To resolve, add the -I option in the xinetd configuration as you see here:
disable = no
instances = 100
socket_type = stream
wait = no
user = root
server = /usr/libexec/xftpd
server_args = -aI
groups = yes
Best log analyzer ever. For centralizing and reviewing logs on lots of servers it’s a must have.
To list the files in a directory with the permissions for files, use the following command (assuming you’re in the working directory you would like to list files for:
If you take an email address like my iCloud account, it’s email@example.com. If I take the username and add a + at the end I can then type some characters and put it all in front of the @ and domain name then the mail will still come to me. So, let’s say I use it to create an AppleID for an APNS certificate. That would be:
Or iPhone1 (or these days iPad1):
The only gotcha is that occasionally you’ll run into some field on a webpage that has input validation for non alpha-numeric characters. Shouldn’t be the case, but it comes up from time to time. I use this a lot. For example, rather than use my email w/ my credit card company, I can use krypted+SOMECOMPANY@me.com and then I can create filters in Mail a little more easily for mail that comes from them. The best part about that is that it then shows me really easily who is selling my information that shouldn’t. For example, you’d think SOMECOMPANY gets enough $ out of me as a paying customer, but apparently not because they’ve sold my email address to at least 3 or 4 companies.
The cron command has officially been deprecated in Mac OS X, but still functions if called upon. cron starts a process that executes commands at specified dates and times. Regularly scheduled commands can be specified according to instructions found in the crontab files in the directory /var/spool/cron/crontabs. Users can submit their own crontab files via the crontab command. Crontab copies the specified file or standard input if no file is specified, into a directory that holds all users’ crontabs. crontab options:
- The -e option edits a copy of the current users’ crontab file or creates an empty file to edit if crontab does not exist.
- The-r option removes a user’s crontab from the crontab directory.
- The -l options lists the crontab file for the invoking user.
A crontab file consists of lines of six fields each.The fields are separated by spaces or tabs. The first five are integers that specify the following (in order):
- minute (0-59)
- hour (0-23)
- day of the month (1-31)
- month of the year (1-12)
- day of the week (0-6 with 0=Sunday)
Each of these patterns may be either an asterisk (meaning all valid values) or a list of elements separated by commas. An element is either a number or two numbers separated by a minus sign ( meaning an inclusive range). Notice the time is in 24 hour format, 0 is midnight and 13 is one in the afternoon. The * wildcard can be used to run on every instance of a given object.
The sixth field of a line in a crontab file is a string to be executed by the shell at the specified times by the first fife fields. A percent character in this field (unless escaped by ) is translated to a newline character. Only the first line (up to a % or end of line) of the command field is executed by the shell. The other lines are made available to the command as standard input.
Any line beginning with a # is a comment and is ignored.
Someone asked me the other day how to setup OS X to log sudo events. Well, there’s nothing to do. Whether the password used with sudo is right or wrong, all attempts to authenticate through sudo are logged.
The vnode table represents all file activity in UNIX. There is a unique vnode allocated in the vnode table for each active file, each current directory, each mounted-on file, text file, and the root. To see the number of vnodes available in Mac OS X, look to sysctl for the kern.maxvnodes variable using something similar to the following command:
sysctl -A | grep vnode
Control access by editing the SSH configuration file and using the AllowUsers directive like so:
To add multiple entries, either separate users with a space:
AllowUsers cedge kklein
Or you can write an entirely new line: