Po základnej inštalácii Debianu je potrebné nakonfigurovať základné veci a server zabezpečiť proti možným útokom z vonku.

1. Aktualizácia

V prvom rade si ihneď po inštalácii Debianu aktualizujeme všetky balíčky a nainštalujeme nástroje potrebné pre ďalšiu prácu.

aptitude update
aptitude safe-upgrade
aptitude install build-essential

2. V prípade chyby s LOCALE:

export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-reconfigure locales

3. Zmena hesla pre root.

Pomocou príkazu passwd zmeníme hlavné heslo

passwd

4. Pridáme nového užívateľa

adduser jankohrasko

5. Nainštalujeme sudo

aptitude install sudo

a upravíme súbor /etc/sudoers pomocou príkazu visudo

visudo

pridáme novovytvoreného užívateľa

jankohrasko   ALL=NOPASSWD: ALL

v adresári /home/jankohrasko vytvoríme adresár ".ssh" a pridáme súbor "authorized_keys" s vygenerovaným kľúčom

cd /home/jankohrasko 
mkdir .ssh
vi authorized_keys

Súbor "authorized_keys" si vygenerujeme v PuTTYgen. Viac o pripájaní sa cez SSH pomocou WinSCP sa dočítaš v článku WinSCP a správa vzdialeného servera

7. Konfigurácia SSH

Upravíme si konfiguráciu SSH v /etc/ssh/sshd_config

Dôležité položky sú zvýraznené:

  • Port - zmeníme z pôvodnej hodnoty 22 na nejaké vyššie číslo. Ja zvyknem zadávať hodnotu medzi 30000 až 50000.
  • PermitRootLogin no - zakážeme rootovi prihlasovanie cez SSH
  • PasswordAuthentication no - zakážeme prihlasovanie sa pomocou hesla
  • AllowUsers - medzerami oddelení užívatelia, ktorí majú povolený prístup cez SSH
Port 45250
Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
UsePrivilegeSeparation yes
KeyRegenerationInterval 3600
ServerKeyBits 2048
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 60
PermitRootLogin no
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
IgnoreUserKnownHosts yes
PermitEmptyPasswords no
ChallengeResponseAuthentication no
PasswordAuthentication no
KerberosAuthentication no
GSSAPIAuthentication no
X11Forwarding no
X11DisplayOffset 0
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
AcceptEnv LANG LC_*
Subsystem sftp /usr/lib/openssh/sftp-server
UsePAM yes
UseDNS no
AllowUsers jankohrasko druhyuser tretiuser

Všimni si riadok Subsystem sftp /usr/lib/openssh/sftp-server - táto cesta sa použije neskôr pri nastavovaní pripojenia vo WinSCP

Reštartujeme SSH

/etc/init.d/ssh restart

8. Skúška pripojenia nového užívateľa

Winscp:
Environment -> SFTP
Debian:
sudo /usr/lib/openssh/sftp-server
CentOS:
sudo /usr/libexec/openssh/sftp-server

10. Stiahneme a nainštalujeme Webmin

wget http://prdownloads.sourceforge.net/webadmin/webmin_1.530_all.deb
dpkg --install webmin_1.530_all.deb

11. Inštalácia CSF

aptitude install libwww-perl
wget http://www.configserver.com/free/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh