[Cascavel-pm] Editar arquivo como outro usuario.

Rod Za rodzadra em yahoo.com
Segunda Março 28 12:25:17 PST 2005


--- "Alceu R. de Freitas Jr." <glasswalk3r em yahoo.com.br> wrote:
> --- Rod Za <rodzadra em yahoo.com> wrote:
> 
> > Pois é, estou achando todas essas soluções "um pouco
> > meio sem segurança". Se eu liberar o sudo
> > para o usuario 'lp' pode haver uma brecha de
> > segurança, seu eu usar o módulo sudo, tenho q
> > colocar
> > a senha no script. 
> 
> Não pude olhar seu sistema. Mas exatamente o que você
> executa com o usuário lp? Comandos como "lpr" e etc?
> Por que vc não tenta criar scripts separados para cada
> comando que tiver que executar como o usuário 'lp' e
> adiciona esses scripts no sudoers.
> 
> A partir daí você configura o usuário do Apache para
> ter permissões de execução desses scripts.

Na verdade o Apache não tem acesso ao smb.conf. O sistema funciona da seguinte maneira:

o SGQI é um (pseudo)backend para o CUPS. No CUPS os "backends" gerenciam algum tipo de dispositivo
para impressão ex: uma porta lpt, JetDirect, COM, USB, etc.

O que o SGQI faz é simular qualquer "backend" instalado e suportado pelo CUPS. Assim o CUPS
reconhece o SGQI como sendo um "backend" válido e passa os arquivos a serem impressos. O SGQI, por
sua vez faz a contagem de páginas e verifica se o usuário (dono do Job) tem quota suficiente para
poder imprimir. Caso o usuário tenha o SGQI passa o job para o verdadeiro "backend" e a impressão
é efetivada, caso não tenha quota a impressão é cancelada.

Todas as operações são guardadas num banco de dados (a principio estou usando o MySQL). Existe
também um painel de controle via web (CCSGQI) o qual gerencia impressoras, usuários e grupos.

O esquema do SGQI é mais ou menos assim:

                  +---------+
                  | inicio  |
                  +---------+
                       |
            +----------------------+
            | verifica impressora  |<---------------------------------------------------+
            +----------------------+                                                    |
                       |                                                                |         
               
         +-----------------------------------+           +---------------------------+  |         
                    
         | impressora existe no BD/smb.conf? |---NAO---> | cadastra no BD / smb.conf |--+ 
         +-----------------------------------+           +---------------------------+ 
                       |
                      SIM                              
                       |
             +--------------------+
             |  Verifica usuario  |<---------------------------------------+
             +--------------------+                                        |
                       |                                                   |
         +---------------------------------------+                         |
         | usuario existe no Sistema Operacional |-----NAO-----------------)------+ 
         +---------------------------------------+                         |      |
                       |                                                   |      |
                      SIM                                                  |      |
                       |                                                   |      |
            +-----------------------+                  +----------------+  |      |               
       
            | usuario existe no BD? |---NAO----------->| cadastra no BD |--+      |
            +-----------------------+                  +----------------+         |
                       |                                                          |
                      SIM                                                         |
                       |                                                          |
             +--------------------+                                               |
             |  verifica quota    |                                               |
             +--------------------+                                               |
                      |                                                           |
             +--------------------+           +-------------------+               | 
             | usuario tem quota? |---NAO---> | cancela impressão |<--------------+ 
             +--------------------+           +-------------------+  
                      |                                  |           
                     SIM                                 |
                      |                                  |
          +---------------------------+                  |
          |  DEBITA DB / passa o job  |                  |
          | para o backend verdadeiro |                  |
          +---------------------------+                  |
                      |                                  |
                +------------+                           |
                |  gera log  |<--------------------------+
                +------------+
                     |
                    FIM


O sistema roda com a mesma permissão que o servidor de impressão. E o único problema até agora é a
edição automática do arquivo smb.conf.


> > Acho melhor mudar o grupo do arquivo smb.conf para o
> > 'lp' e liberar o acesso de escrita nele para
> > o grupo 'lp'. (O q vc acha?)
> 
> Liberar o acesso de escrita ao smb.conf? Eu acho
> loucura. :-)

Eu não estou vendo muita diferença entre usar o SUDO e a permissão de escrita para o grupo 'lp'
neste arquivo. tem?

> 
> > Quanto ao site, eu estou meio decepcionado com o
> > codigolivre.org.br - sempre está fora do ar!
> > Estou movendo (ou pelo menos tentando mover ) o
> > projeto  SGQI para o site do governo
> > http://colaborar.softwarelivre.gov.br. Mas se quiser
> > posso te enviar o arquivo contendo a nova
> > versão do SGQI (ela trabalha como um backend para o
> > CUPS).
> 
> Eu uso o Sourceforge. É lerdo, mas funciona. ;-)

A minha opção por não usar o Sourceforge veio primeiro da minha incapacidade de escrever inglês
bem o suficiente para os caras lá entenderem e aprovarem meu projeto:), Depois dessa "decepção" eu
achei melhor manter o projeto aqui no Brasil mesmo! :)


>  
> > brigadão,
> 
> Não por isso. Mexer com servidores Samba é um barato,
> é uma pena eu não ter podido trabalhar mais com ele.
> Mesmo meu projeto está paradão.

cara, eu já trabalhei tanto com samba (substituindo NT) que já até perdi a conta. É realmente um
dos melhores software open-source que existe, só acho que as vezes demora um pouquinho para
ocorrer mudanças mais significativas (como ocorreu do samba 2x pro 3x). 

Mas vou aproveitar e dar uma olhadinha no seu FAUS e aprender um pouquinho sobre CGI - não sei
absolutamente nada:) Ou existe meios melhores de se programar em Perl para WEB (mod_perl)? 

> 
> Quando você o website estiver ok, por favor nos mande
> a url! :-D

Lógico q mando sim! :)

[]ção!



		
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - 250MB free storage. Do more. Manage less. 
http://info.mail.yahoo.com/mail_250


Mais detalhes sobre a lista de discussão Cascavel-pm