03.09  
Inicio arrow Artigos arrow Brincando com FAMP Server + PureFTPd no MySQL (FreeBSD+Apache+MySQL+PHP)
Principal
Inicio
Noticias
Artigos
Regras da Lista
Assinar a Lista
Histórico da Lista
PC-BSD: Artigos
PC-BSD: Notícias
Galeria de Imagens
Contador Usuários FUG
FUGs Estaduais
Downloads
Enquetes
FAQ
Resumo do Site
Links
Pesquisar
Contato
Sobre a FUG-BR
RSS / Twitter
-
DOC-BR (FUG BR)
Introdução
Projeto DOC-BR
Handbook
FAQ Oficial
-
+ Noticias
Alertas de Seguranca
Alertas em Ports
BSD em Geral
DaemonNews (Ingles)
MyFreeBSD
Todas Categorias
-
Login
Nome de Usuário

Senha

Lembrar login
Esqueceu sua senha?
Sem conta? Crie uma
Histórico da Lista
  • Re: [FUG-BR] IPFW e redirecionamento de portas com nat e ppp, argggg ( dúvida )
  • [FUG-BR] Dúvida com Samba e restrições a pastas
  • Re: [FUG-BR] Dúvida com Samba e restrições a pastas
  • Re: [FUG-BR] Dúvida com Samba e restrições a pastas
  • Re: [FUG-BR] Dúvida com Samba e restrições a pastas
  • Re: [FUG-BR] Dúvida com Samba e restrições a pastas
  • Re: [FUG-BR] Dúvida com Samba e restrições a pastas
  • Re: [FUG-BR] Dúvida com Samba e restrições a pastas

  • Alertas em Ports
  • lftp -- multiple HTTP client download filename vulnerability
  • wget -- multiple HTTP client download filename vulnerability
  • p5-libwww -- possibility to remote servers to create file with a .(dot) character



  • Brincando com FAMP Server + PureFTPd no MySQL (FreeBSD+Apache+MySQL+PHP) PDF Imprimir E-mail
    Por Thiago   
    11/09/2007
    Neste howto eu quero cobrir a instalação completa de um servidor FAMP ( FreeBSD + Apache + MySQL + PHP) com Pure-FTPd autenticando no MySQL.
    Visto que em muitas empresas se vê necessidade de hospedagem local, não é a grande maioria, pois há várias empresas especializadas em WebHosting como a empresa na qual eu trabalho, que têm custos benefícios ótimos. Porém para quem quer "meter a mão na massa" segue abaixo a "brincadeira":

    Confira este artigo na integra, clique em Leia Mais!

    Hora de Diversão:

    1. Instalando FreeBSD
    1.1 Atualizando o FreeBSD
    2. Instalando Apache
    2.1 Configurando Apache
    3. Instalando PHP
    3.1 Instalando extensões do PHP:
    4. Instalando MySQL
    4.1 Configurando MySQL
    5. Instalando Pure-FTPd
    5.1 Configurando o Pure-FTPd com MySQL
    5.1.1 Criando Base de Usuários de FTP no MySQL
    5.1.2 Configurando o Pure-FTPd efetivamente.
    6. Levantando Serviços.
    7. Conclusão
    8. Referências.

    1. Instalando FreeBSD:

    Faça uma instalação básica do FreeBSD (nesta parte serei bem genérico):

    Inicie com o CD do FreeBSD particione da maneira que lhe convier, instale com a opção 'minimal' depois adicione o 'src' (all) de preferência, adicione também o man, não é necessário o ports nem o X.

    Após instalação ser completada, vamos a alguns ajustes:

    Primeiro Baixando PORTS atualizado:

    # portsnap fetch extract

    depois de completa a operação:

    # cd /usr/ports/net/csup && make install clean && rehash

    Isso para instalar o csup, utilitário/cliente de cvs para atualizarmos os sources do FreeBSD.

    Nota: O procedimento acima devera ser feito apenas ate' a versao 6.1 do FreeBSD, pois na 6.2, o csup (cliente C do cvsup), estara' incorporado na base do sistema, assim como o portsnap.

    1.1 Atualizando o FreeBSD:

    Após termos os pré-requisitos necessários para a atualização do sistema vamos prosseguir com ela:

    Primeiro é necessário criar o arquivo de configuração de onde o csup irá tirar as informações para baixar os sources do sistema

    # vi /usr/local/etc/csup.conf

    insira as seguintes linhas:

    #####################################
    *default host=cvsup3.br.FreeBSD.org
    *default base=/var/db
    *default prefix=/usr
    *default release=cvs tag=RELENG_6
    *default delete use-rel-suffix
    *default compress

    src-all

    ######################################

    Salve e feche.

    Agora vamos executar o csup para que baixe os sources atualizados:

    # csup -g -L 2 /usr/local/etc/csup.conf

    Após baixados os sources vamos a atualização própriamente dita:

    # cd /usr/src

    Se você estiver compilando de uma máquina potente utilize essa sintaxe:

    # make -s -j4 buildworld

    Caso não apenas retire o argumento '-j4', pois ele abre multiplos workers para compilar
    Enfim esse comando irá preparar/compilar todos os binários do sistema.

    Após isso será necessário compilar o Kernel:
    Isso irá compilar o kernel atualizado, você pode tunnar o kernel, mas isso eu não irei cobrir aqui:

    # make -s -j4 kernel KERNCONF=GENERIC

    Instalando binários que foram compilados anteriormente

    # mergemaster -p
    # make -s TMPDIR=/var/tmp installworld


    Agora iremos fazer um MERGE dos arquivos de configuração novos com os antigos (CUIDADO NESTE MOMENTO CASO JÁ TENHA EFETUADO ALGUMA MUDANÇA NOS SEUS ARQUIVOS DE CONFIGURAÇÃO DO /etc FAÇA UM BACKUP):

    # mergemaster -Pi
    # reboot

    Pronto, sistema atualizado.

    2. Instalando Apache:

    Vamos instalar o Apache do PORTS:

    Entrar na pasta do Apache no ports, manda compilar com modulos SSL/Proxy/MPM e instalar.

    # cd /usr/ports/www/apache22
    # make WITH_PROXY_MODULES=yes WITH_SSL_MODULES=yes WITH_MPM_MODULES=yes install clean && rehash


    Coloque-o para inicializar no boot

    # echo 'apache22_enable="YES"' >> /etc/rc.conf

    2.1 Configurando Apache:

    Edite o arquivo /usr/local/etc/apache22/httpd.conf

    #################################################

    ServerRoot "/usr/local"

    Timeout 300

    KeepAlive Off
    #MaxKeepAliveRequests 5
    #KeepAliveTimeout 5

    ServerLimit 500

    PidFile /var/run/httpd.pid
    LockFile /var/log/accept.lock

    StartServers 5
    MinSpareServers 5
    MaxSpareServers 20
    MaxClients 150
    MaxRequestsPerChild 0

    Listen 80

    LoadModule authn_file_module libexec/apache22/mod_authn_file.so
    LoadModule authn_dbm_module libexec/apache22/mod_authn_dbm.so
    LoadModule authn_anon_module libexec/apache22/mod_authn_anon.so
    LoadModule authn_default_module libexec/apache22/mod_authn_default.so
    LoadModule authn_alias_module libexec/apache22/mod_authn_alias.so
    LoadModule authz_host_module libexec/apache22/mod_authz_host.so
    LoadModule authz_groupfile_module libexec/apache22/mod_authz_groupfile.so
    LoadModule authz_user_module libexec/apache22/mod_authz_user.so
    LoadModule authz_dbm_module libexec/apache22/mod_authz_dbm.so
    #LoadModule authz_owner_module libexec/apache22/mod_authz_owner.so
    LoadModule authz_default_module libexec/apache22/mod_authz_default.so
    LoadModule auth_basic_module libexec/apache22/mod_auth_basic.so
    LoadModule auth_digest_module libexec/apache22/mod_auth_digest.so
    #LoadModule file_cache_module libexec/apache22/mod_file_cache.so
    #LoadModule cache_module libexec/apache22/mod_cache.so
    #LoadModule disk_cache_module libexec/apache22/mod_disk_cache.so
    LoadModule dumpio_module libexec/apache22/mod_dumpio.so
    LoadModule include_module libexec/apache22/mod_include.so
    LoadModule filter_module libexec/apache22/mod_filter.so
    LoadModule charset_lite_module libexec/apache22/mod_charset_lite.so
    LoadModule deflate_module libexec/apache22/mod_deflate.so
    LoadModule log_config_module libexec/apache22/mod_log_config.so
    LoadModule logio_module libexec/apache22/mod_logio.so
    LoadModule env_module libexec/apache22/mod_env.so
    LoadModule mime_magic_module libexec/apache22/mod_mime_magic.so
    LoadModule cern_meta_module libexec/apache22/mod_cern_meta.so
    LoadModule expires_module libexec/apache22/mod_expires.so
    LoadModule headers_module libexec/apache22/mod_headers.so
    LoadModule usertrack_module libexec/apache22/mod_usertrack.so
    LoadModule unique_id_module libexec/apache22/mod_unique_id.so
    LoadModule setenvif_module libexec/apache22/mod_setenvif.so
    LoadModule version_module libexec/apache22/mod_version.so
    LoadModule proxy_module libexec/apache22/mod_proxy.so
    LoadModule proxy_connect_module libexec/apache22/mod_proxy_connect.so
    LoadModule proxy_ftp_module libexec/apache22/mod_proxy_ftp.so
    LoadModule proxy_http_module libexec/apache22/mod_proxy_http.so
    LoadModule proxy_ajp_module libexec/apache22/mod_proxy_ajp.so
    LoadModule proxy_balancer_module libexec/apache22/mod_proxy_balancer.so
    LoadModule ssl_module libexec/apache22/mod_ssl.so
    LoadModule mime_module libexec/apache22/mod_mime.so
    LoadModule dav_module libexec/apache22/mod_dav.so
    LoadModule status_module libexec/apache22/mod_status.so
    LoadModule autoindex_module libexec/apache22/mod_autoindex.so
    LoadModule asis_module libexec/apache22/mod_asis.so
    LoadModule info_module libexec/apache22/mod_info.so
    LoadModule cgi_module libexec/apache22/mod_cgi.so
    LoadModule dav_fs_module libexec/apache22/mod_dav_fs.so
    LoadModule vhost_alias_module libexec/apache22/mod_vhost_alias.so
    LoadModule negotiation_module libexec/apache22/mod_negotiation.so
    LoadModule dir_module libexec/apache22/mod_dir.so
    LoadModule imagemap_module libexec/apache22/mod_imagemap.so
    LoadModule actions_module libexec/apache22/mod_actions.so
    LoadModule speling_module libexec/apache22/mod_speling.so
    LoadModule userdir_module libexec/apache22/mod_userdir.so
    LoadModule alias_module libexec/apache22/mod_alias.so
    LoadModule rewrite_module libexec/apache22/mod_rewrite.so
    LoadModule php5_module libexec/apache22/libphp5.so # ESTE MÓDULO É INSERIDO AUTOMATICAMENTE QUANDO O PHP FOR COMPILADO.

    User www
    Group www

    ServerAdmin seu-email@seu-dominio
    ServerSignature Off
    ServerName srv-00.teste.com.br:80

    DocumentRoot "/usr/local/www/apache22/data"

    AllowOverride None
    Order deny,allow
    Deny from all

    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all

    DirectoryIndex index.html index.php index.php3 index.htm

    Order allow,deny
    Deny from all
    Satisfy All

    ErrorLog /var/log/httpd-error.log

    LogLevel warn

    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio

    #CustomLog /var/log/httpd-access.log common
    CustomLog /var/log/httpd-access.log combined

    #ScriptAlias /cgi-bin/ "/usr/local/www/apache22/cgi-bin/"
    #Scriptsock /var/run/cgisock

    AllowOverride None
    Options None
    Order allow,deny
    Allow from all

    DefaultType text/plain

    TypesConfig etc/apache22/mime.types

    AddType application/x-gzip .tgz
    AddEncoding x-compress .Z
    AddEncoding x-gzip .gz .tgz
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz

    #AddHandler cgi-script .cgi

    # For type maps (negotiated resources):
    #AddHandler type-map var

    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    MIMEMagicFile etc/apache22/magic

    ServerTokens Prod
    ServerSignature Off

    # Virtual hosts
    #Include etc/apache22/extra/httpd-vhosts.conf

    # Secure (SSL/TLS) connections
    #Include etc/apache22/extra/httpd-ssl.conf

    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin

    Include etc/apache22/Includes/*.conf

    #############################################################


    3. Instalando o PHP:

    Também vamos instalar o PHP pelo PORTS, visto que o PORTS já baixa, compila e instala todas as dependências do software (que convenhamos facilita e muito a nossa vida).

    # cd /usr/ports/lang/php5

    Escolha tudo que necessita com built-in no PHP:

    # make config

    Eu sempre costumo utilizar estes módulos como built-in:
    [X] APACHE Build Apache module
    [X] SUHOSIN Enable Suhosin protection system (not for jails)
    [X] MULTIBYTE Enable zend multibyte support
    [X] MAILHEAD Enable mail header patch


    Instalando:

    # make install clean && rehash

    Copie o arquivo de configuração do PHP para o nome correto:

    # cd /usr/local/etc
    # cp php.ini-recommended php.ini


    3.1 Instalando extensões do PHP

    Também pelo PORTS:

    # cd /usr/ports/lang/php5-extensions

    Escolha as extensões necessárias para suas páginas.

    # make config

    Depois instale:

    # make install clean && rehash

    4. Instalando MySQL:

    Mais uma vez VIVA O PORTS!!!

    # cd /usr/ports/databases/mysql50-server
    # make WITHOUT_INNODB=yes BUILD_OPTIMIZED=yes BUILD_STATIC=yes install clean && rehash

    Coloque-o para inicializar no boot

    # echo 'mysql_enable="YES"' >> /etc/rc.conf

    4.1 Configurando o MySQL

    Uma ótima política em se usar o MySQL é configurar a sua inicialização alguns parametros como máximo de concatenação de dados as vezes são muito úteis entre outras coisas, segue abaixo um arquivo de configuração do MySQL que eu considero um bom começo.


    ##############################################
    [client]
    socket = /tmp/mysql.sock
    port = 3306

    [mysqld]
    bind-address = x.x.x.x # SUBSTITUA POR SEU IP
    port = 3306
    socket = /tmp/mysql.sock
    tmpdir = /var/tmp
    key_buffer = 256M
    max_allowed_packet = 1M
    table_cache = 256
    sort_buffer_size = 1M
    read_buffer_size = 1M
    read_rnd_buffer_size = 4M
    myisam_sort_buffer_size = 64M
    thread_cache_size = 8
    query_cache_size = 16M
    thread_concurrency = 4

    max_connections=3048
    max_user_connections=256
    max_connect_errors=10000

    wait_timeout = 1800
    interactive_timeout = 1800
    connect_timeout = 30

    skip-locking
    skip-name-resolve

    group_concat_max_len = 999999

    [isamchk]
    key_buffer = 128M
    sort_buffer_size = 128M
    read_buffer = 2M
    write_buffer = 2M

    [myisamchk]
    key_buffer = 128M
    sort_buffer_size = 128M
    read_buffer = 2M
    write_buffer = 2M

    [mysqlhotcopy]
    interactive-timeout
    ######################################################

    Salve em /var/db/mysql/my.cnf

    Defina uma senha para o root do mysql, mas antes levante o serviço MySQL:

    # /usr/local/etc/rc.d/mysql-server start
    # mysqladmin -u root password sua-senha


    5. Instalando Pure-FTPd

    Ae agora você que está lendo o artigo me pergunta:
    "Mas porque o Pure-FTPd? Por que não o ProFTPd?
    E eu responderei:
    "Por que o Pure-FTPd é um tanto mais intuitivo, leve e fácil de utilizar (além da minha preferência pessoal pelo programa) visto que nesse tutorial eu o integrarei ao MySQL usando Quotas e Controle de taxa de transferência, fora uma leve personalizada no arquivo ftpd.c, onde peca o Pure-FTPd é no banner de boas-vindas.


    Vamos lá:

    # cd /usr/ports/ftp/pure-ftpd
    # make config

    Selecione:
    [X] MYSQL Support for users in MySQL database
    [X] PAM Support for PAM authentication
    [X] PRIVSEP Enable privilege separation
    [X] PERUSERLIMITS Per-user concurrency limits
    [X] THROTTLING Bandwidth throttling
    [X] UPLOADSCRIPT Support uploadscript daemon

    DESABILITE O BANNER:
    [ ] BANNER Show pure-ftpd welcome upon session start

    Baixe-o e extraia-o:

    # make extract

    Caso queira personalizar o banner de conexão:

    # cd work/pure-ftpd-1.0.21/src

    Edite o arquivo ftpd.c, rocure pela linha:

    addreply_noformat(220, "FTP server ready.");

    e mude-a conforme você queira que ele se apresente quando um cliente se conecte ao servidor FTP, esta linha no meu arquivo é a de número: 4499

    addreply_noformat(220, "Fulano de tal ISP FTP server ready.");

    salve-o e feche-o.

    Compilando:

    # cd /usr/ports/ftp/pure-ftpd
    # make install clean && rehash


    Insira-o no rc.conf para inicializar no boot:

    # echo 'pure-ftpd_enable="YES"' >> /etc/rc.conf

    5.1 Configurando o Pure-FTPd para se autenticar no MySQL

    5.1.1 Criando Base de Usuários de FTP no MySQL

    Primeiro é necessário para o funcionamento do Pure-FTPd com o MySQL a criação da base ou da tabela em alguma base de sua preferência onde o Pure-FTPd irá se conectar para autenticar os usuários.
    Segue abaixo a SQL que insere o Banco propriamente dito:

    ########################################################

    CREATE DATABASE `pureftpd`;
    USE pureftpd;

    CREATE TABLE `ftpusers` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `username` varchar(16) NOT NULL,
    `password` varchar(255) NOT NULL DEFAULT '',
    `uid` int(10) NOT NULL DEFAULT '80',
    `gid` int(5) NOT NULL DEFAULT '80',
    `homedir` varchar(255) NOT NULL DEFAULT '/var/www/',
    `active` tinyint(1) NOT NULL DEFAULT '1',
    `Quota` int(10) NOT NULL DEFAULT '0',
    `ULbw` int(10) NOT NULL DEFAULT '32',
    `DLbw` int(10) NOT NULL DEFAULT '32',
    `ULRatio` int(10) NOT NULL DEFAULT '0',
    `DLRatio` int(10) NOT NULL DEFAULT '0',
    `QuotaFiles` int(10) NOT NULL DEFAULT '0',
    `dominio` char(100) NOT NULL,
    PRIMARY KEY (`id`,`uid`) USING BTREE,
    UNIQUE KEY `username` (`username`),
    UNIQUE KEY `uid` (`uid`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='FTP users';

    #########################################################

    Nesse tutorial eu acessarei esse banco/tabela como root do MySQL (o que não é uma política muito correta, de preferência crie um usuário com menos privilégios para acessar este banco).

    5.1.2 Configurando o Pure-FTPd efetivamente.

    Configurando agora o Pure-FTPd para se conectar ao MySQL e os parametros necessários para o funcionamento:

    Edite o arquivo /usr/local/etc/pure-ftpd.conf:

    #########################################################

    DisplayDotFiles yes # Mostra arquivos como .ftpquota
    ChrootEveryone yes # Enjaula todos dentro de seus homes
    BrokenClientsCompatibility yes
    MaxClientsNumber 150 # Máximo de Clientes
    Daemonize yes # Transforma-o em daemon
    MaxClientsPerIP 22 # Máximo de clientes por IP
    VerboseLog yes # Log Verboso
    AnonymousOnly no # Não permite Anonimo
    NoAnonymous yes
    SyslogFacility ftp # Joga saida do Log no syslog
    DontResolve yes # não resolva nomes
    MaxIdleTime 15 # Máximo de tempo de idle em minutos
    MySQLConfigFile /usr/local/etc/pureftpd-mysql.conf # Configuração de conexão com MySQL
    PAMAuthentication no # Não permite autenticação de usuários na máquina
    UnixAuthentication no
    LimitRecursion 5000 8
    AnonymousCanCreateDirs no
    MaxLoad 4
    AntiWarez yes
    Umask 133:022
    MinUID 503
    AllowUserFXP no
    AllowAnonymousFXP no
    ProhibitDotFilesWrite no
    ProhibitDotFilesRead no
    AutoRename no
    AnonymousCantUpload no
    AltLog stats:/var/log/pureftpd.log
    MaxDiskUsage 90 # Máxima utilização do disco em %
    KeepAllFiles no
    CreateHomeDir yes # Cria o home do usuário no primeiro login caso vc esqueça de criar
    CustomerProof yes
    PerUserLimits 2 2
    #UserRatio 1 3

    #############################################################


    E agora o arquivo de conexão com o MySQL:

    Edite o arquivo /usr/local/etc/pureftpd-mysql.conf:

    ##############################################################

    MYSQLServer x.x.x.x # Substitua pelo ip do seu server caso não seja o mesmo, caso seja o mesmo comente a linha
    MYSQLPort 3306
    #MYSQLSocket /tmp/mysql.sock # se o servidor for local descomente esta linha
    MYSQLUser root
    MYSQLPassword suasenha
    MYSQLDatabase pureftpd
    MYSQLCrypt any
    MYSQLGetPW SELECT password FROM ftpusers WHERE username ='\L' AND active='1'
    MYSQLGetUID SELECT uid FROM ftpusers WHERE username = '\L'
    MYSQLGetGID SELECT gid FROM ftpusers WHERE username = '\L'
    MYSQLGetDir SELECT homedir FROM ftpusers WHERE username = '\L'
    MySQLGetBandwidthUL SELECT ULbw FROM ftpusers WHERE username = '\L'
    MySQLGetBandwidthDL SELECT DLbw FROM ftpusers WHERE username = '\L'
    MySQLGetRatioUL SELECT ULRatio FROM ftpusers WHERE username ='\L'
    MySQLGetRatioDL SELECT DLRatio FROM ftpusers WHERE username ='\L'
    MySQLGetQTASZ SELECT Quota FROM ftpusers WHERE username ='\L'
    MySQLGetQTAFS SELECT QuotaFiles FROM users WHERE username = '\L'
    MySQLTransactions On

    ################################################################

    Pronto integração Completa! Agora basta você inserir os usuários no banco e logar para que as pastas sejam criadas e as permissões setadas.

    6. Levantando os Serviços:

    "Botando a coisa pra rodar"

    # /usr/local/etc/rc.d/apache22 start
    # /usr/local/etc/rc.d/pure-ftpd start


    Bom pelo menos aqui não deu erro não! hehehe.
    E está tudo funcionando perfeitamente.


    7. Conclusão

    Acredito que o objetivo de instalar um FAMP Server com Pure-FTPd autenticando no MySQL tenha se cumprido.
    Temos agora um servidor rodando Apache com suporte a PHP e MySQL, juntamente com um FTP autenticando no MySQL proporcionando um ambiente bem controlado e seguro no quesito PROGRAMAS, pois não cobri a configuração de um Firewall (o qual pretendo ainda escrever algo).

    8. Referências

    Atualização do FreeBSD por Christopher Giese no FUG:
    http://www.fug.com.br/content/view/46/60/

    Documentação do PureFTPd na Web:
    http://www.pureftpd.org/project/pure-ftpd/doc

    Retirado de:

    http://thiagoruiz.blogspot.com/2007/08/freebsd-famp-server-with-pure-ftpd-in.html

    Comentários
    Boa contribuição Thiago
    Por Patrick Tracanelli em 13/09/2007 15:26:31
    Bom conteudo :)
    Por neo em 13/09/2007 16:20:06
    vlw
    Contribua mais
    Por Everton Cruz em 13/09/2007 19:45:46
    Contribua mais com artigos assim, é muito util. E obrigado tambem. Se possível formate ao menos os comandos, como nos outros artigos. A leitura fica mais fácil.
    Otimo artigo!
    Por lippe em 15/09/2007 18:59:25
    Bela contribuicao thiago, eu mesmo formatei este texto, agora esta excelente, e facil de visualizar. 
     
    Abracos! :)
    obrigado
    Por neo em 17/09/2007 10:38:32
    vlw lippe .. na correria do dia dia eu acabei esquecendo de formatar heheehhe 
     
    vlw.. fico lindu! oiaehoi 
     
    abraços
    Divergências
    Por Alexandre Nano em 22/05/2008 11:45:08
    Olá lippe. 
    Realmente seu tutorial está excelente! Mas me confirme uma coisa: Você na compilação do MySQL desabilitou o INNODB e na criação da tabela você indicou que ela irá usar a engine INNODB. Mesmo desta forma a tabela vai usar a MYISAM, não é, ou estou enganado??
    Por Thiago Torres em 04/01/2009 20:27:57
    Poderia ser acrescentado ao tutorial como adicionar usuário no mysql para se logar no FTP. Também é útil acrescentar para usuários iniciantes como criar contas de hospedagem (usuário/diretorio/permissão). 
     
    Show de bola o artigo ;)
    Observação
    Por Reginaldo Filippus em 22/01/2009 15:21:23
    Ótima howto, com informações bem colocadas, mas tive alguns problemas que achei interessante postar aqui: 
     
    Cuidado com os UID, GUID e DIR do usuário cadastrado. 
     
    Os dados que você vai setar no usuário, tem que existir, por isso recomendo criar o usuário ftp, e setar ele como dono de algum diretório onde todos irão logar, caso contrario vai aparecer um erro no log, dizendo que o usuário esta desativado ;) 
     
    Grande abraço a todos.
    Interessante pacas
    Por Ilaan em 01/04/2009 08:29:38
    Post super interessante. muito esclarecedor. 
    Ae entra no meu site: http://www.sempremaisestetica.com.br 
    Foi otimizado pela Namp: http://www.namp.com.br
    Por Paulo em 07/05/2009 09:48:10
    Muito bom, valeu pela dica, estava com alguns problemas e seu post me ajudou. 
    Visita meu site: 
    Solviver Piscinas - www.solviverpiscinas.com.br


    Comente!*
    Nome:
    E-mail
    Homepage
    Título:
    Comentário:

    Código:* Code

    Última Atualização ( 15/09/2007 )
     
    < Anterior   Próximo >
    FUG-BR - Espalhando BSD
    Dicas Rápidas:

    No editor de textos vi(1), para remover os ^M de arquivos MS-DOS (Windows), use:

    :g/^V^M/s//

     

     






    Wallpapers
    Sua Opiniao
    Online:
    Nós temos 28 visitantes online


    Devil Store - Sua loja BSD
    FreeBSD Brasil LTDA

    FUG-BR: Desde 1999, espalhando BSD pelo Brasil.