php watchdog
DESCRIPTION
PHP Watchdog integra-se ao iptables e ao SSH com o objetivo de abrir portas e túneis sob demanda por um período determinado. O usuário deve se autenticar para liberar regras pré-definidas. O administrador pode optar por receber um pedido de autorização no momento do acesso, com a capacidade de liberar ou bloquear o ticket. Pode substituir o port knocking e a VPN convencional em alguns casos.TRANSCRIPT
![Page 1: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/1.jpg)
Ricardo [email protected]
![Page 2: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/2.jpg)
Motivação
● Acesso a PostgreSQL alterando pg_hba.conf
● Novas demandas exigiram uso de túneis SSH e escrita NetFilter
● Removido uso de túneis SSH no início do mês
![Page 3: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/3.jpg)
Onde se encaixa
● Camada adicional de segurança. Não deve ser a única
● Serviços em portas alternativas
● Senhas fortes para os serviços críticos
● HTTPS!!!
![Page 4: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/4.jpg)
Queríamos evitar
● Escrita de regras de firewall na camada de aplicação
● Complexidade no lado cliente:● Port Knocking● VPN● Túneis SSH
– Acesso desnecessário
![Page 5: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/5.jpg)
#!/bin/bashScripts com acesso ao iptables
/var/watchdog/bin/enable_rule.sh/var/watchdog/bin/enable_gracetime_rule.sh/var/watchdog/bin/disable_rule.sh/var/watchdog/bin/deactivate_rule.sh/var/watchdog/bin/schedule_disable_rule.sh
/etc/sudoersDefaults:www-data env_keep+="PHPWD_*"www-data ALL=(root)
NOPASSWD:/var/watchdog/bin/enable_rule.shNOPASSWD:/var/watchdog/bin/enable_gracetime_rule.shNOPASSWD:/var/watchdog/bin/disable_rule.shNOPASSWD:/var/watchdog/bin/deactivate_rule.shNOPASSWD:/var/watchdog/bin/schedule_disable_rule.sh
![Page 6: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/6.jpg)
<?php
?>
config.phpdefine('PHPWD_BINARY_DIR', '/var/watchdog/bin/');
cRuleFile.php`/usr/bin/sudo /var/watchdog/bin/enable_rule example.rule`
![Page 7: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/7.jpg)
Simplicidade
● Quatro passos rápidos:● Download● Configurar segurança
de pastas● Autorizar minimamente
o Apache● Configurar o envio de
E-mail/SMS
![Page 8: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/8.jpg)
Simplicidade
● Quatro passos rápidos:● Download● Configurar segurança
de pastas● Autorizar minimamente
o Apache● Configurar o envio de
E-mail/SMS
http://www.nexy.com.br/phpwd.tar.bz2
![Page 9: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/9.jpg)
Simplicidade
● Quatro passos rápidos:● Download● Configurar segurança
de pastas● Autorizar minimamente
o Apache● Configurar o envio de
E-mail/SMS
chown -R root:root /var/watchdog/*chmod -R o-w /var/watchdog/*
![Page 10: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/10.jpg)
Simplicidade
● Quatro passos rápidos:● Download● Configurar segurança
de pastas● Autorizar minimamente
o Apache● Configurar o envio de
E-mail/SMS
Defaults:www-data env_keep+="PHPWD_*"www-data ALL=(root) N.../bin/enable_rule.shwww-data ALL=(root) N.../enable_gracetime_rule.shwww-data ALL=(root) N.../bin/disable_rule.shwww-data ALL=(root) N.../bin/deactivate_rule.shwww-data ALL=(root) N.../schedule_disable_rule.sh
![Page 11: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/11.jpg)
Simplicidade
● Quatro passos rápidos:● Download● Configurar segurança
de pastas● Autorizar minimamente
o Apache● Configurar o envio de
E-mail/SMS
sudo apt-get install php-pearsudo pear channel-update pear.php.netsudo pear install Mailsudo pear install Net_SMTPsudo pear install Net_Socketsudo apt-get install gnokiisudo vi /etc/gnokiirc
port = /dev/ttyUSB0use_locking = no
![Page 12: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/12.jpg)
O futuro
● Cliente GTK para escrita de arquivos de regras
● Suporte a aviso fonado de ativação
● Contador de ativações (tickets)
● Interface de verdade
![Page 13: Php WatchDog](https://reader033.vdocuments.mx/reader033/viewer/2022052217/559498f01a28abfe1e8b4743/html5/thumbnails/13.jpg)
Dúvidas?
Lie Time PHPConfBR