Are you interested in the syscalls on sockets specifically, or are you  
interested in the network connections underlying these calls instead ?
You could use netfilter/conntrack instead of auditd if your interest  
really is the network connections rather than sockets. You'll get notified  
of the various TCP states, so even if a socket is closed rather than  
shutdown (say when a process dies), you should be able to know about it  
that way.
Thanks,
Hassan
On Fri, 19 Dec 2014 06:37:15 -0800, Steve Grubb <sgrubb(a)redhat.com> wrote:
 On Friday, December 19, 2014 02:06:52 PM Jie Cui wrote:
> How to audit socket close system call?
 There's not a good answer on that one.
> I can audit the socket connection by 'connect' system call.
> I can also audit the socket termination by 'shutdown' system call.
> But I can't figure out how to audit when the socket is closed.
 In the past, the kernel developers said that is an exercise left to post
 processing in user space. Meaning that we'd have to collect everything  
 and
 then sort it out after the fact. You have the FD returned from  
 socket(2). So,
 you can audit closes and then match the FD.
 Unfortunately, you'll get all closes for all programs unless you had  
 some way
 to restrict it to the process in question. There is a patch under  
 development
 for audit by process name. That would at least have allowed restricting  
 closes
 to a particular program which would be more manageable.
> Does the 'close' system call works?
 Yes.
> However all the file close events will also be auditing. That's not  
> what I
> want.
 I can understand. But, there is nothing in the present kernel except pid,
 auid, and subj_type to restrict the auditing in a logical way. If you can
 think of another way, please propose it. But all the kernel has to work  
 with
 is an fd number and what's in the process struct. Audit by process name  
 holds
 the most hope for limiting what gets collected.
 -Steve
 --
 Linux-audit mailing list
 Linux-audit(a)redhat.com
 
https://www.redhat.com/mailman/listinfo/linux-audit