Vetar arquivos no Unix para permitir somente * .PDF

0

Bem, tenho o seguinte cenário:

  • Na minha empresa há uma pasta compartilhada do Samba \10.0.0.1\pdfsonly ;
  • Essa pasta é compartilhada com todos na empresa e sua finalidade é armazenar documentos digitalizados em formato PDF;
  • É (pelo menos) inseguro permitir que as pessoas adicionem arquivos lá, então pensamos em proibir a adição de arquivos diferentes do * .PDF lá;
  • No Samba, você pode configurar os parâmetros veto files apenas para curingas que serão proibidos.

Assim, nossos esforços nos levam ao seguinte veto files config (algumas quebras de linha são incluídas para melhor leitura):

veto files = /*.a*/*.b*/*.c*/*.d*/*.e*/*.f*/*.g*/*.h*/*.i*/*.j*/*.k*
             /*.l*/*.m*/*.n*/*.o*/*.q*/*.r/*.s*/*.t*/*.u*/*.v*/*.w*
             /*.x*/*.y*/*.z*/*.0*/*.1*/*.2*/*.3*/*.4*/*.5*/*.6*/*.7*
             /*.8*/*.9*/*.pa*/*.pb*/*.pc*/*.pe*/*.pf*/*.pg*/*.ph*
             /*.pi*/*.pj*/*.pk*/*.pl*/*.pm*/*.pn*/*.po*/*.pp*/*.pq*
             /*.pr/*.ps*/*.pt*/*.pu*/*.pv*/*.pw*/*.px*/*.py*/*.pz*
             /*.p0*/*.p1*/*.p2*/*.p3*/*.p4*/*.p5*/*.p6*/*.p7*/*.p8*
             /*.p9*/*.pda*/*.pdb*/*.pdc*/*.pdd*/*.pde*/*.pdg*/*.pdh*
             /*.pdi*/*.pdj*/*.pdk*/*.pdl*/*.pdm*/*.pdn*/*.pdo*/*.pdp*
             /*.pdq*/*.pdr/*.pds*/*.pdt*/*.pdu*/*.pdv*/*.pdw*/*.pdx*
             /*.pdy*/*.pdz*/*.pd0*/*.pd1*/*.pd2*/*.pd3*/*.pd4*/*.pd5*
             /*.pd6*/*.pd7*/*.pd8*/*.pd9*/*.pdfa*/*.pdfb*/*.pdfc*/*.pdfd*
             /*.pdfe*/*.pdff/*.pdfg*/*.pdfh*/*.pdfi*/*.pdfj*/*.pdfk*
             /*.pdfl*/*.pdfm*/*.pdfn*/*.pdfo*/*.pdfp*/*.pdfq*/*.pdfr
             /*.pdfs*/*.pdft*/*.pdfu*/*.pdfv*/*.pdfw*/*.pdfx*/*.pdfy*
             /*.pdfz*/*.pdf0*/*.pdf1*/*.pdf2*/*.pdf3*/*.pdf4*/*.pdf5*
             /*.pdf6*/*.pdf7*/*.pdf8*/*.pdf9*/*.?/*.??

Resumindo, não permite que o servidor receba:

  • Arquivos com 1 ou 2 caracteres na extensão do arquivo;
  • Arquivos com extensão começando com [a-z] ou [0-9], exceto com p;
  • Arquivos com extensão começando com p, seguido por [a-z] ou [0-9], exceto por d;
  • Arquivos com extensão começando com p, seguido por d, seguido por [a-z] ou [0-9], exceto por f;
  • Arquivos com extensão começando com p, seguido por d, seguido por f, seguido por ([a-z] ou [0-9]) e mais caracteres.

Mas temos os seguintes tipos de arquivos que não podemos bloquear:

  • Arquivos sem extensão;
  • Extensão de arquivos começando com "caracteres especiais" ou com eles seguindo p ou pd ou pdf (não [a-z] nem [0-9]).

Os seguintes problemas podem ocorrer se usarmos como estão:

  • Pessoas sem superusuário podem adicionar arquivos PDF sem extensão ou com extensão incorreta, para que outras pessoas sem superusuário não encontrem ou abram o arquivo;
  • Softwares / scripts / pessoas mal-intencionados podem armazenar arquivos sem extensão ou com extensão incorreta como parte de algum tipo de ataque.

Então, ajude, por favor!

  • Para otimizar o% atualveto files config;
  • Para adicionar configuração para proibir arquivos sem extensão ou com extensões diferentes de * .pdf
por kokbira 07.11.2017 / 21:14

1 resposta

4

Em primeiro lugar, você diz que isso é para armazenar digitalizações - você não apenas pode torná-lo somente para leitura, dá ao scanner um usuário com permissões de leitura / gravação e todos ficariam felizes?

Files without extension;

Parece não haver nenhuma maneira documentada de realizar isso atualmente usando as opções de veto de arquivos do samba. Curiosamente, um recurso de "arquivos de veto reverso" foi solicitado e em uma lista de "tarefas" ... 11 anos atrás!

Files extension beginning with "special characters" or with them following p or pd or pdf (not [a-z] nor [0-9]).

É provável que você precise escapar disso, usando \ antes do caractere especial. No entanto, você deve, ao invés disso, pedir aos usuários que não façam esse tipo de coisa.

Uma solução totalmente separada poderia ser criada usando o cron e uma instrução find, algo como

find -not -name "*.pdf" /directory -delete , o que excluiria todos os arquivos que não terminam com .pdf .

    
por 07.11.2017 / 21:27

Tags