All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel J Walsh <dwalsh@redhat.com>
To: Karl MacMillan <kmacmillan@tresys.com>
Cc: gyurdiev@redhat.com, "'Joshua Brindle'" <jbrindle@tresys.com>,
	selinux@tycho.nsa.gov
Subject: Re: Iptables discussion
Date: Fri, 22 Jul 2005 10:42:54 -0400	[thread overview]
Message-ID: <42E105EE.6050603@redhat.com> (raw)
In-Reply-To: <200507221419.j6MEJDvx016520@gotham.columbia.tresys.com>

Karl MacMillan wrote:

>>-----Original Message-----
>>From: Ivan Gyurdiev [mailto:gyurdiev@redhat.com]
>>Sent: Friday, July 22, 2005 9:45 AM
>>To: Karl MacMillan
>>Cc: 'Daniel J Walsh'; 'Joshua Brindle'; selinux@tycho.nsa.gov
>>Subject: RE: Iptables discussion
>>
>>
>>    
>>
>>>Solving the user-interface issues can be done more effectively, in my
>>>      
>>>
>>opinion,
>>    
>>
>>>by hiding both iptables and SElinux. My preference would be to extend the
>>>SELinux policy language to be able to express the kind of controls that you
>>>      
>>>
>>are
>>    
>>
>>>interested in expressing and create a configuration tool (gui or text based)
>>>that generates the policy. That would leave a policy.conf or equivalent that
>>>could be analyzed for correctness.
>>>      
>>>
>>I think whatever rules are automatically generated will be at a low
>>level of complexity, because anything else would be better handled by
>>writing policy. Given this, I think it will be trivial to generate
>>additions to policy.conf to address your analysis concern. Where
>>exactly this is done is an implementation detail :)
>>
>>    
>>
>
>Good - after re-reading you and Dan's messages I realized that you might be
>simply suggesting that the iptables program generate SELinux policy. That makes
>sense to me and is consistent with what I am saying about a user-interface. The
>only other comment is that I would like this to be optional. We have a need to
>create systems that have a fixed policy.
>  
>
Yes,  I am suggesting potentially IPTables could generate policy that 
you could check, and I am
not suggesting that you remove the existing policy semantics.  I believe 
that users have a need and
knowledge on how to configue iptables, and many tools have been written 
to allow the mangement of
network security via IPTables.  The enhancement I would be looking for 
is how we could get
iptables to communicate with SELinux to further constrain the system.

I see policy as being somewhat static.  IE We write the core policy that 
will work pretty much the same way
on everyones machine.  The problem is that users have sections of policy 
that will differ.  Users, Ports, Interfaces
on a machine by machine basis.  They have to be able to simply extend or 
modify policy to work better in their environments.
I also see users needing to write small sections of policy, without 
modifying policy sources.  As an example I have a bug
report right now from a user looking to use an app (plugin) with 
squirrelmail to do mail forwarding.   This app gets execed via 
squirrelmail and fails because it needs the setgid capability.  Now if 
the user could write one line of code, he could get the app working the 
way he wants, without having to disable squirrelmail protection or all 
of httpd.  

There are customers that will pay for a customized policy that will lock 
down their system to a security specification and want it proovably 
secure.  There are a lot more customers who will pay for security  that 
they are reasonably certain protects their machine, but are not willing 
to pay someone to customize it.

>  
>
>>What's missing here, is a good API to work with policy, so that you
>>can manipulate policy internals with anything other than checkpolicy.
>>That's why I'm asking for an intermediate representation. My particular
>>implementation of it may not be very good (suggestions welcome),
>>but it's certainly better than what's out there - I don't think
>>passing in policy-dependent integer id's, and exposing internal data
>>structures will make a successful api.
>>    
>>
>
>Why not continue down the path that we have started with libsemanage? I think it
>is better to have a well-defined set of local machine customizations that are
>available via libsemanage than forcing applications to do direct policy
>manipulation. This will, I think, result in an smaller, easier to use API that
>will allow a transition path to the policy server (which will hopefully allow us
>to do these kinds of customizations across multiple machines). It also helps
>with policy updates - by clearly defining local customizations and upstream
>policy it is easier for package managers and admins to handle policy updates.
>
>  
>
I agree.

>Karl
>
>---
>Karl MacMillan
>Tresys Technology
>http://www.tresys.com
>(410) 290-1411 ext 134
>
>
>  
>


-- 



--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.

  parent reply	other threads:[~2005-07-22 14:47 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-21 17:40 [ libsepol 2/6] Ports Ivan Gyurdiev
2005-07-21 18:04 ` Joshua Brindle
2005-07-21 18:06   ` Ivan Gyurdiev
2005-07-21 18:27   ` Ivan Gyurdiev
2005-07-21 19:35     ` Karl MacMillan
2005-07-21 19:38       ` Ivan Gyurdiev
2005-07-21 20:30         ` Karl MacMillan
2005-07-21 20:47           ` Ivan Gyurdiev
2005-07-21 21:06             ` Joshua Brindle
2005-07-21 21:06               ` Ivan Gyurdiev
2005-07-21 21:15                 ` Joshua Brindle
2005-07-21 21:25                   ` Ivan Gyurdiev
2005-07-21 23:34                     ` Joshua Brindle
2005-07-22 11:53                       ` Iptables discussion Ivan Gyurdiev
2005-07-22 12:31                         ` Daniel J Walsh
2005-07-22 12:46                           ` Karl MacMillan
2005-07-22 13:44                             ` Ivan Gyurdiev
2005-07-22 14:19                               ` Karl MacMillan
2005-07-22 14:24                                 ` Ivan Gyurdiev
2005-07-22 15:28                                   ` Karl MacMillan
2005-07-22 18:18                                     ` Ivan Gyurdiev
2005-07-22 18:40                                       ` Karl MacMillan
2005-07-22 19:01                                         ` Ivan Gyurdiev
2005-07-22 14:42                                 ` Daniel J Walsh [this message]
2005-07-22 15:28                                   ` Karl MacMillan
2005-07-22 14:51                                 ` Joshua Brindle
2005-07-22 14:51                               ` Joshua Brindle
2005-07-22 15:39                                 ` Ivan Gyurdiev
2005-07-22 15:57                                   ` Karl MacMillan
2005-07-22 16:14                                     ` Ivan Gyurdiev
2005-07-22 16:31                                       ` Karl MacMillan
2005-07-22 17:59                                         ` Ivan Gyurdiev
2005-07-22 16:28                                     ` Ivan Gyurdiev
2005-07-22 17:28                                   ` Jason Tang
2005-07-22 17:54                                     ` Ivan Gyurdiev
2005-07-22 18:28                                       ` Jason Tang
2005-07-22 18:32                                         ` Ivan Gyurdiev
2005-07-22 19:19                                   ` Joshua Brindle
2005-07-22 19:44                                     ` Ivan Gyurdiev
2005-07-22 19:56                                       ` Joshua Brindle
2005-07-22 20:18                                         ` Ivan Gyurdiev
2005-07-22 20:56                                           ` Ivan Gyurdiev
2005-07-22 15:46                             ` Casey Schaufler
2005-07-22 15:54                               ` Joshua Brindle
2005-07-22 16:11                               ` Frank Mayer
2005-07-22 18:56                                 ` Casey Schaufler
2005-07-24  5:25                           ` James Morris
2005-07-24 15:28                             ` Casey Schaufler
2005-07-25  4:24                               ` James Morris
2005-07-25 15:37                                 ` Daniel J Walsh
2005-07-25 18:24                                   ` Christopher J. PeBenito
2005-07-25 18:28                                     ` Ivan Gyurdiev
2005-07-25 18:43                                       ` Ivan Gyurdiev
2005-07-25 18:55                                         ` Daniel J Walsh
2005-07-25 19:01                                           ` Joshua Brindle
2005-07-25 19:53                                             ` Ivan Gyurdiev
2005-07-25 22:42                                               ` Joshua Brindle
2005-07-26  0:07                                                 ` Ivan Gyurdiev
2005-07-26  0:13                                                   ` Joshua Brindle
2005-07-22 12:37                         ` Karl MacMillan
  -- strict thread matches above, loose matches on Subject: below --
2005-07-22 14:54 Chad Hanson
2005-07-24  5:08 ` James Morris
2005-07-25 21:00 Chad Hanson
2005-07-25 21:04 Chad Hanson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=42E105EE.6050603@redhat.com \
    --to=dwalsh@redhat.com \
    --cc=gyurdiev@redhat.com \
    --cc=jbrindle@tresys.com \
    --cc=kmacmillan@tresys.com \
    --cc=selinux@tycho.nsa.gov \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.