netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC] SECMARK 1.0
@ 2006-05-07 15:31 James Morris
  2006-05-07 15:33 ` [RFC] [SECMARK 01/08] Add secmark support to core networking James Morris
                   ` (13 more replies)
  0 siblings, 14 replies; 41+ messages in thread
From: James Morris @ 2006-05-07 15:31 UTC (permalink / raw)
  To: selinux; +Cc: netdev, netfilter-devel, Stephen Smalley, Daniel J Walsh

The following patchsets implement a new scheme for adding security 
markings to packets via iptables, as well as changes to SELinux to use 
these markings for security policy enforcement.

Along with these patches, assorted files including policy examples and 
patches for SELinux userland may be found at:
http://people.redhat.com/jmorris/selinux/secmark/

The requirements for secmark arise from the current per-packet network 
controls in SELinux, which are rudimentary, and not as expressive or 
powerful as the controls provided by Netfilter/iptables.

Thus, the idea is to leverage Netfilter/iptables for packet selection and 
labeling, so that SELinux can have more powerful and expressive network 
controls.  This also allows for increased security, as the policy is more 
effective, allowing access to the full range of iptables selectors and 
support mechanisms.

For example, SELinux will now be able to utilize connection tracking, so 
that only packets which are known to be valid for a specific connection 
will be allowed to reach the subject.

Sample iptables rules for labeling packets are at:
http://people.redhat.com/jmorris/selinux/secmark/rules/

And examples of new policy controls may be found here:
http://people.redhat.com/jmorris/selinux/secmark/policy/


The sample policy for ftpd demonstrates how the vsftpd server can be 
confined so that it only receives SYN packets on the ftp control port for 
new connections, as well as any packets related to the ftp control or data 
connections and related ICMP packets.  It is also allowed to send DNS 
requests.

Note that only the per-packet network controls are being replaced -- the 
existing socket-based controls such as name_bind, node_bind and 
name_connect are being retained as they are useful for applications in 
that they return error messages in response to socket calls, and prevent, 
for example, an application from binding to specific local IP addresses.

Also, this local packet marking is orthogonal to the xfrm network labeling 
(which is for mediating access based on the security context of the 
endpoints across a network connection).


Please review these patches and let me know if there are any queries.

I would like to get the kernel components upstream in the 2.6.18 merge 
window.


- James
-- 
James Morris
<jmorris@namei.org>

^ permalink raw reply	[flat|nested] 41+ messages in thread

end of thread, other threads:[~2006-05-17 14:56 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-07 15:31 [RFC] SECMARK 1.0 James Morris
2006-05-07 15:33 ` [RFC] [SECMARK 01/08] Add secmark support to core networking James Morris
2006-05-07 15:34 ` [RFC][SECMARK 02/08] Export selinux_string_to_sid from SELinux James Morris
2006-05-07 15:35 ` [RFC][SECMARK 03/08] Add xtables SECMARK target James Morris
2006-05-10  6:03   ` Patrick McHardy
2006-05-10 13:30     ` James Morris
2006-05-11  7:06       ` Patrick McHardy
2006-05-07 15:36 ` [RFC][SECMARK 04/08] Add new flask definitions to SELinux James Morris
2006-05-07 15:37 ` [RFC][SECMARK 05/08] Add new packet controls " James Morris
2006-05-07 15:38 ` [RFC][SECMARK 06/08] Define a relabelto permission in the SELinux packet class James Morris
2006-05-07 15:39 ` [RFC][SECMARK 07/08] Add selinux_relabel_packet_permission() to SELinux API James Morris
2006-05-07 15:40 ` [RFC][SECMARK 08/08] Add selinux_relabel_packet_permission() check to xt_SECMARK James Morris
2006-05-08 17:54   ` Karl MacMillan
2006-05-08 21:19     ` James Morris
2006-05-07 15:42 ` [RFC][SECMARK userland 01/03] Add libselinux support James Morris
2006-05-07 15:43 ` [RFC][SECMARK userland 02/03] Add libipt_SECMARK James Morris
2006-05-07 15:44 ` [RFC][SECMARK userland 03/03] Add libip6t_SECMARK James Morris
2006-05-07 17:04 ` [RFC] SECMARK 1.0 Joshua Brindle
2006-05-07 17:43   ` James Morris
2006-05-08 17:41     ` Karl MacMillan
2006-05-08 21:29       ` James Morris
2006-05-09 13:24         ` Karl MacMillan
2006-05-09 16:40           ` James Morris
2006-05-09 17:06             ` Karl MacMillan
2006-05-09 18:56               ` James Morris
2006-05-09 17:11             ` Stephen Smalley
2006-05-07 17:44 ` James Morris
2006-05-14  6:03 ` [RFC] SECMARK 1.1 James Morris
2006-05-14 18:37   ` Patrick McHardy
2006-05-15  4:24     ` James Morris
2006-05-15  5:29       ` Patrick McHardy
2006-05-15  5:57         ` James Morris
2006-05-15  6:04           ` Patrick McHardy
2006-05-15  6:22             ` James Morris
2006-05-15  6:26               ` Patrick McHardy
2006-05-15  6:37                 ` James Morris
2006-05-15  6:42                   ` James Morris
2006-05-15  6:43                   ` Patrick McHardy
2006-05-15 12:35   ` Karl MacMillan
2006-05-17 13:36   ` Thomas Bleher
2006-05-17 14:56     ` James Morris

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).