Ambiente
Distribuição: CentOS7
Kernel: 3.10.0-427.10.1.lve1.4.7.el7.x86_64
.
Cenário
Este é um ambiente de hospedagem compartilhada e acabei de perceber que apenas /dev/mqueue
e /dev/shm
tem 1777
permissões ( /tmp
e /var/tmp
também, mas elas estão fora de questão aqui).
Questões
- Isso representa uma ameaça à segurança do servidor? Por exemplo, um usuário do sistema pode ocupar os diretórios com lixo inútil e preencher sua cota de disco;
- Dado que todo o
/dev
diretório está montadodevtmpfs
, isso significa que tudo será liberado/excluído do diretório assim que ocorrer uma reinicialização? - Qual é a diferença entre
tmpfs
edevtmpfs
?
Aqui está o que está montado atualmente:
Filesystem Size Used Avail Use% Mounted on
/dev/sdi1 148G 730M 140G 1% /
devtmpfs 59G 0 59G 0% /dev
tmpfs 59G 0 59G 0% /dev/shm
tmpfs 59G 4.1G 55G 7% /run
tmpfs 59G 0 59G 0% /sys/fs/cgroup
/dev/sdh1 148G 14G 127G 10% /usr
/dev/sda1 2.0G 269M 1.6G 15% /boot
/dev/sdg1 148G 7.7G 133G 6% /var
/dev/sdd1 148G 468M 140G 1% /tmp
/dev/sdc1 493G 13G 455G 3% /ssd
/dev/sde1 493G 37G 431G 8% /localbkp
/dev/sdf1 8.0T 515G 7.1T 7% /home
tmpfs 12G 0 12G 0% /run/user/0
tmpfs 12G 0 12G 0% /run/user/1242
tmpfs 12G 0 12G 0% /run/user/1507
tmpfs 12G 0 12G 0% /run/user/1812
Obrigado.
Responder1
Isso representa uma ameaça à segurança do servidor? Por exemplo, um usuário do sistema pode ocupar os diretórios com lixo inútil e preencher sua cota de disco;
Claro, mas eles já podem preencher a memória injetando malloc()
demais de qualquer maneira (sim, você pode usar ulimit()
, mas esse é um limite por processo). Se quiser proteger os usuários do uso de memória uns dos outros, você terá que colocá-los em contêineres diferentes.
Dado que todo o
/dev
diretório está montadodevtmpfs
, isso significa que tudo será liberado/excluído do diretório assim que ocorrer uma reinicialização?
Sim.
Qual é a diferença entre
tmpfs
edevtmpfs
?
CONFIG_DEVTMPFS
Da documentação do kernel :
Isso cria um sistema de arquivos tmpfs e o monta na inicialização e em/dev. O núcleo do driver do kernel cria nós de dispositivos para todos os dispositivos registrados nesse sistema de arquivos. Todos os nós do dispositivo pertencem à raiz e têm o modo padrão 0600. O espaço do usuário pode adicionar e excluir os nós conforme necessário. O objetivo é simplificar a inicialização e tornar possível atrasar o coldplug inicial na inicialização feita pelo udev no espaço do usuário. Ele também deve fornecer uma maneira mais simples para os sistemas de resgate criarem um kernel com números maiores/secundários dinâmicos. Links simbólicos significativos, permissões e propriedade de dispositivos ainda devem ser gerenciados pelo espaço do usuário.