Följ dessa steg för att göra i ordning en Debian Server med SSH.
Skapa installationsmedia
Hämta installationsmedia som ISO-avbildning, för över till USB-sticka.
Från Windows sker överföringen enklast via balena Etcher eller Win32 Disk Imager. Starta programmet, peka ut ISO och USB-stickan, tryck sedan på Write-knappen.
Från Linux börjar man med att avmontera stickan sudo umount /dev/sdb1
. Kopiera sedan över innehållet från ISO till sticka med sudo dd if=/path/to/file.iso of=/dev/sdb bs=1M
.
Referenser:
How to Install Debian 11 (Bullseye) Server Using Net Install (tecmint.com)
Installera Debian
Koppla in tangentbord, nätverkssladd och monitor i maskinen och boota upp på stickan (oftast F12, F2 eller Esc).
- Välj Sverige och allt svenskt
- Ange ett värdnamn, till exempel nas
- Skapa ett användarkonto
- Kryptera inte hemkatalogen
- Avmontera alla tidigare monterade partitioner
- Hela disken guidad
- Lämna proxy tomt
- Installera paketet: SSH server
- Installera GRUB i huvudstartsektorn på /dev/sda
Koppla ur stickan, starta om, logga in med den nya användaren. Gör sedan följande:
sudo nano /etc/apt/apt.conf.d/99force-ipv4Skriv följande i filen:Acquire::ForceIPv4 "true";
sudo apt update && sudo apt upgrade -y
- Om du vill ge root ett pw, kör följande:
sudo passwd root
.
Från denna punkt kan du välja att koppla bort monitor och tangentbord och starta servern headless. Innan du tar bort monitor och tangentbord måste du först stänga av maskinen med: sudo shutdown -h now
.
Källa: https://unix.stackexchange.com/questions/9940/convince-apt-get-not-to-use-ipv6-method
Rättigheter i Apache
sudo adduser kimbo www-data
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R g+rw /var/www/html
Länkar
Ubuntu på sticka
Ubuntu root pw
Apache MySQL PHP
Apache2 och PHP7.0
Apache rättigheter
Konfigurera MySQL
Starta MySQL-tolken med: mysql -u root
. Om du redan satt pw för root blir det denna istället: mysql -u root -p
.
Inne i MySQL-tolken skapas databas, användare och tilldelas MySQL root-lösenord med:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('rootpassword');
CREATE DATABASE kimbo;
GRANT ALL PRIVILEGES ON *.* TO 'kimbo'@'localhost' IDENTIFIED BY 'kimbopassword' WITH GRANT OPTION;
Gå ur MySQL-tolken med: \q
MySQL åtkomlig från nätverket
Öppna SSH-anslutning med terminalen till servern ifråga och kommentera bort fältet bind-adress i my.cnf enligt följande:
ssh 192.168.1.240
sudo nano /etc/mysql/my.cnf
Om du vill testa denna anslutning från en annan maskin på nätverket måste denna användare skapas och ges rättigheter. Gå till phpmyadmin eller gör det i mysql terminal:
create user 'kimbo'@'SP2' identified by 'kimbo';
grant select, insert, update, delete on kimbo.* to 'kimbo'@'SP2' identified by 'kimbo';
Testa anslutning med följande php:
<?php
try {
$dsn = "mysql:host=192.168.1.240;port=3306;dbname=kimbo";
$db = new PDO($dsn, "kimbo", "kimbo");
$db = null;
} catch (PDOException $e) {
print "Anslutning till DB kraschade med: " . $e->getMessage() . "<br/>";
die();
}
?>
http://stackoverflow.com/questions/1420839/cant-connect-to-mysql-server-error-111
http://stackoverflow.com/questions/2482234/how-to-know-mysql-my-cnf-location
Python
https://www.cyberciti.biz/faq/debian-linux-install-gnu-gcc-compiler/
https://idroot.us/install-python-3-7-debian-9-stretch/
Notera: Sök upp senaste utgåvan av python (https://www.python.org/downloads/source/) och ersätt med. Sudo på allt.