Bij het installeren van Linux vanaf een distributiekit is standaard alleen de rootgebruiker beschikbaar. Tegelijkertijd is het om veiligheidsredenen niet mogelijk om via FTP verbinding te maken onder deze gebruiker. In dit artikel leggen we uit hoe u snel een FTP-server kunt instellen en een gebruiker kunt maken met alleen Linux-consoleopdrachten.
Stap 1: Maak een beveiligde verbinding met uw server
Eerst moet u verbinding maken met uw server. U kunt dit doen met behulp van het SSH (Secure Shell)-protocol, dat een veilige manier van externe toegang biedt. In plaats van in te loggen als 'root', wat standaard het beheerdersaccount is op Linux, gebruikt u een normaal account en voert u opdrachten uit via 'sudo' voor extra beveiliging.
Stap 2: FTP-server installeren
De volgende stap is de FTP-serverinstallatie. In deze tutorial gebruiken we 'proftpd', een populaire open source FTP-server.
Als u CentOS gebruikt, installeer dan eerst de EPEL-repository. Voer de volgende opdrachten in de terminal in:
sudo yum install epel-release
sudo yum install proftpd
Als u Debian of Ubuntu gebruikt, typt u gewoon:
sudo apt install proftpd
Stap 3: Stel automatische FTP-lancering in
Na het installeren van de FTP-server, configureer deze om automatisch te starten elke keer dat de server opstart. Dit wordt uitgevoerd door de volgende opdrachten:
sudo systemctl start proftpd.service
sudo systemctl enable proftpd.service
Stap 4: Stel uw firewall in
Om veiligheidsredenen moet uw firewall zo worden geconfigureerd dat inkomende verbindingen op TCP-poort 21 worden toegestaan. De exacte opdracht is afhankelijk van welk firewallbeheerprogramma u gebruikt. Voor 'iptables':
sudo iptables -I INPUT -p tcp -m tcp --dport 21 -j ACCEPT
sudo systemctl save iptables
voor 'firewalld':
sudo firewall-cmd --permanent --zone=public --add-port=21/tcp
sudo firewall-cmd –reload
voor 'nftables' in Debian 11:
sudo nft add rule ip filter input tcp dport { 21 } ct state new accept
Vergeet niet om de wijzigingen op te slaan nadat de firewall is geconfigureerd, zodat ze na een herstart worden toegepast. Voor 'iptables' en 'firewalld' gebeurt dit automatisch, terwijl u voor 'nftables' de huidige regels handmatig moet opslaan in een bestand dat bij de systeemstart wordt geladen.
Stap 5: Beperk FTP-gebruikers op basis van hun thuismap
FTP-gebruikers kunnen standaard verder gaan dan hun eigen directory, wat een beveiligingsrisico kan zijn. Om dit te voorkomen, voegt u de DefaultRoot ~ regel toe aan het 'proftpd.conf'-bestand. Deze regel beperkt gebruikers tot hun eigen directory. Voeg deze toe aan het einde van het bestand en start de FTP-server opnieuw op:
sudo systemctl restart proftpd.service
Stap 6: Nieuwe FTP-gebruiker aanmaken
U bent nu klaar om een nieuwe FTP-gebruiker te maken. Hiervoor is geen command shell-toegang nodig, dus schakel deze om veiligheidsredenen uit. Hier zijn de opdrachten daarvoor:
sudo useradd [username] -d /home/[username] -m -s /usr/sbin/nologin
sudo passwd [username]
Vervang [gebruikersnaam] met een gewenste gebruikersnaam. De opdracht 'passwd' biedt u de mogelijkheid om een wachtwoord in te voeren voor de nieuwe gebruiker.
U hebt nu een FTP-server ingesteld en een nieuwe FTP-gebruiker op de Linux-server aangemaakt. Denk altijd aan de beveiliging tijdens het instellen.