Servidor FTP com NetBSD (PureFTPD + MySQL)

cvs

Vamos falar sobre a instalação de um servidor ftp usando NetBSD, que tentando aproveitar sua portabilidade e sua robustez, quem sabe não rola instalar um servidor de ftp na geladeira ou no fogão? hehehe...

[ Hits: 25.229 ]

Por: Thiago Alves em 04/10/2007 | Blog: http://www.seeufosseopresidente.com.br


Script para administrar o ftp



Bom, agora vamos ao script que acabei de escrever agora.... hehehehe. E testado, totalmente testado.

#!`which bash`
#
# Script criado para administrar contas do servidor de ftp
# que estão no mysql.
#
# Criado por Thiago Alves dos Santos 12/11/2007
# thiago<arroba>gmail<ponto>com


MYSQL=`which mysql`
PWD=`pwd`
INICIO="sh $PWD/adminftp.sh"
USERDB=XXXXXXXX
DB=XXXXXXX
PWDDB="XXXXXX"
criar_usuario() {
    clear
    $MYSQL -u $USERDB -p$PWDDB -e "select * from ftpusers" $DB
    echo "              Criacao de Usuarios para FTP"
    echo
    echo -n "           Informe o id(valor unico): "
    read ID
    echo -n "           Informe o nome do usuario: "
    read USERNAME
    echo -n "           Informe senha: "
    read PASSWORD
    sleep 2
    $MYSQL  -u $USERDB -p$PWDDB -e "insert into ftpusers  values($ID,'$USERNAME','$PASSWORD','80','80','/ftp/$USERNAME/',1,100,0,0,0,0,0)" $DB
    sleep 2
    mkdir -p /ftp/$USERNAME
    chown -R 80.80 /ftp
    echo
    echo "      Usuario $USERNAME criado com sucesso"
    echo "      Senha $PASSWORD"
    read f
}

desativa_usuario() {
    clear
    echo "              Desativando Usuario"
    echo
    echo
    $MYSQL -u $USERDB -p$PWDDB -e "select * from ftpusers" $DB
    echo
    echo -n "           Informe o nome do usuario: "
    read USERNAME
    sleep 3
    $MYSQL -u $USERDB -p$PWDDB -e "update ftpusers set active=0 where username='$USERNAME'" $DB
    echo
    echo "              Usuario $USERNAME desativado"
    read f
}
ativa_usuario() {
    clear
    echo "              Desativando Usuario"
    echo
    echo
    $MYSQL -u $USERDB -p$PWDDB -e "select * from ftpusers" $DB
    echo
    echo -n "           Informe o nome do usuario: "
    read USERNAME
    sleep 3
    $MYSQL -u $USERDB -p$PWDDB -e "update ftpusers set active=1 where username='$USERNAME'" $DB
    echo
    echo "              Usuario $USERNAME ativado"
    read f
}

altera_senha() {
    clear
    echo
    echo "              Alterando Senha"
    echo
    echo -n "           Informe o nome do usuario: "
    read USERNAME
    echo -n "           Informe nova senha: "
    read PASSWD
    $MYSQL -u $USERDB -p$PWDDB -e "update ftpusers set password='$PASSWD' where username='$USERNAME'" $DB
    echo
    echo "              Senha Alterada para $PASSWD"
    read f
}


altera_quota(){
    clear
    echo
    echo "              Alterando Quota"
    echo
    $MYSQL -u $USERDB -p$PWDDB -e "select * from ftpusers" $DB
    echo
    echo -n "           Informe o usuario que deseja alterar: "
    read USERNAME
    echo -n "           Informe nova quota(MB): "
    read QUOTA
    sleep 3
    $MYSQL -u $USERDB -p$PWDDB -e "update ftpusers set Quota=$QUOTA where username='$USERNAME'" $DB
    echo
    echo "              Quota Alterada"
    read f
}

lista_usuario(){
    clear
    echo
    echo "              Listando Usuarios"
    echo
    echo
    $MYSQL -u $USERDB -p$PWDDB -e "select * from ftpusers" $DB
    echo
    echo "              Aperte Enter para sair"
    read f
}
opcao_invalida(){
    echo "################################################"
    echo
    echo "#############Opcao Invalida - Favor digitar uma correta #############"
    echo
    echo "################################################"
    echo
    echo "##################APERTE ENTER PARA CONTINUAR########################"
    read f
    $INICIO
}

clear
echo
echo "                  ADMINISTRACAO FTP COM MYSQL"
echo "                  NetBSD + PureFTPD + MySQL"
echo
echo
echo "                  1 - Criar Usuario"
echo
echo "                  2 - Desativar Usuario"
echo
echo "                  3 - Ativar Usuario"
echo
echo "                  4 - Alterar Senha"
echo
echo "                  5 - Altera Quota"
echo
echo "                  6 - Listar Usuarios"
echo
echo "                  7 - SAIR"
echo
echo -n "               Informe a opcao desejada: "
read OPT

if [ $OPT -eq 1 ]
then
    criar_usuario
    $INICIO
elif [ $OPT -eq 2 ]
then
    desativa_usuario
    $INICIO
elif [ $OPT -eq 3 ]
then
    ativa_usuario
    $INICIO
elif [ $OPT -eq 4 ]
then
    altera_senha
    $INICIO
elif [ $OPT -eq 5 ]
then
    altera_quota
    $INICIO
elif [ $OPT -eq 6 ]
then
    lista_usuario
    $INICIO
elif [ $OPT -eq 7 ]
then
    exit
else
    opcao_invalida
    read
    $INICIO
fi

Agora é só editar as informações no início do script no lugar do XXXXXX. Demorei mais tempo escrevendo esse script do que implementando o servidor. hehehe.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalação e configuração do PureFTPD
   3. Script para administrar o ftp
   4. Conclusão
Outros artigos deste autor

Incremente o iptables com patch-o-matic

Gcombust, um frontend para cdrecord

Compilação distribuída usando o distcc

Instalando o Apache + PHP + MySQL no Slackware

Slackpkg, uma ótima ferramenta para Slackware

Leitura recomendada

Configurando roteador Linux com Velox

Porque segurança importa?

Configuração do Speedy Home da Telefônica (ou Velox)

FreeBSD + FreeRadius + MySQL

Configurando Servidor WEB Completo [Apache2 + Postfix/Courier + Bind9 + ISPConfig + Roundcube Webmail]

  
Comentários
[1] Comentário enviado por killer_val em 28/01/2010 - 21:10h

Esse script e em php
como que instala ele sou novo no linux


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts