Este POST pra mim tem a mesma função de uma agenda. (Cópia do POST da OI)
Eu particularmente não gosto de um telefone que fica em chamada em espera. Pois quando os clientes ligam acham que ninguém atende e não que ele já está ocupado.
Portanto entrei em contato no 10621 da CLARO que foi desgastante. Pois tudo é feito pra te levar a opção do nada e pra lugar nenhum a fim de você se cansar e desistir da ligação antes de conseguir falar com um atendente.
Depois de muito esforço de paciência escolhendo entre as opções finalmente consegui falar com um ser humano.
Após falar com o atendente fui rápido e aqui está a dica.
Na CLARO para desativar a chamada em espera na sua linha tire o telefone do gancho e ao ouvir o tom de linha tecle #43#.
Pronto… igualzinho o procedimento da OI. Mas eu não sabia.
Então segue o procedimento de como fazer pra nunca mais esquecer.
Autor: edmarcos souza
Desativando bluetooth interno para usar dongle externo no Linux
Hoje sou usuário do Linux Debian na versão testing/trixie com Gnome 45.
Ou seja uma versão bem atualizada.
Meu notebook é um Dell Inspiron 3558 (já não é muito moderno), e o mesmo possuí um dispositivo bluetooth conhecido como Intel 7260 ( Bus 002 Device 004: ID 8087:07dc Intel Corp. Bluetooth wireless interface )
O mesmo não funciona corretamente no Linux e até mesmo no windows há relatos de problemas.
Mesmo lendo diversas documentações não consegui fazer o mesmo funcionar corretamente.
Então apelei para o uso de um dongle externo. Mas a interface do Gnome não tem opção de selecionar qual o dispositivo bluetooth que deseja utilizar.
Uma opção seria instalar e usar o aplicativo blueman,
e a outra seria inibir o dispositivo bluetooth interno.
Optei pela opção de bloquear o dispositivo pelo controle do udev.
Para fazer isto crie um arquivo dentro de “/etc/udev/rules.d/” com qualquer nome desde que tenha a extensão .rules. No meu caso criei o arquivo com o nome “81-bluetooth-hci.rules”.
O conteúdo do arquivo /etc/udev/rules.d/81-bluetooth-hci.rules ficou assim:
SUBSYSTEM=="usb", ATTRS{idVendor}=="8087", ATTRS{idProduct}=="07dc", ATTR{authorized}="0"
Os valores foram obtidos pelo comando “lsub”
Então para outros modelos basta identificar e editar os valores de acordo com o seu dispositivo local.
Agora reinicie seu computador e agora seu dispositivo interno está desativado.
Minha referencia foi um post no portal stackexchange.com
https://elementaryos.stackexchange.com/questions/4177/how-to-select-bluetooth-dongle-over-internal-bluetooth-card
Configurando Servidor PPPOE simples no Debian 11
Recentemente precisei configurar um servidor PPPOE para testes internos em minha empresa.
Mas não precisava ser algo complexo com banco de dados Mysql, servidor Radius, etc. Eu já tinha scripts e documentação para configuração destes servidores mais complexos e em versões anteriores do Debian Linux, mas não tinha nada para algo simples e para a ultima versão do Debian 11. Então precisei pesquisar para como configurar e estou aqui publicando os passos por mim utilizado.
Não vou detalhar a instalação do Debian 11, mas basta realizar a instalação mínima selecionando apenas o pacote ssh pois até para economia de recursos e poder se utilizar uma máquina mais simples não se faz necessário a instalação de ambiente gráfico.
Para o hardware os requisitos são bem baixos apenas sendo necessário duas placas de rede. Uma por onde receberemos a internet do provedor e a outra para ser distribuída para o ambiente interno.
Após a instalação do Linux começamos instalando os pacotes mais abaixo.
É muito importante pois na falta deles a compilação do pacote rp-pppoe pelo código fonte não ocorrerá corretamente.
Primeiro vamos atualizar a lista de pacotes com o comando abaixo.
apt-get update
Agora vamos instalar os pacotes abaixo.
apt-get install make gcc ppp ppp-dev iptables
Com os pacotes devidamente instalados precisamos baixar o pacote rp-pppoe do site do projeto.
Na data em que edito este artigo a ultima versão disponível é a 3.15.
Podemos baixar o arquivo com o comando abaixo.
wget https://dianne.skoll.ca/projects/rp-pppoe/download/rp-pppoe-3.15.tar.gz
Após ter baixado o arquivo com sucesso temos que descompactar o mesmo com o comando abaixo.
tar -zxvf rp-pppoe-3.15.tar.gz
Após descompactar o arquivo será criado a pasta rp-pppoe-3.15. Vamos acessar a pasta scr que fica dentro da mesma.
cd rp-pppoe-3.15/src
Estando dentro da pasta src vamos executar os comandos abaixo pra compilar e instalar o pacote rp-pppoe
make clean ./configure --enable-plugin make make install
Com o sucesso da compilação agora passamos para a criação e configuração dos arquivos necessários para o funcionamento do servidor pppoe.
# 1 /etc/default/rp-pppoe_range
O primeiro arquivo que vamos configurar é o /etc/default/rp-pppoe_range. Este arquivo não existe. Eu estou criando o mesmo dentro da pasta /etc/default/ pois é uma pasta padrão de configuração, mas este arquivo pode ser criado em qualquer outro lugar desde que devidamente referenciado nos outros arquivos de configuração.
No meu servidor a faixa de rede escolhida é 100.90.80.0/24 mas você utilizar outra faixa de rede caso preferir desde que esta faixa de rede seja diferente da faixa de rede da entrada da sua internet.
Então o conteúdo do meu arquivo /etc/default/rp-pppoe_range ficou assim.
100.90.80.2-254
# 2 /etc/ppp/chap-secrets
Este segundo arquivo é onde ficará armazenados os logins e as senhas dos clientes pppoe do servidor.
O padrão deste arquivo é .:
"login" * "senha" *
A primeira coluna é o login entre “aspas”. Sim as aspas fazem parte do arquivo. A segunda coluna é o * asterisco. A terceira coluna é a senha também entre aspas. A quarta coluna é o endereço de ip. Se deixarmos um * asteriscos o endereço de ip será aleatório dentro da faixa de rede escolhida, mas caso deseje pode se fixar o endereço.
Veja os exemplos.
"edmarcos" * "123456" *
ou
"edmarcos" * "123456" 100.90.80.3
# 3 /etc/ppp/pppoe-server-options
O terceiro arquivo que vamos editar é o /etc/ppp/pppoe-server-options. Este arquivo já existe e precisamos editar apenas um parâmetro e acrescentar outros ao mesmo.
Primeiro procure pela linha que contém este texto.:
require-pap
comente esta linha acrescentando um # no começo da mesma e abaixo dela adicione esta linha.
require-chap
Então o arquivo deve ficar assim:
#require-pap require-chap
Agora vamos configurar os servidores de dns que desejamos utilizar. No meu caso estou utilizando os servidores do google, mas outros servidores podem ser utilizados. Então adicione as duas linha conforme exemplo abaixo.
ms-dns 8.8.8.8 ms-dns 8.8.4.4
E vamos adicionar mais 4 parâmetros ao final do arquivo como no exemplo abaixo.
netmask 255.255.255.0 defaultroute noipdefault usepeerdns
# 4 /usr/local/sbin/rp-pppoe-server.sh
O quarto arquivo a ser editado não existe e precisa ser criado. Vamos criar o mesmo em /usr/local/sbin/rp-pppoe-server.sh com o conteúdo abaixo.
#!/bin/bash modprobe pppoe /usr/sbin/pppoe-server -k -C EdegServer -L 100.90.80.1 -p /etc/default/rp-pppoe_range -I eth0
No caso edite seu arquivo alterando o parâmetro “-C EdegServer” para o nome que quiser usar em seu servidor. Também altere o parâmetro “-I eth1” pelo nome da placa de rede de saída do seu servidor.
Com o arquivo devidamente customizado vamos adicionar permissão de execução do mesmo com o comando abaixo.
chmod a+x /usr/local/sbin/rp-pppoe-server.sh
# 5 /usr/local/sbin/masquerade.sh
Para que os computadores conectados neste servidor pppoe possam navegar pela internet precisamos configurar um roteamento via iptables. Para isto vamos configurar um arquivo simples para fazer o masquerade.
Segue exemplo abaixo.
#!/bin/bash FW=/sbin/iptables SRC=100.90.80.0/24 # faixa de rede do servidor pppoe WAN=eth1 # placa de rede da entrada da internet echo 1 > /proc/sys/net/ipv4/ip_forward $FW -F $FW -t nat -F $FW -t mangle -F $FW -t nat -A POSTROUTING -o $WAN -s $SRC -j MASQUERADE
Também precisamos dar permissão de execução neste arquivo com o comando abaixo.
chmod a+x /usr/local/sbin/masquerade.sh
# 6 /etc/rc.local
Para que o script /usr/local/sbin/rp-pppoe-server.sh e o script /usr/local/sbin/masquerade.sh sejam executados automaticamente toda a vez que o computador for inicializado ou reinicializado vamos fazer de maneira simples editando o arquivo /etc/rc.local.
Nas versões mais recentes do Debian este arquivo não existe mais. Por isto vamos criá-lo conforme o exemplo abaixo.
#!/bin/sh /usr/local/sbin/rp-pppoe-server.sh /usr/local/sbin/masquerade.sh exit 0
Também precisamos dar permissão de execução no /etc/rc.local conforme exemplo abaixo.
chmod a+x /etc/rc.local
Pronto. O servidor está devidamente configurado agora basta testar o mesmo.
Referencias usadas:
https://dianne.skoll.ca/
https://www.vivaolinux.com.br/dica/Configurando-um-PPPOE-Server
Cubic – Instalando no Debian 11 Bullseye
Cubic (Custom Ubuntu ISO Creator) é uma ferramenta para customização de imagens isos de cd.
Segundo a tradução da página do projeto é: “O Cubic permite uma navegação sem esforço pelas etapas de personalização ISO e apresenta um ambiente de linha de comando virtual integrado para personalizar o sistema de arquivos Linux. Você pode criar novos projetos de personalização ou modificar projetos existentes. Parâmetros importantes são preenchidos dinamicamente com padrões inteligentes para simplificar o processo de personalização.“
No meu dia a dia com a informática tenho utilizado versões do Linux Mint Mate rodando LIVE CD por PENDRIVE principalmente para realização de backups de computadores Windows, clonagem de HDs e também em várias outras situações de manutenção.
Mas as imagens ISOS rodando via LIVECD não trazem alguns programas necessários no meu dia a dia. Entre estes programas estão o ddrescue, gparted, nfs-common. Portanto toda vez que inicializava um pendrive tinha que fazer um “apt-get update” e “apt-get install” estes programas.
Na correria do dia a dia queria não ter que perder mais este tempo.
A solução para tal problema seria customizar uma IMAGEM ISO deixando estes programas já pré instalados.
Uma maneira fácil de se fazer é utilizando o programa CUBIC mas infelizmente este pacote não se encontra disponível nos repositórios DEBIAN. Ao tentar instalar customizando repositórios PPA no debian o mesmo apresentou erros.
Então neste artigo vou mostrar uma maneira alternativa de fazer a instalação do CUBIC no DEBIAN 11 Bullseye.
Comece acessando o repositório PPA pelo seu navegador Web.
http://ppa.launchpad.net/cubic-wizard/release/ubuntu/pool/main/c/cubic/
Selecione a versão mais recente disponível. No meu caso selecionei a versão abaixo.
http://ppa.launchpad.net/cubic-wizard/release/ubuntu/pool/main/c/cubic/cubic_2022.12-74-release~202212012321~ubuntu22.04.1_all.deb
Faça o download do mesmo e execute os comando abaixo. Obs: substitua cubic_2022.12-74-release~202212012321~ubuntu22.04.1_all.deb pela versão que você baixou
ar x cubic_2022.12-74-release~202212012321~ubuntu22.04.1_all.deb zstd -d < control.tar.zst| xz > control.tar.xz zstd -d < data.tar.zst| xz > data.tar.xz ar -m -c -a sdsd cubic.deb debian-binary control.tar.xz data.tar.xz dpkg -i --force-overwrite cubic.deb apt-get -f install
Pronto o pacote cubic está instalado e agora é só fazer uso do mesmo.
Não vou falar sobre o uso do mesmo neste artigo mas abaixo link para vídeo no youtube do Prof.Juliano Ramos.
Criando um Remaster do Ubuntu 20.04
Referencias usadas:
How to Create Custom Linux Mint or Ubuntu ISO
Cubic PPA
Discussão no Redit: Can Cubic be installed on Debian 11 ?
Banco de dados PostgreSQL. Linux vs Windows. Qual melhor performance ?
O sistema da banco de dados PostgreSQL é com certeza um dos melhores bancos de dados do mercado.
Mas aonde o mesmo roda melhor ? Seria em servidores rodando LINUX ou servidores rodando Windows ?
Segundo o ditado “Mata a cobra e mostra o pau” eu prefiro “mostrar a cobra morta”.
Pois bem para isto realizei testes de desempenho em um hardware de boa qualidade para tirar as minhas conclusões, e mostrar aos homens de pouca fé o quanto o LINUX é melhor.
Nestes testes o hardware utilizado tinha as seguintes características:
PROCESSADOR INTEL GOLD G6405
PLACA MÃE ASUS H510M-C
16gb MEMÓRIA DDR4 KEEPDATA
HD NVME 1tb Kingspec (WHITH CACHE)(Obs: Este modelo de ssd Chines possuiu memória cache e um ótimo desempenho)
Os testes foram feitos usando o pgbench que é uma ferramenta para teste benchmark do PostgreSQL.
# Teste 1 Windows
No primeiro teste o computador foi formatado com Windows 10 Pro. Todos os drivers da placa mãe foram instalados e todas as atualizações do Windows foram aplicadas. Nenhum software adicional foi instalado.
A versão do PostgreSQL utilizada foi a 9.5 devido ao fato de atender uma empresa de software que a utiliza para o seu sistema e eu forneço suporte.
postgresql-9.5.25-1-windows-x64.exe
A instalação do PostgreSQL foi a padrão e o únicos ajustes feitos foram permitir o acesso sem senha para 127.0.0.1 no arquivo “pg_hba.conf” e aumentar o parâmetro “shared buffers” para 2gb no arquivo “postgresql.conf”.
Feito isto primeiramente foi criando uma base da dados com o nome “teste”.
Depois realizei a população desta base da dados com o comando abaixo:
pgbench -U postgres -h 127.0.0.1 -i -s 500 teste
Com esta base de dados devidamente populada os testes foram realizados com o comando abaixo:
pgbench -U postgres -h 127.0.0.1 -c 10 -j 2 -t 10000 teste
Realizei 3 testes na sequencia e os valores de INCLUSÃO e EXCLUSÃO obtidos na sequência foram.:
WINDOWS 10 | ||
INCLUSÃO | EXCLUSÃO | |
1 | 3419 | 3423 |
2 | 3262 | 3265 |
3 | 3802 | 3806 |
MÉDIA | 3494 | 3498 |
Link das imagens dos 3 testes realizados.
teste windows 1
teste windows 2
teste windows 3

# Teste 2 Linux (DEBIAN)
Neste teste o computador foi reinstalado usando o Linux Debian 12.
A instalação foi feita com o instalador em modo texto selecionando pacotes básicos sem interface gráfica + servidor ssh.
O PostgreSQL usado foi a versão binária do postgresql-9.5 para Debian 64 fornecida no site do PostgreSQL através dos repositórios do
http://apt.postgresql.org.
Para instalar esta versão foi adicionado o repositório do site oficial do PostgreSQL. Para isto faça como no exemplo abaixo.
apt install gnupg2
echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - apt-get update apt-get -y install postgresql-9.5
Os testes feitos usaram os mesmos parâmetros do teste no windows.
Primeiro vamos conectar no postgres como no exemplo abaixo.
psql -U postgres -h 127.0.0.1 -d template1
Agora vamos criar a base de dados de teste.
create database teste
Agora vamos popular a base de teste.
pgbench -U postgres -h 127.0.0.1 -i -s 500 teste
E agora vamos realizar o teste.
time pgbench -U postgres -h 127.0.0.1 -c 10 -j 2 -t 10000 teste
Também foram realizados 3 testes na sequencia e os valores de INCLUSÃO e EXCLUSÃO obtidos foram.:
LINUX (PostgreSQL Apt Repository) | ||
INCLUSÃO | EXCLUSÃO | |
1 | 3627 | 3628 |
2 | 4049 | 4050 |
3 | 4170 | 4171 |
MÉDIA | 3949 | 3950 |
Comparando as médias dos testes no Windows o Postgres rodando no Linux foi 13% mais eficiente.
Link das imagens dos 3 testes realizados.
teste Linux 1 (PostgreSQL Apt Repository)
teste Linux 2 (PostgreSQL Apt Repository)
teste Linux 3 (PostgreSQL Apt Repository)
# Teste 3 Linux (Debian Postgres instalado pelo código fonte)
Neste teste foi aproveitado a mesma instalação do Linux anterior do Debian 12.
Mas para poder instalar o postgres pelo código fonte primeiro foram removidos os pacotes .deb instalados anteriormente.
apt-get remove \ postgresql-9.5 \ postgresql-client-9.5 \ postgresql-client-common \ postgresql-common \ postgresql-contrib-9.5
Após remover os pacotes .deb foi feito o download do código fonte da versão postgresql-9.5.25.tar.bz2
Não vou detalhar os métodos de compilação. Mas as configurações do postgres foram a mesmas.
LINUX (compilado) | ||
INCLUSÃO | EXCLUSÃO | |
1 | 6310 | 6312 |
2 | 6696 | 6696 |
3 | 6708 | 6708 |
MÉDIA | 6571 | 6572 |
Link das imagens dos 3 testes realizados.
teste Linux 1 (Compilado)
teste Linux 2 (Compilado)
teste Linux 3 (Compilado)
Comparando as médias dos testes o Linux com o Postgres compilado pelo código fonte foi quase 88% eficiente que a versão rodando no Windows e aproximadamente 66% mais eficiente que a versão Linux instalada pelos repositórios do site do Postgres.
Comentem os testes e caso alguém tenha links para outros testes deixem nos comentários.
Desativando chamada em espera no OI FIXO
Este post pra mim tem a mesma função de uma agenda.
Eu particularmente não gosto de um telefone que fica em chamada em espera. Pois quando os clientes ligam acham que ninguém atende e não que ele já está ocupado.
E em uma oportunidade entrei em contato no 0800 da OI e uma atendente muito rapidamente me ensinou como desativar o recurso.
Mas um tempo depois após uma alteração do meu plano telefônico a chamada em espera estava novamente ativada. E desta vez já não foi fácil conseguir falar com uma atendente que conseguisse me passar novamente a informação correta de como se desativar o recurso.
E hoje depois de várias tentativas anteriores frustradas acertei uma atendente que localizou nos manuais da OI como se faz. Claro que dei um 10 na avaliação de atendimento dela.
Então segue o procedimento de como fazer pra nunca mais esquecer.
Para desativar a chamada em espera (desprogramar)
#43#
Para ativar a chamada em espera (programar)
*43#
Espero que este post seja útil para mais pessoas.
Imprimindo do Linux para Windows via LPD sem usar o Samba
As ultimas atualizações do Windows 10 criaram grandes problemas para imprimir de Linux para Windows.
Passei por situações onde em ambiente de teste funcionava mas nos cliente por mais que tudo estava configurado igual dava erro e não imprimia.
Cansando e sem perspectiva de solução optei por uma nova abordagem do problema.
Em vez de insistir usando SAMBA/CUPS por que não usar CUPS/LPR ?
Apesar de pouco documentado o Windows possui suporte a impressão no formato LPR mas o mesmo vem desativado por padrão.
Então vamos para os procedimentos necessários.
Parte 1 – Ativar o Serviço LPD no Windows.
Então o primeiro passo é ativar o mesmo. Para isto abre o painel de controle “Clássico” o mesmo do estilo do Windows7.
Vá em Painel de controle.:
Painel de controle\Programas.:
Painel de controle\Programas\Programas e recursos.:
Selecione “Ativar ou desativar recursos do Windows”
Na janela “Ativar ou desativar recursos do Windows” procure por “Serviços de impressão e Documentos” e marque a opção “Serviço de impressão LPD”
Aplique as modificações do Windows e reinicie caso necessário.
Instale, configure e compartilhe sua impressora no windows como faria normalmente. Mas recomendo no nome do compartilhamento usar nomes curtos e evitar espaços nos nomes, pois na hora de configurar o computador com Linux espaços devem ser substituídos por %20 o que pode deixar a configuração mais confusa e gerar erros.
Parte 2 – Configurar o cliente LINUX.
Caso o computador onde a impressora esteja instalada possua endereço ip fixo podemos configurar apontando para o endereço ip do computador. Mas caso o mesmo não possua ip fixo ai devemos configurar pelo nome NetBios mas para isto precisamos de configurações adicionais em seu computador com Linux.
Nas distribuições baseadas em Debian instale os pacotes:
smbclient libnss-winbind
Fontes: https://charlieharvey.org.uk/page/slow_nautilus_browse_with_netbios
apt-get install smbclient libnss-winbind
Agora edite o arquivo.:
/etc/nsswitch.conf
localize a linha começando com “hosts:” algo parecido como abaixo.
hosts: files mdns4_minimal [NOTFOUND=return] dns myhostname
edite e após a palavra files adicione “wins”, deve ficar assim agora.
hosts: files wins mdns4_minimal [NOTFOUND=return] dns myhostname
Agora seu computador com Linux consegue localizar computadores windows pelo nome netbios. Agora podemos configurar via cups para imprimir no computador com windows.
No meu exemplo vou configurar utilizando a interface web do próprio cups mas outros métodos podem ser usados.
Como na imagem abaixo acesse em seu navegador o endereço https://127.0.0.1:631
Vá em “Administração” e selecione “Adicionar impressora”
Vai surgir uma janela de autenticação. Em distribuições Debian digite o login “root” e a senha do mesmo. Caso seu Linux seja Ubuntu ou Linux Mint use o usuário principal e senha do mesmo.
Com a autenticação bem sucedida selecione a opção “Impressora ou máquina LPD/LPR”. Obs: Eventualmente o texto pode variar um pouco conforme a versão do Cups ou do Linux.
Agora clique em continuar. Obs: No meu exemplo a versão do Cups está com erro de tradução e está escrito “Continar”…
No meu exemplo o computador se chama “win10-pc” e a impressora está compartilhada como “hplaser”.
Então a configuração fica.: lpd://win10-pc/hplaser
Após configurar clique em continuar.
Selecione o fabricante da impressora. No meu exemplo selecionei “HP”.
Na próxima tela selecione o modelo de sua impressora conforme o exemplo abaixo.
Na próxima tela selecione “Definir opções padrão”
Pronto. A impressora está configurada.
Agora pode testar sua impressão. Claro que para algumas impressoras como hp1102w e modelos Samsung drivers adicionais devem estar instalados em seu Linux para o correto funcionamento.
Configurando LTSP 5 no Linux Mint 20.1 (Revisado – mas ainda por melhorar)

Mas um dos problemas que encontrei na nova versão é que os processos são executados nas estações e não no servidor. O que pode não ser útil no caso de uso de computadores mais antigos e com menor capacidade de processamento.
Infelizmente desde a versão 20 do Linux Mint e também nas ultimas versões do Ubuntu e na próxima versão do Debian 11 Bullseye somente a versão 2020 do LTSP está disponível.
Então vou mostrar como configurar o LTSP 5 no Linux Mint 20.1 usando pacotes do Ubuntu 18.04 Bionic e as estações usando a versão Debian 10 Buster. Para começar o primeiro passo é aplicar todas as atualização disponíveis até o momento. Para isto execute os comandos:
apt-get update apt-get upgrade apt-get dist-upgradeCom o sistema já atualizado também configure um endereço de IP fixo para o seu servidor. É importante lembrar que qualquer outro servidor DHCP na rede é interessante desativar os mesmos para evitar conflitos na rede.
Eu particularmente não gosto muito da estrutura de DNS fornecida pelo systemd. Por isto vamos desativar este serviço.
systemctl disable systemd-resolved systemctl stop systemd-resolved rm /etc/resolv.conf cat /etc/NetworkManager/NetworkManager.conf | grep -q "^dns=default" || { sed -i "s|\[main\]|\[main\]\ndns=default|" /etc/NetworkManager/NetworkManager.conf } systemctl restart NetworkManagerCaso tenho configurado seu IP de rede no arquivo /etc/network/interfaces também vamos configurar manualmente o dns no arquivo /etc/resolv.conf
echo "nameserver 8.8.8.8" > /etc/resolv.confTambém vamos desativar o protocolo IPV6.
echo "net.ipv6.conf.all.disable_ipv6=1" > /etc/sysctl.d/disableipv6.confPara um melhor funcionamento das estações vamos remover o pacote dbus-user-session e instalar o pacote dbus-x11.
apt remove dbus-user-session apt install dbus-x11Agora vamos instalar os pacotes necessários para a instalação do LTSP.
apt-get -y install \ isc-dhcp-server \ tftpd-hpa \ nfs-kernel-server \ nbd-server \ debconf-utils \ debootstrap \ tcpd \ openbsd-inetd \ ldm-serverO passo seguinte é adicionar o repositório do Ubuntu 18.04 para podermos instalar os pacotes LTSP 5 que foram removidos das versões recentes.
echo "deb http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse" > /etc/apt/sources.list.d/bionic.listVamos atualizar novamente a informação dos pacotes com o novo repositório.
apt-get updateSe eventualmente tiver o pacote dnsmasq instalado vamos removê-lo.
apt-get remove dnsmasq apt-get -f install apt-get autoremoveAgora podemos instalar os pacotes LTSP.
apt-get -y install \ ltsp-server \ ltsp-server-standalone \ ltspfsSe chegou até aqui sem erros finalmente então vamos proceder a configuração do LTSP. Eu particularmente prefiro configurar usando a arquitetura i386 que dá suporte a equipamentos mais antigos. Se não for o seu caso experimente também a versão amd64.
Para definir o uso de versão i386 nos terminais vamos editar o arquivo /etc/ltsp/ltsp-build-client.conf com o conteúdo abaixo:
ARCH="i386" #ARCH="amd64" MIRROR="http://deb.debian.org/debian/" DIST="buster"A chave para não ter erros da instalação do LTSP no Mint são a definição do mirror http://deb.debian.org/debian/ feito acima no arquivo /etc/ltsp/ltsp-build-client.conf e também criar um link simbólico na pasta ltsp-build-client. Para isto execute os comandos abaixo.
cd /usr/share/ltsp/plugins/ltsp-build-client ln -sf Debian LinuxmintAgora podemos completar a instalação do Servidor LTSP executando o comando ltsp-build-client.
ltsp-build-client --copy-package-cacheO parâmetro –copy-package-cache é util pois caso tenha um erro na instalação e tenha que fazer novamente os arquivos foram salvos em /var/cache/apt/archives o que evitará que se tenha que baixar os mesmos novamente. Caso tenha executado tudo corretamente a sua instalação deve ter concluído sem erros. Por padrão esta instalação foi feita usando o método NBD. Este modelo tem suas vantagens mas uma desvantagem que me incomoda é que toda vez que alguma modificação for feita para algum terminal editando o arquivo lts.conf uma nova imagem tem que ser gerada, o que pode ser um pouco chato pela demora. Caso prefira trabalhar no formato NFS edite o arquivo /opt/ltsp/i386/etc/ltsp/update-kernels.conf.
sed -i "s|^BOOT_METHODS=\"NBD AOE NFS\"|BOOT_METHODS=\"NFS NBD AOE\"|" /opt/ltsp/i386/usr/share/ltsp/update-kernels chroot /opt/ltsp/i386 /usr/share/ltsp/update-kernels ltsp-update-kernelsCaso tenha optado por configurar usando NFS é necessário configurar o arquivo /etc/exports. Você pode configurar assim:
/opt/ltsp *(ro,no_root_squash,async,no_subtree_check)Ou deixar explicito sua faixa de rede assim como no exemplo. Modifique de acordo com sua faixa de rede.
/opt/ltsp 192.168.0.0/24(ro,no_root_squash,async,no_subtree_check)Depois de modificar o arquivo /etc/exports temos que reiniciar o serviço NFS usando o comando abaixo
/etc/init.d/nfs-kernel-server restartMas nada vai funcionar se não configurarmos o DHCP. Eu prefiro trabalhar com o isc-dhcp-server pra quem usa dnsmasq não vou entrar em detalhes pois nunca implementei nada usando o mesmo. Caso tenha mais de uma placa de rede no seu servidor edite o arquivo /etc/default/isc-dhcp-server como no exemplo abaixo. Nele comentei o uso do protocolo IPV6 e indiquei minha placa de rede em INTERFACESv4. Esta configuração nem sempre é necessária. Mas configurar corretamente não fará nenhum mal.
INTERFACESv4="enp0s3" #INTERFACESv6=""Agora vamos configurar o arquivo /etc/dhcp/dhcpd.conf adicionando ao fim do arquivo a linha abaixo.
include "/etc/ltsp/dhcpd.conf";A instalação já terá criado um arquivo modelo em /etc/ltsp/dhcpd.conf. Mas precisamos editar o mesmo de acordo com sua rede. Veja o exemplo abaixo.
# # Default LTSP dhcpd.conf config file. # authoritative; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.20 192.168.0.45; option domain-name "edeg.localnet"; option domain-name-servers 192.168.0.1; option broadcast-address 192.168.0.255; option routers 192.168.0.1; next-server 192.168.0.200; # get-lease-hostnames true; option subnet-mask 255.255.255.0; option root-path "/opt/ltsp/i386"; if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" { filename "/ltsp/i386/pxelinux.0"; } else { filename "/ltsp/i386/nbi.img"; } }Fique atento a linha next-server, ela deve apontar para o endereço IP do seu servidor LTSP Após tudo configurado reinicie o servidor DHCP
/etc/init.d/isc-dhcp-server restartou
service isc-dhcp-server restartAjustes para as estações devem ser feitos em /opt/ltsp/i386/etc/lts.conf. Mas eu gosto de criar um link para /etc/ltsp
cd /etc/ltsp ln -sf /opt/ltsp/i386/etc/lts.conf ./Se tudo deu certo seu servidor LTSP já está funcionando corretamente.
Alterando a senha do seu certificado digital A1 .pfx no Linux
Hoje em dia muitas empresas fazem uso de certificados no formato A1 pela facilidade de disponibilizar o mesmo em vário computadores simultaneamente, diferente dos certificado no formato A3 que podem apenas ser utilizados em um computador por vez.
Mas ocorre que muitos fornecedores de certificados fornecem os arquivos de certificados .pfx já com uma senha pré configurada, e esta senha ou é muito simples tipo 1234 ou uma senha difícil de ser lembrada.
No ambiente Windows podemos importar o certificado .pfx e depois exportar o mesmo pelo Internet Explorer alterando a senha do certificado exportado.
Mas após várias pesquisas na internet não encontrei nenhuma aplicação para o Linux, nem no projeto GNOME ou projeto KDE.
Mas podemos fazer a manipulação destes certificados tanto pelo Mozilla Firefox ou como pelo Google Chrome.
No firefox vá em:
Preferências -> Avançado -> Ver certificados
Nesta janela vá em:
Seus certificados -> Importar
Configurando certificado A3 no LINUX Mint 19
A configuração de certificados digitais no formato A3 no LINUX possuí uma boa documentação já publicada, mas os softwares envolvidos para esta configuração são para versões antigas do Ubuntu e ao tentar configurar em distribuições mais recentes o procedimento encontra erros por causa de dependências de pacotes .deb não satisfeitas.
Nesta postagem vou detalhar como contornar estes problemas.
O site da certificadora VALID apresenta uma ótima documentação e os arquivos necessários para a configuração e funcionamento do seus próprios certificados como o de certificados de outras empresas certificadoras. Abaixo o link do site da VALID onde podemos fazer o download dos pacotes necessários.
http://www.validcertificadora.com.br/SafeSignLinux
As configurações apresentadas abaixo foram testadas no LINUX Mint 19 Mate, mas a mesma deve funcionar em outras distribuições LINUX derivadas do Debian.
Configurando sua leitora
O primeiro passo é configurar o driver para a nossa leitora. Nos meus testes estou utilizando uma leitora da Gemalto.
Para o funcionamento desta leitora e de várias outras basta instalar o pacote libccid que acompanha todas a distribuições LINUX recentes.
Mais informações podem ser vistas no site da Gemalto.
http://support.gemalto.com/
No exemplo abaixo vamos instalar o pacote libccid
apt-get update apt-get install libccid
Também vamos instalar os pacotes pcscd e pcsc-tools.
apt-get install pcscd pcsc-tools
Para testar se sua leitora está funcionando vamos executar no terminal o comando pcsc_scan. Na imagem abaixo podemos ver que minha leitora Gemalto foi identificada e a mesma não possuiu nenhum cartão inserido.
Comprovado o funcionamento da leitora o próximo passo é instalar a biblioteca safesignidentityclient.
Esta biblioteca é desenvolvida pela SafeSign e é utilizada por várias outras empresas certificadoras e a mesma pode ser baixada do site da VALID nas versões 32 ou 64 bits. Os links estão abaixo:
Versão 32 bits.: safesignidentityclient_3.0.77-Ubuntu_i386.deb
Versão 64 bits.: safesignidentityclient_3.0.77-Ubuntu_amd64.deb
Faça o download do pacote safesign para a versão correta do seu LINUX e depois também faça o download do pacote libgdbm3 32 ou 64 bits para a versão correta do seu LINUX. Os links estão abaixo:
Versão 32 bits.: libgdbm3_1.8.3-13.1_i386.deb
Versão 64 bits.: libgdbm3_1.8.3-13.1_amd64.deb
No exemplo abaixo vou baixar e instalar o pacote libgdbm3 64 bits.
cd /usr/local/src/ wget -c http://mirrors.kernel.org/ubuntu/pool/main/g/gdbm/libgdbm3_1.8.3-13.1_amd64.deb dpkg -i libgdbm3_1.8.3-13.1_amd64.deb
Agora vamos baixar o pacote safesignidentityclient na pasta “/usr/local/src/”
cd /usr/local/src/ wget -c https://s3-sa-east-1.amazonaws.com/shared-www.validcertificadora.com.br/safesignidentityclient_3.0.77-Ubuntu_amd64.deb
Devido aos problemas de dependências que este pacote apresenta no Mint19 não vamos instalar o mesmo. E sim apenas extrair seus arquivos para que possam ser copiados.
Primeiro vamos criar uma pasta dentro /tmp para extrair os arquivos.
mkdir -p /tmp/safesign
Agora vamos extrair os arquivos do pacote .dev
dpkg -x /usr/local/src/safesignidentityclient_3.0.77-Ubuntu_amd64.deb /tmp/safesign/
Como nossa configuração vai ser um “enxerto”, é altamente recomendável não misturar estes arquivos com os arquivos naturais do sistema. Por isto toda nossa instalação vai ser feita dentro da pasta /opt.
Então criaremos as pastas /opt/safesign/bin e /opt/safesign/lib
mkdir -p /opt/safesign/bin /opt/safesign/lib
Agora vamos copiar alguns arquivos que extraímos em /tmp/safesign para /opt/safesign/bin e /opt/safesign/bin
Abaixo a sequencia de comandos que você deve fazer:
cd /tmp/safesign/ cd usr/lib/ cp -av * /opt/safesign/lib/ cd ../bin/ cp -av * /opt/safesign/bin/
Agora vamos configurar o LINUX para que o mesmo procure pelas bibliotecas copiadas em /opt/safesign/lib/
Então temos que criar arquivo em /etc/ld.so.conf.d
Abaixo os comandos necessários:
touch /etc/ld.so.conf.d/safesign.conf echo "/opt/safesign/lib" > /etc/ld.so.conf.d/safesign.conf ldconfig
Configurando seu Navegador
Neste ponto o seu certificado está pronto pra uso e já pode ser configurado e testado no seu navegador Mozilla Firefox.
Abra seu navegador Mozilla Firefox. Vá em.: Menu -> Preferências
Em “pesquisar em preferências” procure por certificados (veja imagem abaixo)
Agora selecione a opção “Dispositivos de Segurança”
Na próxima janela selecione a opção “carregar”
Na janela “Carregar driver de dispositivo PKCS#11” em “Nome do módulo” edite caso deseje ou pode manter como está. Já em “Nome do arquivo do módulo” selecione o botão “Procurar” e navegue até.: /opt/safesign/lib/libaetpkss.so.3 e selecione o mesmo.
Caso não receba nenhuma mensagem de erro o mesmo foi carregado perfeitamente.
Agora na próxima janela selecione a opção “Ver certificados“. Neste momento seu cartão de certificado deve estar inserido na leitora.
Após selecionar a opção “Ver certificados” a próxima janela aparecerá solicitando a senha de seu cartão. Insira a senha correta nesta janela.
Com a senha inserida a próxima janela irá mostrar que seu certificado foi carregado corretamente e está funcional.
Tokenadmin
Junto ao pacote safesing vem a aplicação tokenadmin para que possamos gerenciar seu certificado no cartão. Agora vamos configurar as dependências necessárias para o funcionamento do mesmo.
Precisamos baixar os pacotes libwxbase2.8, libwxgtk2.8 e libtiff4. Abaixo os links para os mesmos.
Versão 32 bits.:
libwxbase2.8-0_2.8.12.1-6ubuntu2_i386.deb
libwxgtk2.8-0_2.8.12.1-6ubuntu2_i386.deb
libtiff4_3.9.6-9ubuntu1_i386.deb
libpng12-0_1.2.54-1ubuntu1.1_i386.deb
Versão 64 bits.:
libwxbase2.8-0_2.8.12.1-6ubuntu2_amd64.deb
libwxgtk2.8-0_2.8.12.1-6ubuntu2_amd64.deb
libtiff4_3.9.6-6ubuntu1_amd64.deb
libpng12-0_1.2.54-1ubuntu1.1_amd64.deb
Nos exemplos abaixo estaremos configurando na versão 64 bits.
cd /usr/local/src wget -c https://s3-sa-east-1.amazonaws.com/shared-www.validcertificadora.com.br/libwxbase2.8-0_2.8.12.1-6ubuntu2_amd64.deb wget -c https://s3-sa-east-1.amazonaws.com/shared-www.validcertificadora.com.br/libwxgtk2.8-0_2.8.12.1-6ubuntu2_amd64.deb wget -c https://s3-sa-east-1.amazonaws.com/shared-www.validcertificadora.com.br/libtiff4_3.9.6-6ubuntu1_amd64.deb wget -c http://security.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb dpkg -i libtiff4_3.9.6-6ubuntu1_amd64.deb dpkg -i libpng12-0_1.2.54-1ubuntu1.1_amd64.deb mkdir -p /tmp/wx dpkg -x libwxbase2.8-0_2.8.12.1-6ubuntu2_amd64.deb /tmp/wx dpkg -x libwxgtk2.8-0_2.8.12.1-6ubuntu2_amd64.deb /tmp/wx cd /tmp/wx/usr/lib/x86_64-linux-gnu cp -av * /opt/safesing/lib/ ldconfig cd /usr/local/bin ln -sf /opt/safesign/bin/* ./
Já podemos testar o funcionamento do aplicativo digitando tokenadmin no terminal e aplicativo se abrirá como na imagem abaixo.
update-icon-caches /usr/share/icons/*
cd /tmp/safesign/ cd usr/lib/ cp -av * /opt/safesign/lib/ cd ../bin/ cp -av * /opt/safesign/bin/
Fontes utilizadas:
Valid Certificadora Digital – PARA USUÁRIOS LINUX
Usando certificado digital GOV.BR no Firefox em Debian GNU/Linux
Instalando o SafeSign Crypto USB Token no Firefox/Linux
Instalado e utilizando o Token GD Starsign com o certificado A3 no Ubuntu
Utilizando certificados e-CNPJ e e-CPF no Linux
Instaladores – Mac OS e Linux
Suporte Gemalto
Dicas-L – Utilizando smartcards