Um pouco do meu ambiente de trabalho com Debian 12 Bookworm e Gnome 43

Voltando ao Debian ❤️

Desde o tempo que a distribuição Kurumin era “gente” (minha primeira experiência com linux) tenho um grande apreço por este mundo. Acabei de sair do Ubuntu 22, que não deixa de ser um “Debian 12”, pois ele é totalmente baseado nele. Já comentei sobre os motivos que acabei utilizando ubuntu no artigo Como é meu desktop de trabalho com Ubuntu.

Eu não utilizo o PC para jogar e o intuito aqui é para meus amigos e colegas da área mais de telecom que utilizam mais para trabalho. Como tenho acesso a muitos servidores e roteador eu me sinto inseguro em realizar um acesso a partir de um Windows, e me sinto em paz ao usar Linux. Mas se você gosta de jogos instalar em dual boot pode ser uma boa alternativa. Vai jogar entra no windows, vai trabalhar da uma chance pro Linux:-) além do mais o GNOME te deixa com uma pegada mais produtiva!

Faça download neste link: Debian 12 Live Desktop (amd64) Gnome localize por debian-live-12.x.x-amd64-gnome.iso, você irá baixar a ISO com o Gnome, mas se deseja outra interface fica a seu critério, mas estarei utilizando o Gnome.

INICIANDO LIVE CD

Ao entrar no live, ao clicar em instalar irá solicitar uma senha, é live. Prossiga com a instalação ao seu gosto.

APÓS INSTALAÇÃO
Ao logar pela primeira vez (ou não) ao clicar no campo para digita a senha, clique sobre a engrenagem no canto direito inferior e selecione: GNOME sobre Xorg (você só precisa fazer 1x), o padrão utiliza o Wayland, no entanto alguma aplicações como Anydesk, TeamViewer entre outras e uso de cabo HDMI, infelizmente o Wayland não está preparado para tudo ainda, então vamos de motor gráfico Xorg!

Como a pegada Debian é mais hardcore já sabe, vamos começar abrindo o terminal, de cara vamos remover toda a cacetada de idiomas que o firefox vem instalado e deixar só pt-br.

$ sudo apt purge firefox-esr-l10n-* -y 
$ sudo apt install firefox-esr-l10n-pt-br -y 

certifique-se de estar tudo atualizado, antes de começar

$ sudo apt update; sudo apt upgrade -y

REPOSITÓRIO
Por mais que agora contamos também com non-free-firmware, vamos adicionar o contrib e o non-free ,

$ sudo nano /etc/apt/sources.list

Ficando assim:

# See https://wiki.debian.org/SourcesList for more information.
deb http://deb.debian.org/debian bookworm main non-free-firmware contrib non-free
deb-src http://deb.debian.org/debian bookworm main non-free-firmware contrib non-free

deb http://deb.debian.org/debian bookworm-updates main non-free-firmware contrib non-free
deb-src http://deb.debian.org/debian bookworm-updates main non-free-firmware contrib non-free

deb http://security.debian.org/debian-security/ bookworm-security main non-free-firmware contrib non-free
deb-src http://security.debian.org/debian-security/ bookworm-security main non-free-firmware contrib non-free

# Backports allow you to install newer versions of software made available for this release
deb http://deb.debian.org/debian bookworm-backports main non-free-firmware contrib non-free
deb-src http://deb.debian.org/debian bookworm-backports main non-free-firmware contrib non-free

Agora instale o firmware-linux

$ sudo apt update
$ sudo apt install firmware-linux

PLACA DE VÍDEO
O terror da maioria das pessoas!
Nvidia

$ apt install nvidia-driver firmware-misc-nonfree

Dificuldades? Esse link pode lhe ajudar.

AMD/ATI

$ apt installfirmware-amd-graphics

GRUB + KERNEL
Eu desativo algumas proteções do kernel (Nuca faça essa M** em um servidor) pois se tratando de desktop sei que não terei exemplo um serviço web rodando para o mundo, então para ganhar performance vou colocar mitigations em off, se você gosta do nome das interfaces de rede como eth0 wlan0 use o net.ifnames e biosdevname em 0, se você quiser ver tudo que esta sendo carregado no sistema também pode remover quiet splash se desejar. Se não sabe o que ta fazendo pule essa parte! 🙂

$ sudo nano /etc/default/grub

Adicione ao GRUB_CMDLINE_LINUX_DEFAULT , vai ficar assim, porem resume= é sei UID!

GRUB_CMDLINE_LINUX_DEFAULT="mitigations=off net.ifnames=0 biosdevname=0 quiet splash resume=UUID=7c3fc737-..."
$ sudo update-grub

Mais ajustes

$ sudo su -

Se você tem SSD/NVME e execute os 2 comandos

# echo "vm.vfs_cache_pressure=50" >> /etc/sysctl.conf
# echo "vm.dirty_background_ratio = 5" >> /etc/sysctl.conf

Se tiver mais que 4GB de memória ram.

# echo "vm.swappiness=10" >> /etc/sysctl.conf

Carregue e reinicie

# sysctl -p
# exit
$ sudo reboot

ZSH + POWERLEVEL10K
Já que nosso “negócio” é terminal que tal dar uma tunada com ZSH, primeiramente baixa as fontes MesloLGS

$ sudo apt install wget -y
$ cd /usr/local/share/fonts
$ sudo wget https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS%20NF%20Regular.ttf
$ sudo wget https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS%20NF%20Bold.ttf
$ sudo wget https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS%20NF%20Italic.ttf
$ sudo wget https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS%20NF%20Bold%20Italic.ttf

Configure o terminal com a fonte MesloLGS NF

Se deseja alter a cor do terminal:

Instale os pacotes necessários:

$ sudo apt install git zsh zsh-autosuggestions zsh-syntax-highlighting fzf -y
$ git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/.powerlevel10k
$ echo 'source ~/.powerlevel10k/powerlevel10k.zsh-theme' >>~/.zshrc
$ zsh

Várias perguntas serão feitas, para chegar ao resultado a baixo respondi com:
y y y y 3 1 n 1 1 1 1 2 2 2 n 1 y, mas ajuste ao seu gosto.

Para reconfigurar novamente execute:

$ p10k configure

Vai ser necessário colocar algumas entradas em nosso ~/.zshrc

$ nano ~/.zshrc

Deixe assim:

# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
  source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi

source ~/.powerlevel10k/powerlevel10k.zsh-theme

# share history across multiple zsh sessions
setopt SHARE_HISTORY
# append to history
setopt APPEND_HISTORY
# adds commands as they are typed, not at shell exit
setopt INC_APPEND_HISTORY
# do not store duplications
setopt HIST_IGNORE_DUPS
# ignore duplicates when searching
setopt HIST_FIND_NO_DUPS
# removes blank lines from history
setopt HIST_REDUCE_BLANKS

# setup autocompletion
autoload -Uz compinit && compinit
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
# autocompletion using arrow keys (based on history)
bindkey '\e[A' history-search-backward
bindkey '\e[B' history-search-forward

setopt prompt_subst
autoload -U colors && colors
local resetColor="%{$reset_color%}"
PS1=""
PS1="%F{cyan}"'($(basename "$CONDA_DEFAULT_ENV")) '"$resetColor"
PS1+='%n%{$reset_color%}@$(scutil --get ComputerName):'"$resetColor"
PS1+=$'\e[38;5;211m$(short_cwd) ';
PS1+=$'\e[38;5;48m[$(git_repo):$(git_branch)] ';
PS1+='$resetColor$ ';

bindkey "^[[1;5D" backward-word
bindkey "^[[1;5C" forward-word

source /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh
source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/share/doc/fzf/examples/key-bindings.zsh

export LS_OPTIONS='--color=auto'
eval "`dircolors`"
alias ls='ls $LS_OPTIONS'
alias ll='ls $LS_OPTIONS -l'
alias l='ls $LS_OPTIONS -lha'

alias grep='grep --color'
alias egrep='egrep --color'
alias ip='ip -c'
alias diff='diff --color'
alias meuip='curl ifconfig.me; echo;'
alias tail='grc tail'
alias ping='grc ping'
alias ps='grc ps'
alias netstat='grc netstat'
alias dig='grc dig'
alias traceroute='grc traceroute'
alias apt='sudo apt'
alias l='ls -lh'
alias la='ls -lha'

HISTFILE=~/.zsh_history
HISTSIZE=10000
SAVEHIST=10000
setopt appendhistory

# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh

Adicione comando personalizado em preferencias para sempre que abrir o terminal carregar o zsh

FERRAMENTAS & UTILITÁRIO
Como utilizo muito o vim no meu dia a dia faço alguns ajustes.

$ apt install vim
$ cat <<EOF >~/.vimrc
set showmatch " Mostrar colchetes correspondentes
set ts=4 " Ajuste tab
set sts=4 " Ajuste tab
set sw=4 " Ajuste tab
set autoindent " Ajuste tab
set smartindent " Ajuste tab
set smarttab " Ajuste tab
set expandtab " Ajuste tab
"set number " Mostra numero da linhas
EOF
$ sudo sed -i 's/"syntax on/syntax on/' /etc/vim/vimrc
$ sudo sed -i 's/"set background=dark/set background=dark/' /etc/vim/vimrc

Sou amante do terminal e muitas da ferramentas de terminal ajudam a debugar problemas, recomendo uma leitura do artigo: Como melhorar a produtividade. Tem alguns aplicações extras ai no meio também como filezilla, mas garanto tudo é útil!

$ sudo apt install htop iotop iftop hdparm locate traceroute tree \
  ipcalc sipcalc mtr-tiny whois dnsutils net-tools ncdu apt-transport-https \
  neofetch breeze bash-completion fzf curl grc bgpq4 nmap lm-sensors ncal \
  rtorrent links arping bmon tcpdump ethtool iptraf-ng mutter qbittorrent \
  filezilla vinagre rdesktop icedtea-netx default-jre kolourpaint -y

Provavelmente você utiliza VPNs então os pacotes a baixo não podem falar:

$ sudo apt install network-manager-gnome \
 network-manager-pptp-gnome \
 network-manager-vpnc-gnome \
 network-manager-ssh-gnome \
 network-manager-openvpn-gnome \
 network-manager-l2tp-gnome 

Eu gosto de dar uma personalizada no GNOME, vou deixar aqui algumas extensões que curto. (Use se te agradar).

$ sudo apt install gnome-shell-extension-manager gnome-tweaks  -y

Abra a aplicação: Gereciador de Extensões e clique em Navegar

Na buscar pesquise por:
Blur my Shell ela vai deixar acompanhado o papel de parede.

Gnome 4x UI Improvements irá exibir as áreas de trabalho, inclusive você pode arrastar uma aplicação para dentro dela.

Tray Icons: Reloaded caso você tem problema com algum ícones que não é exibido na barra, pode tentar usa-lo.

Burn My Windows se você é das antigas e lembra do compiz vai gostar desse, janelinha explodindo, pegando fogo, e muitas animações. Nas configurações dessa extensão você encontra muita frescura rsrsrs

Desktop Cube vai tornar suas áreas de trabalho em um cubo.

Net speed Simplified se você quiser acompanhar o trafego da sua interface de rede.

Color Picker se você precisa descobrir uma cor de qualquer objeto do seu desktop essa é uma ótima extensão.

OpenWeather informações de clima.

Bubblemail se você precisa acompanhar seus e-mails esse cara pode lhe ajudar bastante. é necessário a instalação do bubblemail.

$ cd /tmp; wget http://bubblemail.free.fr/releases/debian/bubblemail_1.8-1_all.deb 
sudo apt install ./bubblemail_1.8-1_all.deb

Agora basta configurar sua conta na extensão.

Existe muita personalização possíveis, para icones novos e themas crie dois diretórios.

$ mkdir ~/.themes
$ mkdir ~/.icons

Vamos supor que queira alterar o cursor para um novo, vou baixar o Cursor Breeze que eu gosto (herança do KDE) faça download do mesmo. (Ignore meus prints do ubuntu, reaproveitei)

Extraia o mesmo e mova para a pasta breeze para dentro de .icons que esta dentro da sua Pasta Pessoal, no linux tudo que começa com ponto é oculto, para exibi-los pressione CRTL+H.

Em seguida abra Ajustes, em Aparência, Cursor selecione Breeze

Alguns pacotes de icones/themas você encontra no repositório também. Um bem bonito é o Papirus.

$ sudo apt install papirus-icon-theme

Vou deixar alguns Icones/Temas que acho bonito para os temas basta colocar eles na pasta ~/.themes
https://www.gnome-look.org/p/1477945
https://www.gnome-look.org/p/1201366
https://www.gnome-look.org/p/1357889
https://www.gnome-look.org/p/1013030
https://www.gnome-look.org/p/1661983
https://www.gnome-look.org/p/1678986
https://www.gnome-look.org/p/1348081
https://www.pling.com/p/1280977

GOOGLE CHROME
Você pode manipular as extensões pelo Google Chrome também. Primeiramente vamos instala-lo.

$ cd /tmp/
$ wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
$ sudo apt install ./google-chrome-stable_current_amd64.deb chrome-gnome-shell -y

Acesse no Google Chrome: Integração com GNOME Shell Clique em Usar no Chrome. Agora com a extensão instalada você pode administrar acessando: https://extensions.gnome.org/local/

TELEGRAM
Telegram até esta no repositório porem recebe atualizações sempre atrasadas, etão vamos fazer a instalação manual, abra seu terminal:

$ cd /tmp/
$ wget https://telegram.org/dl/desktop/linux -O tsetup.tar.xz
$ tar xvf tsetup.tar.xz
$ sudo mv Telegram/ /opt/
$ sudo chown $USER: /opt/Telegram/ -R
$ sudo ln -sf /opt/Telegram/Telegram /usr/bin/telegram
$ telegram &

VIRTUALBOX 7
Vamos atualizar o repositório oficial do Vbox.

$ wget -O- https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo \
   gpg --dearmor --yes --output /usr/share/keyrings/oracle-virtualbox-2016.gpg
$ sudo nano /etc/apt/sources.list.d/virtualbox.list 
deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg]  https://download.virtualbox.org/virtualbox/debian bookworm contrib

Salve e feche.

$ sudo apt update
$ sudo apt install virtualbox-7.0 -y
$ sudo usermod -a -G vboxusers $USER
$ cd /tmp
$ wget https://download.virtualbox.org/virtualbox/7.0.12/Oracle_VM_VirtualBox_Extension_Pack-7.0.12.vbox-extpack
$ VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-7.0.12.vbox-extpack

Uma extensão do GNOME que você pode gostar é a Virtualbox Applet

DROPBOX

$ cd /tmp/
$ sudo apt install python3-gpg -y
$ wget "https://www.dropbox.com/download?dl=packages/ubuntu/dropbox_2022.12.05_amd64.deb" \
  -O dropbox.deb
$ sudo apt install ./dropbox.deb -y
$ apt update
$ apt upgrade

Não achei solução ainda para o erro apt-key, então comenti a linha do repositorio.

$ sudo nano /etc/apt/sources.list.d/dropbox.list

SUBLIME-TEXT

$ wget -O- https://download.sublimetext.com/sublimehq-pub.gpg \
  | gpg --dearmor | sudo tee /usr/share/keyrings/sublimehq-archive-keyring.gpg &>/dev/null
$ echo "deb [signed-by=/usr/share/keyrings/sublimehq-archive-keyring.gpg] \
  https://download.sublimetext.com/ apt/stable/" | \
  sudo tee /etc/apt/sources.list.d/sublime-text.list
$ sudo apt update ; sudo apt install sublime-text -y

VSCODE

$ cd /tmp
$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
$ sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
$ sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
$ sudo apt update ; sudo apt install code -y

TEAMVIEWER

$ cd /tmp/
$ wget https://download.teamviewer.com/download/linux/teamviewer_amd64.deb
$ sudo apt install ./teamviewer_amd64.deb -y

ANYDESK

$ wget -qO - https://keys.anydesk.com/repos/DEB-GPG-KEY \
  | sudo tee /usr/share/keyrings/anydesk.asc
$ echo "deb [signed-by=/usr/share/keyrings/anydesk.asc] \
  http://deb.anydesk.com/ all main" \
  |sudo tee /etc/apt/sources.list.d/anydesk-stable.list
$ sudo apt update
$ cd /tmp 
$ wget http://ftp.br.debian.org/debian/pool/main/p/pangox-compat/libpangox-1.0-0_0.0.2-5+b2_amd64.deb
$ sudo apt install ./libpangox-1.0-0_0.0.2-5+b2_amd64.deb -y
$ sudo apt install anydesk -y
$ sudo systemctl disable anydesk

SKYPE
Para os mais idosos (e olha que eu já abandonei ele :-D)

$ cd /tmp/
$ wget https://repo.skype.com/latest/skypeforlinux-64.deb
$ sudo apt install ./skypeforlinux-64.deb -y

Vai precisar ajustar o repositório para nao ter erro, como não uso não pesquisei. Mas remove do repositório que esta resolvido, se precisar atualizar baixe e instale novamente.

$ sudo rm /etc/apt/sources.list.d/skype-stable.list

ONLYOFFICE
Melhor pacote office na minha opnião.

$ cd /tmp
$ wget https://download.onlyoffice.com/install/desktop/editors/linux/onlyoffice-desktopeditors_amd64.deb 
$ sudo apt install ./onlyoffice-desktopeditors_amd64.deb -y

GOOGLE EARTH

$ cd /tmp/
$ wget https://dl.google.com/dl/earth/client/current/google-earth-pro-stable_current_amd64.deb
$ sudo apt install ./google-earth-pro-stable_current_amd64.deb -y

CALCULADORA IPV6

$ sudo apt install python3-pip
$ pip install --break-system-packages ipaddr
$ sudo wget https://blog.remontti.com.br/arquivos/ip6calc_py3 -O /bin/ip6calc
$ sudo chmod a+x /bin/ip6calc
$ ip6calc 2804:f123::/32

AJUSTES INICIALIZAÇÃO
Você pode estranhar o NumLock não vir ativado na inicialização para resolver isso:

$ sudo apt install numlockx -y
$ mkdir ~/.config/autostart/ &>/dev/null
$ nano ~/.config/autostart/numlockx.desktop

Adicione:

[Desktop Entry]
Type=Application
Exec=/usr/bin/numlockx on
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[pt_BR]=Inicia NumLock Ativo
Name=Inicia NumLock Ativo
Comment[pt_BR]=Inicia NumLock Ativo
Comment=Inicia NumLock Ativo

Outro problema que você pode encontrar dependendo do seu teclado, é que o ponto no teclado numérico ao usar algum aplicativo que esteja sendo executado pelo wine/playonlinux saia uma virgula. Abra seu winbox ai e teste. Se for seu caso abra o terminal e execute:

$ /usr/bin/xmodmap -e 'keycode 129 = period

Resolveu, crie uma entrada na inicialização!
$ nano ~/.config/autostart/pontowine.desktop
Adicione:

[Desktop Entry]
Type=Application
Exec=/usr/bin/xmodmap -e 'keycode 129 = period'
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[pt_BR]=Ponto Wine
Name=Ponto Wine
Comment[pt_BR]=Ponto Wine
Comment=Ponto Wine

PRINT COM FLAMESHOT
Gnome melhorou bastante o print nas ultimas versões mais ainda gosto mais do flameshot

$ sudo apt install flameshot -y

Para criar um atalho abra ConfiguraçõesTeclado > Atalhos de teclado > Veja e personalize atalhos

Clique em Atalhos personalizados e Adicione um novo
Nome: Print Flame
Comando: /usr/bin/flameshot gui
Associar a tecla Print (Meu exemplo vou usar CTRL+Print)

$ flameshot config 

Faça os ajustes de configurações com as suas necessidades, eu desativo as notificações e uso Enter para copiar para área de transferência.

GIMP
Se você precisa editar algumas imagens (É o concorrente do photoshop)

 sudo apt install gimp

SPOTIFY

$ curl -sS https://download.spotify.com/debian/pubkey_7A3A762FAFD4A51F.gpg \
 | sudo gpg --dearmor --yes -o /etc/apt/trusted.gpg.d/spotify.gpg
$ echo "deb http://repository.spotify.com stable non-free" | sudo \
 tee /etc/apt/sources.list.d/spotify.list
$ sudo apt update; sudo apt install spotify-client -y

PLAYONLINUX
Para executar algumas aplicações .exe Exemplo um Winbox, The Dude (Os que mais me perguntam)…

$ sudo dpkg --add-architecture i386 ; sudo apt update ; sudo apt upgrade
$ sudo apt install playonlinux msttcorefonts

Vou demonstrar como instalar o Dude e Winbox com o playonlinux, faça download dos mesmo, vamos te terminal né!

$ $ cd ~/Downloads
$ wget https://download.mikrotik.com/routeros/6.48.7/dude-install-6.48.7.exe
$ wget https://download.mikrotik.com/winbox/3.38/winbox.exe

Abra o Playonlinux e clique em Instalar um program e em seguida Instalar um programa não listado

Avançar

Avançar

Avançar

Selecione Editar ou atualizar um aplicativo existente e Avançar

Marque Exibir unidade virtuais selecione default e Avançar.

Avançar

Selecione 32bits e Avançar

Clique em Navegar, e procure o dude-install-6.xx.x.exe em Downloads e clique em Avançar

Instalador será iniciado, então clique em I Agree, Next, Next, mas não em Close

Não clique em Close ainda!

Abra o explore entre na pasta Download e copie o winbox.exe para PlayOnLinux’s virtual drives/default/drive_c/Program Files/Dude

Se preferir pelo terminal:

$ cp ~/Downloads/winbox.exe \
   ~/PlayOnLinux\'s\ virtual\ drives/default/drive_c/Program\ Files/Dude/

Feito isso agora sim pode clicar em Close, desta forma todos os .exe do diretório da instalação irão aparecer para criar um atalho.

Selecione winbox.exe e clique em Avançar

De o nome Winbox para aplicação, e clique em Avançar

Faça o mesmo para o dude.exe

Agora para finalizar escolha: Eu não quero criar outro atalho, e clique em Avançar

Pode fechar o PlayOnLinux

Dois atalhos/arquivos [Dude.desktop Winbox.desktop] foram criado na Área de trabalho, porém você não irá ver nada nela, pois por ao logarmos no sistema com Gnome, a extensão Desktop con NG foi desativada (Caso queira ativar) eu não gosto ehehehe. Eu irei mover eles para o menu de aplicações do sistema, para isso basta mover esses atalhos para ~/.local/share/applications, vou fazer por comando que é menos print para esse tutorial hehehe.

$ mv ~/Área\ de\ trabalho/*.desktop ~/.local/share/applications

Pronto você pode clicar com o direito e Fixar aos favoritos.

Um dia também interessante é copiar as fontes da MS para a unidade virtal, assim as aplicações não ficam bugadas.

$ cp /usr/share/fonts/truetype/msttcorefonts/* \
   ~/PlayOnLinux\'s\ virtual\ drives/default/drive_c/windows/Fonts/

CLIENTE SSH
Meu cliente SSH é o próprio terminal, porém você deve usar um desses programinhas de fresco que tem salvo joão, josé e maria… 😛

Como sou das antigas acabei que criando um Shell Script (usando dialog) para ir “catalogando” todos os servidores/roteadores que tenho acesso. Veja um exemplo simples:

$ sudo apt install dialog

Crie um arquivo com:

$ nano vaiplaneta
#!/bin/bash
# Requer dialog
while : ; do
    resposta=$(
      dialog --stdout               \
             --title 'Acesso SSH'  \
             --menu 'Selecione o Servidor:' \
            0 0 0                   \
            1 'IDENTIFICA - LALALA' \
            2 'IDENTIFICA - LALALA' \
            3 'IDENTIFICA - LALALA' \
            4 'IDENTIFICA - LALALA' \
            5 'IDENTIFICA - LALALA' \
            6 'IDENTIFICA - LALALA' \
            7 'IDENTIFICA - LALALA' \
            8 'IDENTIFICA - LALALA' \
            9 'IDENTIFICA - LALALA' \
            0 'Sair' )

    [ $? -ne 0 ] && break

    case "$resposta" in
         1) ssh -p 12345 usuario@10.10.10.10 ;;
         2) ssh -p 12345 usuario@10.10.10.10 ;;
         3) ssh -p 12345 usuario@10.10.10.10 ;;
         4) ssh -p 12345 usuario@10.10.10.10 ;;
         5) ssh -p 12345 usuario@10.10.10.10 ;;
         6) ssh -p 12345 usuario@10.10.10.10 ;;
         7) ssh -p 12345 usuario@10.10.10.10 ;;
         8) ssh -p 12345 usuario@10.10.10.10 ;;
         9) ssh -p 12345 usuario@10.10.10.10 ;;
         0) break ;;
    esac
done
$ chmod +x vaiplaneta
$ ./vaiplaneta

Outro modelinho mais elaborado sub seleção…

$ nano gogo
#!/bin/bash
# Requer dialog

janela=inicial

while : ; do

    case "$janela" in
        inicial)
            grupo=$(
                dialog --stdout \
                    --backtitle 'Acessos Remoto' \
                    --title 'ACESSO' \
                    --menu 'Selecione o Grupo:'\
                    0 0 0 \
                    1 'Selecionou 1' \
                    2 'Selecionou 2' \
            )
            [ $? -ne 0 ] && break
            case "$grupo" in
                1) janela=selecionou_1 ;;
                2) janela=selecionou_2 ;;
            esac
        ;;

        #####

        selecionou_1)
            anterior=inicial
            selecionou_1=$(
              dialog --stdout               \
                     --title 'Acesso SSH'  \
                     --menu 'Selecione o Servidor:' \
                    0 0 0                   \
                    1 'IDENTIFICA 1a - LALALA' \
                    2 'IDENTIFICA 1b - LALALA' \
                    3 'IDENTIFICA 1c - LALALA' \
                    0 'Sair' )

            [ $? -ne 0 ] && janela=$anterio

            case "$selecionou_1" in
                 1) clear; echo "IDENTIFICA 1a"; ssh -p 12345 usuario@10.10.10.10 ;;
                 2) clear; echo "IDENTIFICA 1b"; ssh -p 12345 usuario@10.10.10.10 ;;
                 3) clear; echo "IDENTIFICA 1c"; ssh -p 12345 usuario@10.10.10.10 ;;
                 0) break ;;
            esac
        ;;

       #####

        selecionou_2)
            anterior=inicial
            selecionou_2=$(
              dialog --stdout               \
                     --title 'Acesso SSH'  \
                     --menu 'Selecione o Servidor:' \
                    0 0 0                   \
                    1 'IDENTIFICA 2a - LALALA' \
                    2 'IDENTIFICA 2b - LALALA' \
                    3 'IDENTIFICA 2c - LALALA' \
                    0 'Sair' )

            [ $? -ne 0 ] && janela=$anterio

            case "$selecionou_2" in
                 1) clear; echo "IDENTIFICA 2a"; ssh -p 12345 usuario@10.10.10.10 ;;
                 2) clear; echo "IDENTIFICA 2b";ssh -p 12345 usuario@10.10.10.10 ;;
                 3) clear; echo "IDENTIFICA 2c";ssh -p 12345 usuario@10.10.10.10 ;;
                 0) break ;;
            esac
        ;;

        #####

        *)
            echo Abortado...
            exit

        #####

    esac

    retorno=$?
    [ $retorno -eq 1   ] && janela=$anterior   # cancelar
    [ $retorno -eq 255 ] && break              # Esc

done
$ chmod +x gogo
$ ./gogo

No meu caso utilizo Dropbox como nuvem, salvo meus script lá, então crio uma alias, assim em todos meus desktops ficam sincronizados os mesmo atalhos.
No ZSH

$ nano ~/.zshrc

No Bash

$ nano ~/.bashrc

Adicione

alias vaiplaneta='~/Dropbox/scripts/vaiplaneta'
alias gogo='~/Dropbox/scripts/gogo'

Vou deixar aqui um manual para manualzinho do Dialog para download.

Um outro problema que tive foi com alguns equipamentos antigos (KexAlgorithms) algumas OLTs por exemplo, nete caso editei /etc/ssh/ssh_config e fiz as entradas de acordos com os prefixos, como no meu caso todas estão na classe 172.18.0.0/24

$ sudo nano /etc/ssh/ssh_config

Adicionei ao final do arquivo:

Host 172.18.0.*
    HostKeyAlgorithms ssh-dss
    KexAlgorithms diffie-hellman-group1-sha1

CHAVES SSH
Gerando as chaves

$ ssh-keygen -t rsa
$ nautilus ~/.ssh

Salve suas chaves: id_rsa id_rsa.pub
Para instalar a chave em um servidor use o comando:

$ ssh-copy-id -p 22 remontti@xxx.xxx.xxx.xxx

Se um dia precisar recuperando chaves do backup

$ cd /onde/vc/salvou/as/chaves/
$ cp id_rsa* /home/$USER/.ssh
$ chmod 600 /home/$USER/.ssh/id_rsa
$ chmod 644 /home/$USER/.ssh/id_rsa.pub

Se quiser remover os jogos que vem nele (Gosto só do gnome-chess)

$ sudo apt purge \
 gnome-2048 \
 aisleriot \
 atomix \
 gnome-chess \
 five-or-more \
 hitori \
 iagno \
 gnome-klotski \
 lightsoff \
 gnome-mahjongg \
 gnome-mines \
 gnome-nibbles \
 quadrapassel \
 four-in-a-row \
 gnome-robots \
 gnome-sudoku \
 swell-foop \
 tali \
 gnome-taquin \
 gnome-tetravex
$ sudo apt autoremove

Uma coisa que estava acostumado era usar o botão Backspace para voltar um diretório, que atualmente é Alt + seta para esqueda. Para contornar isso:

$ sudo apt install python3-nautilus
$ nano ~/.local/share/nautilus-python/extensions/BackspaceBack.py

Adicione:

# Nautilus Backspace Back Extension
#
# Place me in ~/.local/share/nautilus-python/extensions/,
# ensure you have python-nautilus package, restrart Nautilus, and enjoy :)
#
# This script was written by molaeiali and is released to the public domain

import os, gi
gi.require_version('Nautilus', '4.0')
from gi.repository import GObject, Nautilus, Gtk, Gio, GLib

def back():
                app = Gtk.Application.get_default()
                if not app.get_actions_for_accel("BackSpace"):
                        app.set_accels_for_action( "win.up", ["BackSpace"] )


class BackspaceBack(GObject.GObject, Nautilus.InfoProvider):
                def __init__(self):
                        pass

                def update_file_info(self, file):
                        back()
                        return None

Cliente PPPoE
Crie o arquivo de configuração do PPPoE

$ sudo vim /etc/ppp/peers/meu-pppoe

Adicione as linhas alterando eth0 pelo nome da sua interface de rede e user e password

# Interface de rede para a conexão PPPoE
plugin rp-pppoe.so eth0

# Nome de usuário e senha
user "usuario"
password "senha"

# Use o protocolo PAP para autenticação
noauth

# Persiste tentando a conexão em caso de falha
persist

# Use as opções padrão do pppd
usepeerdns
defaultroute

# Configurações para IPv6
+ipv6
ipv6cp-use-ipaddr
ipv6cp-accept-local
ipv6cp-accept-remote

Conectar PPPoE (Não esqueça de desativar a conexão cabeada pois ela vence o pppoe)

$ sudo pon meu-pppoe

Para desativar a conexão PPPoE

$ sudo poff meu-pppoe

Firewall

Para quem sai com seu computador por ai, que tal deixar um firewall de verdade!

$ sudo vim /etc/nftables.conf

Ajuste para:

#!/usr/sbin/nft -f
flush ruleset

table inet filter {

    set ALLOWED_MACS {
        type ether_addr
        elements = {
            00:11:22:33:44:AA,
            00:11:22:33:44:BB,
        }
    }
    chain input {
        type filter hook input priority 0; policy drop;
        iif lo accept
        ct state established,related accept

        # Mikrotik Neigbor
        udp dport 5678 ct state new accept
        # Mikrotik permite os MAC
        meta l4proto udp meta pkttype { unicast } ether saddr @ALLOWED_MACS accept
    }
    chain forward {
        type filter hook forward priority 0;
    }
    chain output {
        type filter hook output priority 0;
    }
}

Se você utiliza mikrotik, para que o Neigbor funcione precisa liberar a porta 5678 udp, e cadastrar os MAC do dispositivo que ira acessar (eu falei firewall de verdade!)

$ sudo systemctl enable nftables
$ sudo systemctl restart nftables

Formata esse Windows ai p***** 😀
Abraço!

Gostou? Se quiser apoiar o blog e fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!

Rudimar Remontti

Trabalho atualmente como Gerente de Redes em um Provedor de Internet no Rio Grande do Sul.

Você pode gostar...

18 Resultados

  1. Legion disse:

    Depois de fazer todo esse procedimento na minha maquina, o ipv6 via Slaac da minha operadora parou de funcionar kkkkkkkkkkkk

  2. Antonio Dos Santos disse:

    Situação: Servidor Debian 11 com openSSh usava chave para se comunicar com outro servidor Debian7.
    Após atualizar o Debian 11 para a versão 12, começou a pedi a senha. Refiz a chave, usei a DAS, RSA e nada, sempre pede a senha. Quando uso o Putty e as chaves geradas pelo PuttyGen, acesso pelo Windows tanto o Debian 12 como o Debian7. Mas não consigo que os dois servidores se conectam sem solicitar a senha
    Sempre usando o root como usuário.
    Erro em uma rotina de backup
    “Permission denied, please try again.
    root@xxx.xxx.x.x: Permission denied (publickey,password).”
    Caso tenha uma ideia o que pode ter aconteci, eu agradeço a ajuda.
    Abraços

  3. Antonio dos Santos disse:

    Cara tive um problema após atualizar o servidor Debian 11 para o Debian 12 com openSSh usava chave para se comunicar com outro servidor Debian7.
    Após atualizar o Debian 11 para a versão 12, começou a pedi a senha. Refiz a chave, usei a DAS, RSA e nada, sempre pede a senha. Quando uso o Putty e as chaves geradas pelo PuttyGen, acesso pelo Windows tanto o Debian 12 como o Debian7. Mas não consigo que os dois servidores se conectam sem solicitar a senha
    Sempre usando o root como usuário.
    Erro em uma rotina de backup
    “Permission denied, please try again.
    root@xxx.xxx.x.x: Permission denied (publickey,password).”
    Caso tenha uma ideia o que pode ter aconteci, eu agradeço a ajuda.
    Abraços

  4. Joel disse:

    É muito diferente no Manjaro?

  5. MenottiJr disse:

    Moço, Moço, Moço, acompanho este site tem uns cadinhos de anos, e sinceramente já perdi as contas de quantas vezes alguma coisa por aqui me salvou.

    Passando pela primeira vez para deixar um obrigado, obrigado mesmo de coração por tudo que compartilhou com a gente durante todo esse tempo.
    Abraços MenottiJr

  6. Júnior disse:

    Parabéns, Show de bola.

  7. Maicon Ança dos Santos disse:

    Olá… Rudimar, já passou por problemas com notebooks com gpu híbrida, no caso, o meu notebook tem uma Intel e uma NVidia. Não consigo achar uma solução que funcione bem no Debian. Algumas variantes como Ubuntu, Pop!_OS até implementam algumas com Prime e tal… Mas eu gosto do Debian puro, mas sempre fico com esse problema de gpu. Abraço.

  8. MARLON RODRIGUES PEREIRA disse:

    Parabéns, direto ao ponto. Belo passo a passo, do quê o verdadeiro poder de uso de uma distribuição Linux. Liberdade. 👏👏👏

    • Thiago disse:

      Parabéns pelo conteúdo. Utilizo o debian a anos para produção trabalhando com gimp, inkscape e blender. Gosto de uma instalação btrfs, zram e instalo o timeshift-autosnap.

  9. Marcelo Gondim disse:

    Muito bom Remontti!!! Só senti falta no artigo de uma opção para Google Drive, montando ele no sistema. Não lembro se tem uma opção para usar offline quando sem Internet e online sincronizando quando temos Internet.

  10. Celso Aristides Rodrigues de Oliveira disse:

    Show Rudimar

  11. Cara, você foi fundo nessa “uso de cabo HDMI, infelizmente o Wayland não está preparado”.

    Por isso que meu note não transmitia corretamente a tela via HDMI.

    A tela do Note ficava OK, mas no monitor via HTMI ficava sempre como uma varredura falha na tela.

    A mesma coisa aconteceu com o LMDE ( Linux Mint Debian Edition ), Fedora 38, além é claro do Debian 12 que você falou.

    Obrigado

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *