Tenho um servidor sem acesso à Internet mas de vez em quando preciso atualizar alguns de seus pacotes. Para facilitar minha vida, estou usando meu laptop que também está executando o Linux para compartilhar a conexão WiFi do laptop pela interface Ethernet do laptop e conectar o servidor ao laptop com um cabo Ethernet normal. Claro, também estou alterando o GW no servidor para corresponder ao endereço IP da interface Ethernet do meu laptop.
Eu sei como posso fazer isso na GUI do gerenciador de rede, mas queria saber como posso fazer o mesmo usando a linha de comando. Eu quero encontrar uma solução que de preferência não envolva escrever IPTables
regras personalizadas. A ideia é que eu queira escrever um roteiro e um alias, para fazer exatamente isso.
Assim que terminar, compartilharei o código-fonte com vocês, aqui e também no Github
, afinal, essa é a beleza do código aberto.
Um pouco apressado, mas basicamente... Se enp0s3 é sua LAN e enp0s8 sua WLAN:
Lado do notebook:
Isso pode ser facilmente roteirizado e todos os conf são limpos na reinicialização.
Lado do servidor:
Quando você usa a GUI, isso significa que você basicamente ativa um perfil de conexão no NetworkManager. Você pode fazer o mesmo a partir da linha de comando.
Primeiro, encontre o nome do perfil em questão, observando a
nmcli connection
saída. Em seguida, ative o perfil comnmcli connection up "$PROFILE_NAME"
.E é claro que você pode criar e modificar seu perfil apenas via linha de comando, por exemplo, usando nmcli. Consulte as páginas do manual. A configuração relevante no perfil é
ipv4.method=shared
.