I know Jeff :(

I don't own the system and can't change sudo, even at 50% I use Fabric
extensively.
And I regret to not be able to use it more.
I just ask myself about append
fabric.contrib.files.append(*filename*, *text*, *use_sudo=False*, *
partial=False*, *escape=True*, *shell=False*)

Even using shell=True bash is still requiered.

Thank you Jeff for Fabric.



On Thu, Sep 26, 2013 at 12:51 PM, Jeff Forcier <j...@bitprophet.org> wrote:

> Hi Julien,
>
> Unfortunately one can't have both a locked-down sudoers configuration
> *and* allow bash as a sudo command - doesn't make sense.
>
> If you own the system and can change the sudoers config, then that
> tradeoff is up to you. If policy prevents you from doing so, then
> you're mostly stuck using "non-shell" commands, as you mentioned.
>
> -Jeff
>
>
> On Thu, Sep 26, 2013 at 9:19 AM, julien silverston
> <julien.silvers...@gmail.com> wrote:
> > Hello Ronan,
> >
> > You're right, works fine.
> >
> > But without bash I'm losing Fabric killer features :
> >
> > I mean, can't use anymore :
> >
> > "with cd"
> > sudo('command xx | command yy')
> > sudo('echo xxx > /etc/X.conf')
> > or fabric.contrib llike append despite using shell=False
> >
> > Do you know any workaround ?
> >
> > Thnak you
> >
> > Julien
> >
> >
> > On Thu, Aug 22, 2013 at 11:11 AM, Ronan Amicel <ronan.ami...@gmail.com>
> > wrote:
> >>
> >> Hi Julien,
> >>
> >> Have you tried using the "shell" argument to disable shell wrapping?
> e.g.
> >>
> >>     sudo('uptime', shell=False)
> >>
> >> See
> >>
> http://docs.fabfile.org/en/1.7/api/core/operations.html#fabric.operations.run
> >>
> >> Regards,
> >>
> >> Ronan Amicel
> >>
> >>
> >> On Thu, Aug 22, 2013 at 12:34 AM, julien silverston
> >> <julien.silvers...@gmail.com> wrote:
> >>>
> >>> Hello,
> >>>
> >>> I'm very please with Fabric and I use it with a lot success to manage
> my
> >>> servers.
> >>> Even convinced my collegues to use it.
> >>> But actually for security reason, mostly to avoid shell escape I can't
> >>> use it.
> >>>
> >>> As exemple I do with sudo :
> >>>
> >>> @task
> >>> def host_type():
> >>>     run('sudo su -c "uname -a"')
> >>>     sudo('uptime')
> >>>
> >>>
> >>> [serverX] Executing task 'host_type'
> >>> [serverX] run: sudo su -c "uname -a"
> >>> [serverX] Login password for 'me':
> >>> [serverX] out: [sudo] password for me:
> >>> [serverX] out: Sorry, user me is not allowed to execute '/bin/su -c
> uname
> >>> -a' as root on serverX.
> >>> [serverX] out:
> >>>
> >>> Warning: run() received nonzero return code 1 while executing 'sudo su
> -c
> >>> "uname -a"'!
> >>>
> >>> [serverX] sudo: uptime
> >>> [serverX] out: sudo password:
> >>> [serverX] out: Sorry, user me is not allowed to execute '/bin/bash -l
> -c
> >>> uptime' as root on serverX.
> >>> [serverX] out:
> >>>
> >>>
> >>> Warning: sudo() received nonzero return code 1 while executing
> 'uptime'!
> >>>
> >>> I know how to setup sudoers, but for company policies I can't change
> it.
> >>>
> >>> sudoers contains :
> >>> !/bin/bash,!/bin/su
> >>>
> >>> I tried to use env.shell = "" , pty=False but with no success.
> >>>
> >>> How I can update Fabric and others framework, like cuisine to continue
> to
> >>> use Fabric despite this rule that I can't change.
> >>>
> >>> I can change all sudo command for run('sudo xxx') but will ask my
> >>> password each time and I can use cuisine anymore.
> >>>
> >>> Thank you,
> >>>
> >>> Julien
> >>>
> >>> _______________________________________________
> >>> Fab-user mailing list
> >>> Fab-user@nongnu.org
> >>> https://lists.nongnu.org/mailman/listinfo/fab-user
> >>>
> >>
> >
> >
> > _______________________________________________
> > Fab-user mailing list
> > Fab-user@nongnu.org
> > https://lists.nongnu.org/mailman/listinfo/fab-user
> >
>
>
>
> --
> Jeff Forcier
> Unix sysadmin; Python/Ruby engineer
> http://bitprophet.org
>
_______________________________________________
Fab-user mailing list
Fab-user@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fab-user

Reply via email to