Como criar um servidor doméstico usando o Ubuntu desktop?

26

Eu estava pensando em fazer minha máquina desktop Ubuntu no servidor de arquivos para usá-la em casa. Estou tendo um laptop antigo. Posso usá-lo como um servidor de arquivos para que meus outros 4 sistemas possam baixar ou visualizar dados dessa máquina antiga (servidor). Quero torná-lo sem fio e também quero acessar pela Internet e ter um roteador. Mas eu não tenho nenhuma idéia de como fazê-lo no Ubuntu Desktop ou no servidor Ubuntu. Não quero instalar o servidor Ubuntu.

Deseja compartilhar todo o meu Drive. Deseja alguma senha ou algum tipo de segurança para alguma pasta para restringir o acesso.

* Estou vendo para Guia passo a passo como eu posso fazê-lo e como acesso a partir de outro computador também * .

Eu cansei de usar o filezilla, mas no Ubuntu é disponível apenas um aplicativo baseado no cliente. Existe algo como servidor filezilla no ubuntu.

O outro sistema está no Windows e no Ubuntu.
Eu sou novo na coisa de rede e tipo de servidor qualquer ajuda seria apreciada.

twister_void
fonte
Que tipo de clientes você tem na sua rede? Windows, somente Linux, dispositivos portáteis, reprodutores de mídia etc. Isso é muito relevante para fazer uma recomendação sobre que tipo de protocolo e aplicativo de servidor é possível fazer.
precisa saber é o seguinte
@ gertvdijk: Windows e Linux Ambos.
Twister_void 28/01
1
Você deve perguntar: você estará usando a nova GUI do servidor ou terminal. Quero dizer com isso, você instala o Ubuntu Desktop e transforma o computador em servidor ou instala o servidor Ubuntu e instala os serviços. Quero saber antes de começar a digitar uma resposta, já que nos dois casos preciso explicar muitas coisas.
Luis Alvarado
@LuisAlvarado, quero criar meu servidor GUI do sistema usando o Ubuntu Desktop. Sua declaração "instale o Ubuntu Desktop e depois torne o computador um servidor". A resposta é muito mais apreciada.
Twister_void

Respostas:

19

Como você deseja um servidor baseado em GUI (que é um Ubuntu Desktop transformado em um servidor incrível;)), basta seguir os seguintes passos antes de continuar:

  1. Atualize tudo. Verifique se você já atualizou e atualizou o sistema

    sudo apt-get update && sudo apt-get upgrade

    Desta forma, estamos na mesma página.

  2. Verifique se a placa sem fio está funcionando corretamente. Se houver uma placa sem fio baseada na Broadcom, verifique a seção Instalando os drivers sem fio da Broadcom . Se você tiver outro, é muito provável que você encontre a resposta no askubuntu depois de procurar com o nome da placa wireless. De qualquer forma, vou assumir que ele está funcionando corretamente.

  3. Instale o Serviço Samba e configure-o seguindo o Como ativar a descoberta e compartilhamento de rede entre computadores com o Samba

  4. Instalando o Serviço SSH (principalmente para ajudar a facilitar o caminho entre dois computadores Ubuntu), seguindo o tópico Como habilitar o compartilhamento de arquivos entre dois PCs? . Você também pode usar massa no Windows, se quiser. A Como usar o SSH (comandos ssh & rsync)? guia também está disponível.

  5. Se você deseja compartilhar a internet através do servidor. Com isso, seu roteador se conectará ao servidor por um cabo com fio e, em seguida, compartilhará a Internet sem fio com outros computadores e siga as instruções em Como conectar e compartilhar sua conexão com a Internet (com e sem fio) . Caso contrário, se você quiser fazê-lo via com fio para outro computador, compartilhe a conexão com outros PCs (via Ethernet com fio)

  6. Se você também deseja compartilhar uma impressora com os outros computadores, siga o servidor O que é o CUPS e como compartilhar uma impressora (localmente ou através de uma rede)

  7. Como você criará um servidor, também recomendo instalar o SQUID PROXY se você compartilhar a conexão com a Internet através do servidor. Isso melhorará o uso da largura de banda em geral e parecerá que a Internet é mais rápida para todos os PCs clientes . Para instalar, siga a primeira resposta em Quais Servidores de Cache da Web Atualizado estão disponíveis (Caching HTTP Proxy) (Por Rinzwind)

    Lembre-se de configurar o proxy squid dentro /etc/squid/squid.confou /etc/squid3/squid.confpara as permissões do site, o que deve ser revertido em cache e outras coisas.

    Depois de fazer essas 7 etapas, devemos ter um sistema que

    • Pode compartilhar uma pasta com outros computadores na LAN e eles podem ver a pasta compartilhada sem muito aborrecimento, permissões ou etapas adicionais.

    • Pode se conectar ao servidor via compartilhamento SSH ou Samba sem nenhum problema.

    • O servidor pode compartilhar a Internet através de uma conexão sem fio ou com fio.

    • O servidor agora pode compartilhar uma impressora com todos os outros computadores, incluindo o Windows.

Deixe-me saber se alguma dessas etapas parece difícil para ajudá-lo ao longo do caminho.

Coisas adicionais podem ser instalar o xbmc e colocar todos os filmes no servidor. Em seguida, através das opções de configuração do xbmc, ative o serviço da Web para que o restante dos computadores possa assistir filmes do mesmo servidor. Há muitas coisas que você pode realmente fazer com um servidor ubuntu.

Luis Alvarado
fonte
Uau!!!!!!! São 9 perguntas em 1.
Aditya
Por que sim é;). Sua pergunta precisava de muitas respostas para um servidor correto.
Luis Alvarado
@LuisAlvarado, Obrigado Luis Alvarado. Boa resposta
twister_void
6

bem, você pode fazer isso com o servidor de arquivos samba.

você pode instalá-lo sudo apt-get install samba

Primeiro, edite os seguintes pares de chave / valor na seção [global] do /etc/samba/smb.conf:

   workgroup = EXAMPLE
   ...
   security = user

O parâmetro de segurança está mais abaixo na seção [global] e é comentado por padrão. Além disso, altere EXAMPLE para melhor corresponder ao seu ambiente.

Crie uma nova seção na parte inferior do arquivo ou remova o comentário de um dos exemplos para o diretório a ser compartilhado:

[share]
    comment = Ubuntu File Server Share
    path = /srv/samba/share
    browsable = yes
    guest ok = yes
    read only = no
    create mask = 0755

    comment: a short description of the share. Adjust to fit your needs.

    path: the path to the directory to share.

Este exemplo usa / srv / samba / sharename porque, de acordo com o FHS (Filesystem Hierarchy Standard), / srv é onde os dados específicos do site devem ser exibidos. Tecnicamente, os compartilhamentos do Samba podem ser colocados em qualquer lugar do sistema de arquivos, desde que as permissões estejam corretas, mas é recomendável seguir os padrões.

navegável: permite que os clientes Windows naveguem no diretório compartilhado usando o Windows Explorer.

guest ok: allows clients to connect to the share without supplying a password.

somente leitura: determina se o compartilhamento é somente leitura ou se são concedidos privilégios de gravação. Os privilégios de gravação são permitidos apenas quando o valor é não, como é visto neste exemplo. Se o valor for sim, o acesso ao compartilhamento será somente leitura.

create mask: determines the permissions new files will have when created.

Agora que o Samba está configurado, o diretório precisa ser criado e as permissões alteradas. Em um terminal, digite:

sudo mkdir -p /srv/samba/share
sudo chown nobody.nogroup /srv/samba/share/

[Note]  

The -p switch tells mkdir to create the entire directory tree if it doesn't exist. Change the share name to fit your environment.

Por fim, reinicie os serviços samba para ativar a nova configuração:

sudo restart smbd
sudo restart nmbd

O crédito está aqui: Samba e, para mais informações, você também vê isso.

rɑːdʒɑ
fonte
Isto é simplesmente um recortar e colar.
precisa saber é o seguinte
2
sim e mencionei para onde o crédito vai.
rɑːdʒɑ
TAMBÉM. COMPLICADO.
usar o seguinte código
4

A instalação openssh-serverpermitiria acessar toda a unidade com segurança pela Internet ou a partir de dispositivos em sua casa, desde que eles suportem sFTP. Se não houver, por qualquer motivo, um compartilhamento do Samba pode complementar isso, conforme detalhado em outra resposta. Aqui está como eu configurei o meu:

Instale o servidor OpenSSH :apt-get install openssh-server

Abrir a porta 22 : uso várias formas de fazer isso gufw(talvez você precise instalá-lo, não tenho certeza se é o padrão). Se você deseja abri-lo para a Internet posteriormente, precisará encaminhar a porta 22 para o servidor a partir do seu roteador. Você pode fazer isso normalmente através de uma interface da web no roteador. Se puder, atribua ao servidor um IP estático também (por exemplo, desative o DHCP para o servidor).

Edite as configurações de configuração do ssh : Faça backup e abra o arquivo /etc/ssh/sshd_confige altere / adicione as configurações

PermitRootLogin no
AllowUsers guarav_java other_user_if_necessary

Para segurança máxima, você pode configurar logins baseados em chave, conforme detalhado aqui https://help.ubuntu.com/community/SSH/OpenSSH/Keys , mas seria suficiente se você apenas configurasse uma senha realmente forte e a salvasse em cada máquina cliente.

Você pode criar um usuário para cada pessoa que se conectar. Se você fizer isso, poderá adicioná-los todos ao mesmo grupo (ssh_users, digamos) e permitir que todos nesse grupo se conectem usando AllowGroups ssh_users. (Para mais informações, consulte http://knowledgelayer.softlayer.com/learning/how-do-i-permit-specific-users-ssh-access )

Verifique se as configurações são válidas : Você pode verificar se cometeu algum erro de sintaxe no arquivo de configuração comsshd –t

Conectar-se do servidor a si mesmo : Nesse ponto, você poderá conectar-se à máquina a partir de si mesmo em um terminal ssh localhost(assumindo que você já possui openssh-client). Em seguida, tente de outra máquina na sua rede ssh <ip-address>,.

Se o IP do servidor estiver estático na sua rede doméstica, você poderá adicionar uma entrada /etc/hostsem um computador Ubuntu conectando-o à linha

server_ip_address        theserver

Isso significa que você pode se conectar de maneira simples ssh theserverou com o que você chamou. Você pode fazer o mesmo no Windows (veja aqui: http://helpdeskgeek.com/windows-7/windows-7-hosts-file/ )

Conexão via sFTP : Se você pode conectar-se ao servidor a partir de outra máquina na sua rede doméstica em um terminal, pode conectar-se a ele via sFTP e navegar e transferir arquivos com segurança. Pessoalmente, configurei um atalho de teclado para poder montar / desmontar meu servidor com comandos de teclado (no Ubuntu):

gvfs-mount sftp://user@ipaddress
gvfs-mount -u sftp://user@ipaddress

(A -ubandeira é o comando umount)

Coloque-os na caixa "Comando:" de Configurações do sistema> Teclado> Atalhos> Atalhos personalizados> + (Novo atalho), dê um nome, clique em Aplicar, depois clique na coluna da direita e digite uma combinação de teclas ( CTRL+SHFT++e, CTRL+SHFT+-respectivamente, parecem lógicas) .

Você pode substituir o endereço IP com o que está em /etc/hosts. Isso montará o servidor como uma unidade no Nautilus e você poderá navegar pelas pastas exatamente como as do seu computador local. No Windows, você pode se conectar usando o software FTP (Filezilla etc.). Eu não tentei, mas tenho certeza de que provavelmente também há integração de sFTP no Windows Explorer.

Outra vantagem dos logins baseados em chave neste momento é que você não precisará de uma senha sempre que se conectar (a menos que você configure uma para proteger a chave). Você pode investigar depois de trabalhar com logins de senha (e antes de abri-lo para o exterior).

Conectando de fora : O passo final seria verificar se você pode se conectar a partir da Internet, ou seja, ao lado ou o que for. Se você não tiver um endereço IP estático para sua casa, pode ser complicado acompanhar o seu endereço IP. Eu uso um serviço de DNS dinâmico ( http://afraid.org/ é gratuito) pessoalmente, mas você pode encontrar outra solução melhor. Em seguida, você substitui o endereço ip nos comandos de montagem acima pelo endereço dinâmico da web que aponta para sua rede doméstica.

Uma dica final de segurança, mantenha o controle do seu log SSH se você optar por isso ( /var/log/auth.log), apenas para garantir que nada de ruim esteja acontecendo. Se você achar que sim, o Fail2Ban é uma solução ( http://www.fail2ban.org/wiki/index.php/Main_Page e https://help.ubuntu.com/community/Fail2ban ). Para minimizar o risco, você pode alterar a porta que o SSHD atende a algo fora do padrão, como 500, e alterar as regras de encaminhamento de porta correspondentes no seu roteador e no firewall do servidor (Por que: /server/189282 / why-change-default-ssh-port ) embora eu não tenha testado isso pessoalmente gvfs-mount.

mtdevans
fonte
2

Clique com o botão direito do mouse na pasta que você deseja usar como seu diretório público principal, vá para "Opções de compartilhamento". Aparecerá uma caixa de diálogo pop-up que instrui você com os avisos de instalação de pacotes adicionais necessários para executar adequadamente um servidor doméstico, instalar, reiniciar, repetir e permitir o compartilhamento de pastas. É simples assim! :)

Jebeld17
fonte
1
Quero compartilhar toda a minha unidade, bem como a minha pasta pessoal, na minha rede local; esses sistemas estão com Ubuntu e Windows. Então, como faço para compartilhar.
Twister_void
Abra um terminal: Sistema de arquivos "Sudo nautilus" <Início (clique com o botão direito do mouse) <Opções de compartilhamento. Pode ser necessário alterar as permissões também, mas tente sem alterar as permissões primeiro. O diretório inicial é o único diretório que eu recomendo compartilhar. Os outros são muito arriscados e podem corromper seu sistema de arquivos.
precisa saber é o seguinte