quarta-feira, dezembro 07, 2005
Tutorial CSS - Menu drop down
Exemplo abaixo:
sexta-feira, dezembro 02, 2005
Free Email Guide: Free Virtual Disk Drives and File Storage Services
segunda-feira, novembro 21, 2005
segunda-feira, outubro 31, 2005
Eclipse Plugins
http://sourceforge.net/projects/dbedit
Um database explorer, utiliza o jdbc para se conectar.
http://sourceforge.net/projects/jadclipse/
Descompila classes java utilizando o jad, precisa ter o jad.exe instalado na maquina
http://www.kyrsoft.com/opentools/memmon.html
Monitor de memória do eclipse
http://eclipse-plugins.2y.net.
Referencia para consultar plugins
sexta-feira, outubro 28, 2005
quinta-feira, outubro 27, 2005
CVS permission denied and SELinux issues
ls -Z
SELinux has a default rule set in Fedora Core called "targeted" that has a set list of daemons (httpd, cvsd, bind, dhcp, etc etc) that require special security tags (like username:group permissions for users but this is for daemons) that you will find with 'ls -Z'. Understanding what SELinux is took me a while too, but I seem to grasp it well now.
In order to give your files in your cvs root the correct tags you will simply need to run
restorecon * -R
in your cvs root. This will assign the default security tag for the cvs daemon to each file and in all subdirectories.
--------------------------------------------------------------------------------
About half way down this (http://www.siliconvalleyccie.com/linux-hn/apachebasic.htm) page you will find some general info about SElinux settings. It has helped me in the past with some of my problems. And most importantly, this (http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/selinux-guide/rhlcommon-section-0068.html) page has a lot of good info to read up on!! Enjoy, it is powerful, but a very useful program for a server that is allowing remote conenctions (i.e. Web, and ftp services).
--------------------------------------------------------------------------------
terça-feira, outubro 25, 2005
terça-feira, outubro 11, 2005
segunda-feira, outubro 10, 2005
Migrate apps from Internet Explorer to Mozilla
quinta-feira, setembro 15, 2005
Bypass Firewall with secure Tunneling from HTTP-Tunnel
sexta-feira, setembro 09, 2005
ActiveWidgets Grid :: cross-browser javascript table control.
terça-feira, setembro 06, 2005
Struts-Layout - Taglib for easy interface creation for Struts
terça-feira, agosto 23, 2005
segunda-feira, agosto 22, 2005
Java Boutique, The Ultimate Java Applet Resource - Rubik - cubo colorido
domingo, agosto 21, 2005
sexta-feira, agosto 19, 2005
Using JConsole to Monitor Applications
Using JConsole to Monitor Applications
quarta-feira, agosto 10, 2005
Exibe os processos com linha extendida
sexta-feira, julho 29, 2005
descobrir o pid atraves da porta lsof -i:80
lsof -i:80
resultado:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 401 root 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 443 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 444 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 445 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 448 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 449 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 22128 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 22129 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 22130 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
httpd 22140 nobody 16u IPv4 0x3000132c2f8 0t0 TCP *:80 (LISTEN)
terça-feira, julho 26, 2005
web services list web services xml web services news web services directory
Lista de web services disponíveis na web, mto interessante
quinta-feira, julho 21, 2005
HDAdvance & USBeXtreme - The ultimate Game Storage Solution for the Playstation 2
Outro programa para ps2 utilizar o tal NA
PS2 Hard Drive Compatibility Chart
O proprio nome já diz tudo, esse site mostra se um hd qualquer é compativel com o ps2 (playstation2) mais o na (network adapter)
sábado, julho 16, 2005
DIAGRAMA DE CABOS DE REDE
How to remove Windows Messenger 4.7 permanently
Click on Start.
Click on Run.
Copy and paste this line into the box: RunDll32 advpack.dll,LaunchINFSection %windir%\INF\msmsgs.inf,BLC.Remove
quinta-feira, julho 14, 2005
Alcohol 120% v1.9.5.2802
http://shop.alcohol-soft.com/affiliate.php?affiliate=10346
Programa para gravar dvd's do playstation2
Jsp - taglib - struts - jspscript
<%=variavel1%>
segunda-feira, julho 11, 2005
Microsoft PowerToys for Windows XP
Aki tem vários downloads do winxp utilitários como o Virtual Desktop Manager.
quinta-feira, junho 30, 2005
Estudo para certificação java
Mto interessante, com links para capitulos separados por assunto.
sexta-feira, junho 24, 2005
quinta-feira, maio 19, 2005
Counter Strike Server how-to
Preparation Setup and install your favourite Server Os like Win2k,NT,Linux or FreeBSD. Download and install the latest Halflife server files for your Os. If your only running the Counter-Strike mod on your server then delete the tfc and dmc directories. This will save about 100MBytes of space. Resources CPU A Pentium 3/Athlon/Duron are excellent processors for a CS server because of there 600MHz + clock speed. They have decent amounts of cache and 100MHz + Front side bus. This means that there is plenty of bandwidth for the data to flow. The faster the cpu the better the performance for each or the clients connected. Network A decent 10/100 MBit network card from Alliedtelesyn/Intel will help lower processor utilization and increase throughput. The network that you connect into needs to have enough bandwidth to give good performance for your clients. A server with 20 players uses about 50-60K per second without voice. With voice it can use up to 100K per sec. Unless you have this kind of bandwidth available then set your maxplayer rate lower or disable the voice team chat. Shortcut and settings Windows If the server is for a lan game include setmaster 0 and sv_lan 1 in your server.cfg file. In change your shortcut to read "hlds.exe -game cstrike -port 27015 +sv_lan 1 +maxplayers 20 +map cs_italy +exec server.cfg" Just double click on the shortcut that you have created and you should see a window appear. At the top left there should be fps(higher is better), the current player number / maxplayer number and the map that the server is currently running. Linux When looged on your linux server type export LD_LIBRARY_PATH=/home/halflife/hlds_l:$LD_LIBRARY_PATH The path must be from the root directory. My halflife lunix server has its files in /home/halflife/hlds_l To run it type in the console ./hlds_run -game cstrike -port 27015 +maxplayers 20 +map cs_italy +exec server.cfg This will get you started. You should see lots the server start with text scrolling past as it loads files from the pak files. If the server is for a lan game include setmaster 0(old command) or nomaster(new command) and sv_lan 1 in your server.cfg file. Run it using ./hlds_run -game cstrike -port 27015 +sv_lan 1 +nomaster +maxplayers 20 +map cs_italy +exec server.cfg Files in cstrike directory motd.txt has the message displayed when the clients enter the game or the map swaps. server.cfg has all your settings that you want reloaded each time the map swaps like rcon password, maxrate etc. banned.cfg has all the wonids of people banned from the server. mapcycle.txt has the list of the maps that the game cycles through. |
quarta-feira, maio 18, 2005
download do counter strike
Se você não sabe como jogar o CS 1.6 s/ Steam via Internet, clique aqui!
Baixe algum (e não todos) dos mirrors da versão FULL, e depois atualize-a, com um dos mirrors da versão de atualização.
Obs: Não importa qual a versão do CS s/ Steam FULL você irá baixar, pois a versão de atualização irá atualizar qualquer uma.
- CS 1.6 sem Steam (FULL)
Tamanho: 286 mb
Links - Baixe apenas 1 dos mirrors abaixo:
Mirror 1 - cs16full_v7.exe
- CS 1.6 sem Steam v19 (Atualização)
Tamanho: 16,7 mb
Links - Baixe apenas 1 dos mirrors abaixo:
Mirror 1 - cs16patch_full_v19.exe
Mirror 2 - cs16patch_full_v19.exe
- Counter-Strike Key File
Arquivo do registro do windows necessario para autenticar o CS 1.6 s/ steam. Após a instalação, rode este arquivo.
http://www.linuxdicas.com.br/sections-viewarticle-174.html
Como Montar um Servidor dedicado de Counter-Strike para Lan House
Características:
-Servidor de Jogos(Counter-Strike, Day of Defeat etc)
-Firewall
-NAT
-Proxy Transparente(squid)
-Detecção de Intruso(snort)
-Interface de Controle via WEB
-Servidor de DHCP
-Suporte a ISDN, ADSL USB, PPPoE
O intuito deste trabalho é mostrar como pode ser possível montar uma
Lan House com compartilhamento de Internet e Firewall para proteção
dela e dos usuários.
Este procedimento é usado nas montagens dos servidores da Global LanHouse
(www.globallanhouse.com.br). Devido a vários fatores e custos chegamos
a esse procedimento que será descrito logo abaixo.
Após este trabalho você terá na mesma máquina o seu Servidor de Jogos com
compartilhamento de Internet protegido por um Firewall, sendo o único
custo o HARDWARE e serviços envolvido.
1.Material Necessário
1.1.Software
- SmoothWall 1.0 GPL
Filename:smoothwall-1.0.iso
Author :SmoothWall
Size :23 MB
Obs.: www.smoothwall.org
- Half-Life Dedicated Server v3.1.1.0 (Linux)
Filename:hlds_l_3110_full.bin
Author :Valve Software
Size :111.8 MB
Obs.: para localizar www.google.com
- Counter-Strike 1.5 Linux Server [Full]
Filename:cs_15_full.tar.gz
Author :Valve Software and Counter-Strike Team
Size :102.5 MB
Obs.: para localizar www.google.com
- Day of Defeat Linux 3.1 Full
Filename:dod_v31_full.tar.gz
Author :http://www.dayofdefeatmod.com/
Size :124.8 MB
Obs.:http://bajar.juegosonline.com/mods/dod_v31_full.tar.gz
1.2.Hardware
- Um Computador Athlon 1.XX, 256 RAM, disco maior ou igual a 40 Gb.
Obs.:Aqui vale a seguinte justificativa você está montando o
coração da sua Lan House, não economize, coloque produtos de boa
qualidade, a quantidade de memória acima foi especificada para
uma LanHouse com 20 equipamentos e com proxy transparente.
- Duas(2)Placas de Rede
Obs.: Aqui a mesma justificativa anterior, recomendo 3Com/Intel
pode ser a RTL8139C para no máximo 20 estações de trabalho.
A RTL8139D não se comportou bem nos nossos testes.
1.3.Outros
- Gravador CDRW para gerar o CD do SmoothWall.
- Driver de CDROM usado para instalar o SmoothWall(temporário).
- Programa WinSCP para transferência de arquivos entre o Servidor
e a estação.
[http://winscp.vse.cz/eng/download.php]
- Programa Putty para efetuar acesso seguro ao Servidor.
[http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html]
- Uma estação com Windows com a placa de rede configurada.
Obs.:não coloque o endereço IP deixe a opção pegar automáticamente
ativada.
1.4.Serviços
- Speedy Home ou Business no caso de São Paulo
Obs.: No caso de Speedy Business você vai precisar do endereço IP
do seu "GATEWAY" e do servidor de "DNS".
- Assinatura de um Provedor
Obs.: O SmoothWall tem suporte ao PPPoE e quanto a nova autenticação
imposta aos usuários "Business" você terá que efetuar somente uma
vez, através de uma estação Windows(explico no PASSO 12 B ).
2.Montar o Firewall
Com o CD do SmoothWal nas mãos o Servidor com as duas placas de rede
e o driver de CDROM instalados, vamos dar inicío ao processo de instalação
e configuração.
O SmoothWall chama a placa da LAN de (GREEN) e do INTERNET (RED), ou seja,
a sua [eth0] é a GREEN e a [ETH1] a RED. A definição de eth0 e eth1 é
definida pelo número do slot PCI da placa mãe é só procurar que você
irá encontrar essa numeração do lado do slot, tipo PCIA, PCIB, PCIC etc.
Abaixo temos dois exemplos de configuração, na coluna A, todos os slot's
estão preenchidos e na B somente os dois últimos slot's.
slot - A - B
PCIA - eth0 - sem placa de rede
PCIB - eth1 - eth0
PCIC - eth2 - eth1
Geralmente olhando o computador aberto com a fonte do seu lado direito
o slot PCI de numero um (eth0) é o que fica mais próximo da fonte.
Sendo assim identifique as placas para tornar a sua vida mais
fácil a frente.
LAN -> GREEN -> Rede Interna
ADSL -> RED -> Modem ADSL
2.1.Instalar
****** IMPORTANTE ******
TODO O CONTEÚDO DO DISCO SERÁ APAGADO
************************
PASSO 1: INSTALAÇÃO
-Ligue o servidor e configure o "Setup" para efetuar "Boot" pelo driver de
CDROM.
-Coloque o CD do SmoothWall no driver de CDROM e de um novo "Boot".
-Irá aparecer a tela de informções do SmoothWall.
-Caso esteja de acordo com o que está escrito tecle [ENTER].
PASSO 2: SELEÇÃO DO IDIOMA
-Escolha o idioma que preferir para efetuar a instalação.
Você vai ficar muinto alegre pois o Português do Brasil vai estar lá.
-Use a tecla [TAB] para navegar e [SPACEBAR] ou [ENTER] para selecionar.
PASSO 3: TELA DE BEMVINDO
-Tecle [SPACEBAR] ou [ENTER] para ir para próxima tela.
PASSO 4: SELEÇÃO DA MÍDIA
-Use a tecla [TAB] para navegar e [SPACEBAR] ou [ENTER] para selecionar.
-Escolha CDROM.
PASSO 5: PREPARAÇÃO DO DISCO
**** ALERTA ****
O Conteúdo do disco e totalmente apagado.
-Este passo é totalmente automático.
PASSO 6: CONFIGURAÇÃO BÁSICA DE REDE
-Selecione "PROBE" para identificar a ETH0(GREEN).
-Se você seguiu o meu conselho quanto a placa de rede esse processo
será fácil.
-Para configurar manualmente leia o manual de instalação.
http://www.smoothwall.org/download/pdf/docs/0.9.9/doc.userguide.print.pdf
-Entre com o endereço IP da sua LAN.
Exemplo:
IP 192.168.0.1
MASK 255.255.255.0
PASSO 7: CONFIGURAÇÃO HTTP
-Esse passo só é necessário para quem está fazendo a instalação via
HTTP escolhida no PASSO 4.
-Vá para o próximo passo.
PASSO 8: INSTALAÇÃO DO SMOOTHWALL
-Caso o processo de instalação pare na tela criando "root" é porque
o programa de instalação não consegue em algumas marcas de HD criar
as partições do "Zero".
Solução:
Faça na estação Windows um disco de boot, coloque nele o fdisk e crie
uma partição usando o disco todo, volte ao PASSO 1.
PASSO 9: CONFIGURAÇÕES BÁSICAS DO SISTEMA
-Use a tecla [TAB] para navegar e [SPACEBAR] ou [ENTER] para selecionar.
-Escolha o mapa do teclado.
-Escolha "Time Zone".
-Escolha o nome para o seu Servidor.
PASSO 10: ISDN
-Escolha "Disable" ou seja desabilite essa configuração.
PASSO 11: USB ADSL
-Escolha "Disable" ou seja desabilite essa configuração.
-Caso tenha um ADSL USB, leia o manual.
http://www.smoothwall.org/download/pdf/docs/0.9.9/doc.userguide.print.pdf
PASSO 12: CONFIGURAÇÃO DA REDE
-Por "default" vem configurado GREEN+ORANGE+RED.
-Mude para GREEN+RED.
-Não se esqueça que a GREEN já foi configurada no PASSO 6.
-Configure a RED.
PASSO 12 A: PPPoE
-Para Speedy Home selecione no menu o item "PPPOE".
-O nome e a senha você irá colocar mais tarde.
-Não precisa configurar DNS e GATEWAY.
PASSO 12 B: ENDEREÇO ESTÁTICO OU DHCP
-Escolha de acordo com o seu ADSL instalado.
-Caso seja estático você deverá ter o endereço IP, GATEWAY e DNS.
Observações:
Em alguns casos chegamos a pegar um Speedy Business que no Windows funcionava
via DHCP e que no SmoothWall não foi possível, basta pegar os endereços.
Caso, o seu Speedy Business tenha que efetuar autenticação, faça o seguinte:
-Após ter configurado o SmoothWall siga para a estação Windows e tente navegar,
ao fazer isso será redirecionado para a página de autenticação do Speedy é
só preencher o formulário e pronto.
Pela nossa experiência isso foi necessário somente uma única vez.
Não foi possível usar o script(1) que tem na internet pois o SmoothWall não
tem o "LYNX" que é utilizado nesse script. Caso alguém queira efetuar o
trabalho de compilar o LYNX para o SmoothWall ficaríamos agradecido.
1.Autor : Edison Figueira Junior -
Mantenedor: BRconnection - http://www.brc.com.br
O link que tenho no meu Bookmark é esse:
http://200.204.182.49/ufla/guiaz/speedy.txt
PASSO 12 C: SERVIDOR DE DHCP
-Habilite o servidor de DHCP.
-Configure de acordo com o número de estações que tiver.
PASSO 13: SENHAS
-Coloque a senha para o "root". [acesso ao console do servidor]
-Coloque a senha para o "setup". [acesso ao programa de configuração]
-Coloque a senha para o "admin". [acesso a interface WEB]
Após efetuar essa configuração o SmoothWall será "reinicializado" e toda
a configuração posterior será feita via interface web.
https://IP_GREEN:445 - porta segura
http://IP_GREEN:81 - porta insegura
Observação:
IP_GREEN -> IP que você colocou no PASSO 6.
https://192.168.0.1:445
http://192.168.0.1:81
PASSO 14: INTERFACE WEB
Siga para a estação Windows, e caso ela esteja ligada efetue um "reboot" para
que a mesma "pegue" um endereço IP do SmoothWall para proceder nas configurações
via interface web.
PASSO 14 A: PPPoE(Speedy Home)
-Direcione o seu browser para o servidor.
https://192.168.0.1:445
-De um clique no link "dialup".
-Coloque o usuário e a senha na tela.
usuário: admin
senha : PASSO 13
-Na nova tela selecione "configurações ppp".
-Coloque um nome na caixa "Nome do Perfil".
exemplo: PROV_UOL
-Na caixa "Interface" escolha "PPPoE".
-Coloque zero(0) em "Tempo de ociosidade".
-Marque os itens: "Conexão persistente" e "Reiniciar conexão no Smoothwall".
-Em autenticação coloque o nome e a senha do seu provedor.
-Deixe a caixa "Método" em "PAP ou CHAP".
-Clique em salvar, vá para o link "home" e clique em "Conectar".
Se tudo estiver de acordo irá aparecer "Conectado" com o nome do perfil
escolhido.
PASSO 15: Configurações Adicionais
-Direcione o seu browser para o servidor.
https://192.168.0.1:445
-De um clique no link "remote access".
-Coloque o usuário e a senha na tela.
usuário: admin
senha : PASSO 13
-Nessa tela de um clique em "ssh" e habilite a opção SSH.
-Salve.
-De um clique em "services".
-Nessa tela de um clique em "proxy web" e habilite as opções:
"Transparente" e "Enabled"
-Salve.
-Para outras configurações consulte o Manual.
http://www.smoothwall.org/download/pdf/docs/0.9.9/doc.config.print.pdf
3.Instalando e Configurando o Servidor de Jogos
Passo 1: Procedimento de Instalação HalfLife/CS
-Você deverá ser o root para continuar a instalação.
# "logue" como root ou execute o comando su
-Criar o diretório halflife.
# mkdir /halflife
-Siga para o diretório onde estão os arquivos.Use o WinSCP para copiar
os arquivos par o servidor.
# cd /lixo ou diretório que você colocou os arquivos.
# [root@server /lixo]#
# cp hlds_l_3110_full.bin /halflife
# cp cs_15_full.tar.gz /halflife
# cd /halflife
# chmod 700 hlds_l_3110_full.bin(caso seja necessário)
# ./hlds_l_3110_full.bin
# rm hlds_l_3109_full.bin
-Depois disso "descompactar" o CS
# tar zxvf cs_15_full.tar.gz -C /halflife/hlds_l
# rm cs_15_full.tar.gz
-Definindo a variável LD_LIBRARY_PATH
# vi /etc/bashrc(ou joe)
-Adicione a seguinte linha:
export LD_LIBRARY_PATH=/halflife/hlds_l:$LD_LIBRARY_PATH
-Para que a variável tenha efeito "deslog" e "log" de novo.
-Editar o arquivo de configuração.
# cd /halflife/hlds_l/cstrike/
# vi server.cfg
-Faça as modificações necessárias.
-Agora vamos ao "jogo".
# cd /halflife
# cd hlds_l
# ./hlds_run -game cstrike +maxplayers 10 +map cs_assault
-O servidor deverá ser "startado" com o map cs_assault e o limite
de 10 jogadores.
-Se o servidor tiver OK você receberá a menssagem.
# WON Auth Server
-Para verificar o servidor CS digite no console.
# status
-Você terá as seguintes informações:
hostname :XXXXXXXXXXX
version : XXXXXXXXXXX
build :1027
tcp/ip :
map : cs_assault: 0x, 0y, 0z
players : 0 active (10 max)
-Para sair
# quit
PASSO 2: Instalação do DoD 3.1(Day of Defeat)
-Pegar o arquivo dod_v31_full.tar.gz em:
-Use o WinSCP para copiar para o Servidor.
-Coloque o arquivo em algum diretório ou crie um no servidor.
-Descompactar o arquivo dod_v31_full.tar.gz.
# tar zxvf /lixo/od_v31_full.tar.gz -C /halflife/hlds_l/
-Editar o arquivo de configuração.
# cd /halflife/hlds_l/dod/
# vi server.cfg
-Faça as modificações necessárias.
PASSO 3: Criação dos Usuários "cs" e "dod"
-Para tornar o processo mais prático para os operadores criamos dois
usuários o "CS" e o "DOD".
-Sendo que o shell dos respectivos usuários são:
#cat /etc/passwd
....
cs:x:0:0:halflife:/:/usr/sbin/cs
dod:x:0:0:halflife:/:/usr/sbin/dod
....
-O operador entra com o usuário "cs" no console 1 e com o "dod"
no console 2
# [ALT F1]
# global login:cs
# Password: xxxx
# [ALT F2]
# global login:dod
# password: xxxx
-Com isso o processo é todo automático.
Shell do Usuário CS
-------inicio
#!/bin/sh
#
# Copyright (c) 2002, cableONE/Global
#
echo Carregando o Servidor de Jogos CS
echo .......
echo ...
echo .
cd /halflife/hlds_l
./start_lan_cs
-------fim
Script star_lan_cs rodando na porta default (27015)
-------inicio
./hlds_run -game cstrike +exec server.cfg +sv_lan 1 -nomaster +maxplayers 25 + log on +map de_dust
-------fim
Shell do Usuário DOD
-------inicio
#!/bin/sh
#
# Copyright (c) 2002, cableONE/Global
#
echo Carregando o Servidor de Jogos DoD
echo .......
echo ...
echo .
cd /halflife/hlds_l
./start_lan_dod
-------fim
Script star_lan_dod rodando na porta (27016)
-------inicio
/hlds_run -game dod -port 27016 +exec server.cfg +sv_lan 1 -nomaster +maxplayers 25 + log on +map dod_anzio
-------fim
Não esqueça de mudar a permissão dos arquivos cs, dod, start_lan_cs e start_lan_dod.
#chmod 744 /usr/sbin/cs
#chmod 744 /usr/sbin/dod
#chmod 744 /halflife/hlds_l/start_lan_cs
#chmod 744 /halflife/hlds_l/start_lan_dod
Observação:
Gostaria se possível saber quem vai implementar essa solução o número de
estações e as modificações que serão necessárias, ou outras soluções que
julgar de melhor viabilidade, claro na plataforma LINUX.
Obrigado e Bons Negócios!
øøø----ALRibeiro®----øøø
Antonio Luis Ribeiro
São José dos Campos - SP - Brasil
Rodovia dos Tamoios Km 5,5 - CEP 12231-970
Tel.:+55(12)3947-5437 FAX: +55(12)3944-1177
EMail ribeiro@ieav.cta.br ou al_ribeiro@uol.com.br
sexta-feira, maio 13, 2005
Windows process
Mostra uma lista com os executaveis que vc pode ver no Task Manager, e explica cada um deles.
Muito bom!!!
Regular expression summary
[This text is taken directly from the Java API documentation]
Construct | Matches |
---|---|
Characters | |
x | The character x |
\\ | The backslash character |
\0n | The character with octal value 0n (0 <= n <= 7) |
\0nn | The character with octal value 0nn (0 <= n <= 7) |
\0mnn | The character with octal value 0mnn (0 <= m <= 3, 0 <= n <= 7) |
\xhh | The character with hexadecimal value 0xhh |
\uhhhh | The character with hexadecimal value 0xhhhh |
\t | The tab character ('\u0009') |
\n | The newline (line feed) character ('\u000A') |
\r | The carriage-return character ('\u000D') |
\f | The form-feed character ('\u000C') |
\a | The alert (bell) character ('\u0007') |
\e | The escape character ('\u001B') |
\cx | The control character corresponding to x |
Character classes | |
[abc] | a, b, or c (simple class) |
[^abc] | Any character except a, b, or c (negation) |
[a-zA-Z] | a through z or A through Z, inclusive (range) |
[a-d[m-p]] | a through d, or m through p: [a-dm-p] (union) |
[a-z&&[def]] | d, e, or f (intersection) |
[a-z&&[^bc]] | a through z, except for b and c: [ad-z] (subtraction) |
[a-z&&[^m-p]] | a through z, and not m through p: [a-lq-z](subtraction) |
Predefined character classes | |
. | Any character (may or may not match line terminators) |
\d | A digit: [0-9] |
\D | A non-digit: [^0-9] |
\s | A whitespace character: [ \t\n\x0B\f\r] |
\S | A non-whitespace character: [^\s] |
\w | A word character: [a-zA-Z_0-9] |
\W | A non-word character: [^\w] |
POSIX character classes (US-ASCII only) | |
\p{Lower} | A lower-case alphabetic character: [a-z] |
\p{Upper} | An upper-case alphabetic character:[A-Z] |
\p{ASCII} | All ASCII:[\x00-\x7F] |
\p{Alpha} | An alphabetic character:[\p{Lower}\p{Upper}] |
\p{Digit} | A decimal digit: [0-9] |
\p{Alnum} | An alphanumeric character:[\p{Alpha}\p{Digit}] |
\p{Punct} | Punctuation: One of !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ |
\p{Graph} | A visible character: [\p{Alnum}\p{Punct}] |
\p{Print} | A printable character: [\p{Graph}] |
\p{Blank} | A space or a tab: [ \t] |
\p{Cntrl} | A control character: [\x00-\x1F\x7F] |
\p{XDigit} | A hexadecimal digit: [0-9a-fA-F] |
\p{Space} | A whitespace character: [ \t\n\x0B\f\r] |
Classes for Unicode blocks and categories | |
\p{InGreek} | A character in the Greek block (simple block) |
\p{Lu} | An uppercase letter (simple category) |
\p{Sc} | A currency symbol |
\P{InGreek} | Any character except one in the Greek block (negation) |
[\p{L}&&[^\p{Lu}]] | Any letter except an uppercase letter (subtraction) |
Boundary matchers | |
^ | The beginning of a line |
$ | The end of a line |
\b | A word boundary |
\B | A non-word boundary |
\A | The beginning of the input |
\G | The end of the previous match |
\Z | The end of the input but for the final terminator, if any |
\z | The end of the input |
Greedy quantifiers | |
X? | X, once or not at all |
X* | X, zero or more times |
X+ | X, one or more times |
X{n} | X, exactly n times |
X{n,} | X, at least n times |
X{n,m} | X, at least n but not more than m times |
Reluctant quantifiers | |
X?? | X, once or not at all |
X*? | X, zero or more times |
X+? | X, one or more times |
X{n}? | X, exactly n times |
X{n,}? | X, at least n times |
X{n,m}? | X, at least n but not more than m times |
Possessive quantifiers | |
X?+ | X, once or not at all |
X*+ | X, zero or more times |
X++ | X, one or more times |
X{n}+ | X, exactly n times |
X{n,}+ | X, at least n times |
X{n,m}+ | X, at least n but not more than m times |
Logical operators | |
XY | X followed by Y |
X|Y | Either X or Y |
Grouping operators | |
(X) | X. This capturing group is remembered so it can be referenced later. Numbered starting at 1. |
(?:X) | X. Used purely for grouping, and isn't remembered. |
Back references | |
\n | Whatever the nth capturing group matched |
Quotation | |
\ | Nothing, but quotes the following character |
\Q | Nothing, but quotes all characters until \E |
\E | Nothing, but ends quoting started by \Q |
Special constructs (all groupings are non-capturing) | |
(?idmsux-idmsux) | Nothing, but turns match flags on - off |
(?idmsux-idmsux:X) | X, as a non-capturing group with the given flags on - off |
(?=X) | X, via zero-width positive lookahead |
(?!X) | X, via zero-width negative lookahead |
(?<=X) | X, via zero-width positive lookbehind |
(?<!X) | X, via zero-width negative lookbehind |
(?>X) | X, as an independent, non-capturing group |
segunda-feira, abril 04, 2005
Bean / dto com implementacao generecia toString
protected void appendAttributes(Object obj, StringBuffer buffer) {
if (obj == null) {
return;
}
try {
Class clazz = obj.getClass();
Field[] fields = clazz.getFields();
for (int i = 0; i < fields.length; i++) {
buffer.append(" | " + fields[i].getName());
try {
buffer.append(" [" + fields[i].get(obj) + "]");
} catch (Exception e) {
buffer.append(" [?]");
}
}
} catch (Exception e) {}
}
public String toString() {
StringBuffer result = new StringBuffer(getClass().getName());
result.append("@" + hashCode());
appendAttributes(this, result);
return result.toString();
}
}
sexta-feira, abril 01, 2005
Exemplo de hibernate many-to-many com mysql
----
<hibernate-mapping>
<class name="Customer" table="customers">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<set name="orders" inverse="true" lazy="true">
<key column="customer_id"/>
<one-to-many class="Order"/>
</set>
</class>
<class name="Order" table="orders">
<id name="id">
<generator class="native"/>
</id>
<property name="date"/>
<many-to-one name="customer" column="customer_id"/>
<list name="lineItems" table="line_items" lazy="true">
<key column="order_id"/>
<index column="line_number"/>
<composite-element class="LineItem">
<property name="quantity"/>
<many-to-one name="product" column="product_id"/>
</composite-element>
</list>
</class>
<class name="Product" table="products">
<id name="id">
<generator class="native"/>
</id>
<property name="serialNumber"/>
</class>
</hibernate-mapping>
---
create table works (
id BIGINT not null generated by default as identity,
tempo FLOAT,
genre VARCHAR(255),
text INTEGER,
title VARCHAR(255),
type CHAR(1) not null,
primary key (id)
)
create table author_work (
author_id BIGINT not null,
work_id BIGINT not null,
primary key (work_id, author_id)
)
create table authors (
id BIGINT not null generated by default as identity,
alias VARCHAR(255),
primary key (id)
)
create table persons (
id BIGINT not null generated by default as identity,
name VARCHAR(255),
primary key (id)
)
alter table authors
add constraint authorsFK0 foreign key (id) references persons
alter table author_work
add constraint author_workFK0 foreign key (author_id) references authors
alter table author_work
add constraint author_workFK1 foreign key (work_id) references works
Java Skyline: Database
Muito util com database utilities e db explorers...
um mto bom eh o DbVisualizer http://www.minq.se/products/dbvis
quarta-feira, março 30, 2005
sábado, março 26, 2005
quinta-feira, março 24, 2005
Speedy teste de logoff
Para saber se você, usuário de IP fixo, está liberado de autenticação
Primeiramente, verifique sua conexão.
Você pode usar o Assistente Speedy
http://200.205.125.211/speedy/sp/solucaoProblemas.asp
Se você tem um Speedy, mesmo sem provedor, você deve poder acessar o endereço abaixo:
http://200.171.222.97:86/speedywebapp/html/logoff.html
Se o link acima não funcionar, experimente
http://200.171.222.97:86/speedywebapp/servlet/logoff
ou
http://200.171.222.100:85/accountLogoff?confirmed=true
ou
http://200.171.222.100/logoff.html
Esses links são da Telefonica, não se espantem se forem alterados, ou não funcionarem...
Deve aparecer uma tela em branco, blank.html , e uma janela dizendo que o Speedy está ativo.
SPEEDY BUSINESS - Login script
###############################################################################
# SPEEDY BUSINESS - HOWTO #
###############################################################################
# Autor : Edison Figueira Junior -
# Mantenedor: BRconnection - http://www.brc.com.br
# Data : 18/08/2003 - 07/10/2002
# Versão : 2.0
# Copyright : LIVRE - Este script/howto pode ser alterado/modificado e
# redistribuido, mantendo-se apenas a identificação do Autor e Mantenedor.
# A Telefonia em Setembro/Outubro de 2002 decidiu que os SPEEDY - BUSINESS com
# IP fixo deverão ser autenticados.
# Essa autenticação diferentemente do SPEEDY HOME não utiliza o pppoe.
# Foi desenvolvido um mecanismo de autenticação proprietário, porem muito
# simples de se implementar.
#
# COMO FUNCIONA !!!
# -----------------
#
# Quando um pacote de rede (TCP/IP) é enviado para a internet atraves do SPEEDY,
# o roteador da TELEFONICA verifica se tem o bit Host-Key esta setado para a sua
# conexão, caso contrario o roteador desvia sua requisição para uma página de
# login.
# Essa pagina hoje esta trabalhando na porta 85, porem não deixa de ser protocolo
# http.
# Dois campos deste formulário devem ser preenchidos: Login/Senha.
# O Campo login dever ser preenchido da seguinte forma: login@provedor.com.br.
# Esse login/senha tem que ser obtido com o seu provedor.
# COMO AUTOMATIZAR A CONEXAO COM LINUX ?
# --------------------------------------
# Usuários do BRmultiaccess que possuem qualquer tipo de contrato, e que tenham
# a versao 3.6-2 ou superior, serão atualizados automaticamamente, bastando
# apenas configurar o login e a senha em Conf >> Speedy Business, os que nao
# possuem contrato poderão baixar a atualização atraves do site
# http://www.brc.com.br.
# Os usuários de Linux no geral podem utilizar o script que segue abaixo:
## ChangeLog
# 18/03/2003 - incluido a nova URL de autenticação, a anterior ainda nao foi removida
# pois ainda existem SPEEDY com autenticacao nessa URL.
## ChangeLog
# 22/03/2003 - A versão 2.0 apresentou problemas com o RedHat7.1.
# Foi alterado a estrutura das variáveis para "postagem"
# dos dados através do lynx e agora o teste de conectividade
# se baseia no ping. Caso o ping retorne "100% packet loss"
# é realizado a autenticação e caso contrário, não.
#
# Testado ok com Lynx Versão 2.8.4dev.16 (01 Jan 2001)
USERNAME="usuario@provedor"; ### Coloque o seu login aqui nesta variavel ###
PASSWORD="senha"; ### Coloque aqui sua senha nesta variavel ###
URL_TEST="www.terra.com.br"; # É necessário retirar o "http://" da url
POST_DATA="username=$USERNAME&password=$PASSWORD";
RET_TEST=`ping -c1 $URL_TEST |grep '100% packet loss'`; # Verifica conectividade com a internet
if [ -z "$RET_TEST" ];
then
echo "Já esta conectado !";
else
echo "Conectando ...";
echo -e $POST_DATA |lynx --dump --accept_all_cookies -post_data http://200.171.222.97:86/speedywebapp/servlet/logon?opcion=internet&CPURL=&username=$USERNAME&password=$PASSWORD;
fi
quinta-feira, março 17, 2005
quarta-feira, março 09, 2005
segunda-feira, fevereiro 28, 2005
Operacao com datas.
public static boolean validaDataExpirada(Date dataInformada, int dias){
boolean retorno = false;
Date dataAtual = new Date(System.currentTimeMillis());
Calendar now = Calendar.getInstance();
now.setTime(dataInformada);
now.add(Calendar.DAY_OF_YEAR, dias);
if (dataAtual.before(now.getTime())){
retorno = true;
} else {
retorno = false;
}
System.out.println("dataAtual = " + dataAtual);
System.out.println("dataInformada = " + now.getTime());
System.out.println(retorno);
return retorno;
}
quinta-feira, fevereiro 03, 2005
Novo servidor de jabber
http://www.chrome.pl
jabber -> chrome.pl
Jabber, servidores e etc
Este server jabber.wiretrip.org, faz o gateway msn, icq e yahoo
Este é o servidor que aceita conectar via porta 443, jabberes.org.
O Cliente q estou usando é psi que pode ser encontrado em: http://psi.affinix.com/
quarta-feira, fevereiro 02, 2005
amessage: Using Jabber behind firewalls
Artigo bom pra colocar um messenger no ar, sem mtas parafernalhas e estando dentro de uma jaula.
Using Jabber over an HTTP proxyThe more common case in which you might be interested in this document should be, that you have no administrative access to your firewall and you want to use your Jabber client behind and existing firewall. In this case this section is the best bet for you.
In this case most of the time you only have access to the world wide web and your local mail and file servers. Often users call this in my network only port 80 is open to the internet but most of the cases not even that is true because: I bet port 80 is closed as well and the users cannot connect directly to the web at all, they have to use a proxy, that relays the connections to the web. Using the proxy might be transparent and it might not be necessary to configure the proxy in your web browser, the network will then transparently route all connections on port 80 to the proxy.
There is Jabber Server jabber80.com, that allows you to connect to it using port 80. So if your network really allows you outgoing connections to this port, you might want to test this server as well. But in the case, that you have either explicitly or transparently use a transport, it won't help you that the server is listening at port 80. Proxies do not just relay your request connection to the outside web server, but will read your request, get the requested document by the outside server and forward it to you. Therefore if you send a Request to a web proxy, it has to be a valid HTTP request - and the Jabber protocol is no valid HTTP request.
The above rule that the proxy will not relay the connection but process the request itself has one important exception: HTTPS requests. The HTTPS protocol is designed to authenticate the server against the client. This is done because for some web applications (e.g. financial transactions) the user has to be sure that he is speaking to the bank and noone is able to modify the data inbetween). Therefore it cannot be accepted that the proxy is able to see or modify the request and it has only the possibility to pass the HTTPS request as it is to the server. This can be used to pass Jabber connections through the proxy very well. The only restriction a web proxy normally takes on https connections is that they have to go to the standard port for https requests which is port 443. Cause of this some Jabber servers (including all amessage servers, jabber.org.uk, jabberes.org, chrome.pl, jabber.wp.pl, jabber.elektron.com.pl and others) allow you to use port 443 to connect to them as well.
Servers urls
http://www.jabber80.com/
http://jabber.org.uk/
http://www.jabberes.org/
http://www.chrome.pl/
http://jabber.wp.pl/
http://jabber.elektron.com.pl/
amessage.info
quarta-feira, janeiro 05, 2005
sobre como "escapar" de um proxy eca ntlm (ms proxy)
By Milo Minderbender
Wed May 19th, 2004 at 11:18:58 PM EST
Since I started my new job a few months ago, I've been trapped in proxy prison, unable to ssh to my home machine or any internet servers. My main goal was to use downtime at my day job to do web development work for a small company that I set up a few years ago (more on the morality of this later). I've finally broken free of the proxy prison, and here's how I did it. It wasn't easy...
--------------------------------------------------------------------------------
Rules of the Game
Damn Microsoft HTTP proxy server uses proprietary NTLM (NT Lan Manager) protocol that only MS products know how to use. This is slowly changing with Mozilla and a few other applications now able to use the protocol.
For some idiotic reason you can only leave the NTLM proxy server on the other side if you are destined for port 80 or 443. I'm not sure how Windows Media Player gets around this... I sure haven't been able to avoid it.
Solution
Luckily a similarly imprisoned python geek has written an app called aps098 that converts from normal HTTP proxy traffic to NTLM proxy traffic. Although I could have written my own NTLM authentication, my end result would have been equivalent to this program, so why bother?
I was also able to find a program called desproxy that converts normal socket traffic to HTTP proxy traffic. I saw how to do this, but I decided to just use this prebuilt app. So now I can get ssh sockets out the other end of the NTLM proxy. But then what? I still was only able leave the NTLM proxy if my destination port was 80 or 443. I had to find a way to get to the ssh port (22) on the destination server. To do this, I needed a helping hand on the other side of the NTLM proxy server.
Well, I managed to whip up a tiny web application to run on my home computer that allows me to spawn a java threaded proxy server (something I wrote a few months earlier for something else) routing from whatever local port to whatever destination server and port. So if I put in local port 443, and destination of my server, port 22, it will listen on 443 and forward whatever sockets it gets on to my server at the ssh port. This web app has to run at port 80, of course, and I can use a regular web browser to see it. After it's all set up, I just type "ssh localhost" on my machine at work, and [tada!], I get the server's login prompt!
Diagram
diagram (any admin wanna insert this image?)
Conclusion
What a bloody nightmare. Even with 4 middlemen between me and my server, the connection speed is still bordering on usable. I was able to do a full checkout of the code from CVS with no problem. Unfortunately, actually doing work would require too many switches of where the java proxy is sending me. To ssh on my home computer for scp'ing the files there, then restarting the server, then switching to my app server's port to view the application, while not being able to watch the log files (via an ssh session). It's not really gonna work. For some small self-contained problems, it could work fairly well.
On Morality and Risk
My boss and the rest of my team have specifically told me to work as slowly as possible and to always appear as if I am working. Our team has nothing to do at the moment and we actually fight over who gets to work on the bug reports as they are raised. As usual, one or two levels up the ladder, they haven't got a clue. Ahh, the corporate life: do nothing all day, get paid a lot. Own your own business: work your ass off all day and all night for pennies an hour. I'd honestly take the latter over the ladder any day.
There's absolutely no risk of getting caught. The tech services team have been around a few times to (attempt to) install upgrades and whatnot. Their incompetence was appalling! I try not to think of what they are getting paid.
Since I originally set this up, another layer of job protection has been added. The aps098 application has been moved to another unused machine using the username of an ex-employee so that other team members can run their instant messaging apps through the NTLM proxy, so the traffic is now neither coming from my ip nor using my user name.
Freedom!!!
ntlm - achei algumas coisas de ntlm estou registrando (tunneling with proxy)
http://gray-world.net/tools/
http://www.taiyo.co.jp/~gotoh/ssh/connect.html
http://desproxy.sourceforge.net
http://ntlmaps.sourceforge.net/index.html
http://www.innovation.ch/java/ntlm.html
http://devel.squid-cache.org/ntlm/
http://davenport.sourceforge.net/ntlm.html
http://jcifs.samba.org/ ***
http://www.flatmtn.com/computer/Linux-SquidNT.html#Squid-4
http://www.luigidragone.com/networking/ntlm.html