Een FTP-server instellen op Ubuntu

Stel een FTP-server in op Linux

File Transfer Protocol (FTP) is een veelgebruikt netwerkprotocol dat wordt gebruikt om bestanden tussen twee computers uit te wisselen. Het protocol is gebaseerd op een client-server-architectuur. Een van de computers voert een FTP-serverprogramma uit, terwijl de andere computer een FTP-clientprogramma uitvoert, dat op basis van machtigingen bestanden kan downloaden of uploaden naar de servercomputer.

Gewoonlijk moeten gebruikers die toegang hebben tot de FTP-server zich authenticeren met een gebruikersnaam en wachtwoord, maar de server kan ook zo worden geconfigureerd dat anonieme gebruikers toegang krijgen.

Bijna alle populaire besturingssystemen zoals Windows, GNU/Linux, Mac OS hebben een FTP-server en clientprogramma's beschikbaar. In dit artikel zullen we zien hoe u een FTP-server instelt op een Ubuntu-systeem.

Installatie

In Ubuntu, het programma vsftpd, wat staat voor Zeer veilige FTP-daemon is een populair FTP-serverprogramma, dat kan worden uitgevoerd als een daemon, d.w.z. als een achtergrondproces, zoals de meeste servers.

Dit programma is beschikbaar in de standaard repository van Ubuntu. Om het te installeren, voer je uit:

sudo apt install vsftpd

Opmerking: Gebruik voor Ubuntu-versies < 14.04 apt-getin plaats van geschikt.

Na installatie wordt de vsftpd daemon zou automatisch moeten starten. Om te controleren of het goed is gestart, voert u het volgende uit:

service vsftpd-status

Als de status niet is Actief, d.w.z. het is niet goed gestart, voer de volgende opdracht uit om het te starten en controleer de status opnieuw nadat het is uitgevoerd om te zien of het nu is Actief.

sudo-service vsftpd start

Configuratie

Het configuratiebestand voor vsftpd is /etc/vsftpd.conf. Er zijn hier een aantal configuratie-opties beschikbaar. We zullen twee opties wijzigen die vaak nodig zijn.

Open het bestand met vim of een editor naar keuze.

sudo vim /etc/vsftpd.conf

Standaard is anonieme toegang tot de FTP-server niet toegestaan. Om anonieme toegang toe te staan, wijzigen we de variabele anoniem_inschakelen van NEE naar JA in het bestand.

Voor anonieme toegang, een gebruiker met de naam ftp wordt aangemaakt tijdens de installatie. De standaardmap voor toegang tot een anonieme gebruiker is: /srv/ftp, wat eigenlijk de homedirectory is van user ftp. Alle bestanden die met anonieme gebruikers moeten worden gedeeld, moeten hier worden gekopieerd.

Als de directory voor anonieme toegang moet worden gewijzigd, moeten we de homedirectory van de gebruiker wijzigen ftp. Voer hiervoor het volgende uit:

sudo usermod -d ftp

Evenzo is schrijftoegang, d.w.z. uploadtoegang, tot de FTP-server standaard niet toegestaan. Om het in te schakelen, verwijderen we de regel met variabele write_enable=JA.

Sla het bestand op en sluit het af. Als u vim gebruikt, drukt u op Ontsnappen om naar de vim-opdrachtmodus te gaan, typ dan :wq en druk op Binnenkomen om het bestand op te slaan en af ​​te sluiten.

We moeten de FTP-serverdaemon opnieuw starten om deze wijzigingen door te voeren. Voer het volgende uit om het opnieuw te starten:

sudo-service vsftpd opnieuw opstarten

De server testen

De meeste moderne webbrowsers hebben ingebouwde ondersteuning voor toegang tot FTP-servers, d.w.z. ze kunnen fungeren als geïntegreerde FTP-clients. Ze ondersteunen echter alleen het downloaden van bestanden van de server en niet het uploaden.

Test downloaden

Binnenkomen ftp:// in de adresbalk van de browser om toegang te krijgen tot de FTP-server, waar is het IP-adres, of domeinnaam, van de FTP-server. Om uw lokale FTP-server te testen, typt u: ftp:://127.0.0.1

Merk op dat aangezien anonieme toegang was ingeschakeld, de server ons een directorylijst toont van de map die we hebben ingeschakeld voor anonieme toegang, namelijk. /srv/bestanden/ftp.

Laten we het configuratiebestand wijzigen om anonieme toegang nu uit te schakelen en de toegang testen met gebruikersaanmelding.

sudo vim /etc/vsftpd.conf

Verander de variabele anoniem_inschakelen naar NEE.

Sla het bestand op en sluit het af. Start de FTP-server opnieuw om deze wijzigingen door te voeren.

sudo-service vsftpd opnieuw opstarten

Open dezelfde URL opnieuw in de browser (ftp://127.0.0.1).

Zoals we kunnen zien, vraagt ​​de server ons nu om de gebruikersnaam en het wachtwoord in te voeren. Voer de inloggegevens in en druk op oke.

Nu is de directorylijst van de homedirectory van de ingelogde gebruiker. In dit geval is het /home/abhi.

Test uploaden

Webbrowsers staan ​​alleen het downloaden van bestanden van FTP-servers toe. Om bestanden naar een FTP-server te uploaden, hebben we toegang tot de server vanuit een bestandsverkenner.

In Ubuntu gebruiken we de standaard bestandsverkenner, Nautilus. Open Nautilus door op het pictogram in het dock te klikken of zoek het vanuit Dash en open het.

Klik op Andere locaties helemaal onderaan.

Voer helemaal onderaan onze FTP-server-URL in (ftp:://127.0.0.1) in het invoerveld Verbinden met server en druk op de knop 'Verbinden'.

Vink het selectievakje 'Geregistreerde gebruiker' aan en voer de gebruikersnaam en het wachtwoord in. U kunt een van de drie opties kiezen om het hierboven ingevoerde wachtwoord te onthouden. Druk ten slotte op de knop 'Verbinden' bovenaan het venster.

Nu kunnen we eenvoudig een bestand kopiëren of maken op de FTP-server op de gebruikelijke manier in een bestandsverkenner. De FTP-server verschijnt aan de linkerkant, zoals hieronder weergegeven.

Nopmerking: Zelfs vsftpd kan worden geconfigureerd voor schrijftoegang voor anonieme gebruikers, dit is een enorm beveiligingsrisico voor het systeem en mag nooit worden gebruikt! Uploaden naar FTP-server mag alleen worden ingeschakeld voor systeemgebruikers.

Gevolgtrekking

Op deze manier kunnen we een FTP-server opzetten op Ubuntu. Zorg ervoor dat u dit probeert te openen vanaf een ander systeem in uw netwerk, in welk geval u moet invoeren ftp://Uw_IP_adres in plaats van ftp://127.0.0.1 in de browser van het andere systeem.

Merk op dat de meeste FTP-serverprogramma's zijn beveiligd om de overgedragen inhoud te coderen met SSL/TLS (genaamd FTPS) of met behulp van SSH FTP. vsftpd gebruikt FTPS bij de implementatie ervan.