Ero sivun ”Tiedonsiirto www-palvelimelle” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
(→‎Proftpd: lainausmerkit kuntoon)
p (→‎ssh-chroot: toinenkin)
Rivi 54: Rivi 54:
*Anna make jail ajon lopussa ehdotettu cp groups /ho... komento
*Anna make jail ajon lopussa ehdotettu cp groups /ho... komento
*Valitettavasti kirjastot eivät vielä löydy. Voit todeta kirjastojen puuttumisen yrittämällä kirjautua komennolla:
*Valitettavasti kirjastot eivät vielä löydy. Voit todeta kirjastojen puuttumisen yrittämällä kirjautua komennolla:
  ssh -e none käyttäjänimi@palv.kon.ip.num “echo -n xsftp : sftp-
  ssh -e none käyttäjänimi@palv.kon.ip.num "echo -n xsftp : sftp-server"


*Nähdäksesi tarvittavat kirjastot anna komento
*Nähdäksesi tarvittavat kirjastot anna komento

Versio 28. marraskuuta 2006 kello 08.13

Tämäkin on Fedora Core-spesifinen, pitäis korjata.

Miten käyttäjä saa tiedot siirrettyä www-palvelimelle?

  • Telnet mahdollistaa hallinnan (komentokehoite) portti 23, ei suojattu.
  • FTP mahdollistaa tiedostojen siirrot, portti 21, ei suojattu.
  • SSH mahdollistaa molemmat suojattuna, portti 22.
  • SSH yksinään ei kuitenkaan riitä, koska tällöin käyttäjä pääsee oman kotihakemistonsa ulkopuolelle, lisäsuojaus onnistuu chrootin avulla.

Telnet voidaan unohtaa kokonaan, koska ssh on olemassa.

Proftpd

Asennus ja käyttöönotto:

yum install proftpd
chkconfig –level 35 proftpd on
service proftpd start

setupilla ftp (portti 21) auki:

Lisää /etc/sysconfig/iptables-config tiedostoon

IPTABLES_MODULES="ip_conntrack_ftp ip_nat_ftp" (riville 6)

Anna komennot:

modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
service iptables restart

Testaa

ssh-chroot

SSH-vankilan takoituksena on mahdollistaa tietojen suojattu siirtäminen ja yhteyden otto palvelimeen (salasanat kulkevat kryptattuna eivätkä tekstimuodossa kuten ftp:llä), kuitenkin niin ettei käyttäjä pääse pois omasta hakemistostaan eikä antamaan muita kuin siirrossa tarvittavia komentoja. Vankilan voi tehdä itse käsin (työläs ja erittäin vativa operaatio), käyttämällä maksullista (oppilaitoksille ilmainen) ssh communicationin (http://ssh.com/products/tectia/server/) ssh-palvelinohjelmistoa (käyttö selostettu kirjassa: http://www.itpress.fi/vanhat/doc/kirjat/linux-koulutuspaketti.html) tai esimerkiksi alla esitellyllä scponly sovelluksella.

  • Asenna kääntäjä (sovelluksesta ei ole valmista binaaria):
yum install gcc
  • Pura paketti tar -xvzf scponly-4.3.tgz
  • Lue INSTALL tiedosto
  • Muuta ennen asennusta helper.c tiedoston koodia poistamalla extern sanan int optreset edestä (muuten koodin kääntäminen make kohdassa kaatuu virheilmoitukseen).
  • Asenna:
./configure -–enable-chrooted-binary
make
make install
  • Lisää kuoret (/etc/shells tiedostoon scponly ja scponlyc koko polulla, updatedb ja slocate auttaa -> /usr/local/bin/scponly ja /usr/local/sbin/scponlyc)
  • Kommentoi rivit 70-77 setup_chroot.sh tiedostosta (muuten make jail kaatuu virheeseen).
  • Luo uusi käyttäjä, joka on chrootattu antamalla komento: make jail (kirjoituskansioksi public_html)
  • Anna make jail ajon lopussa ehdotettu cp groups /ho... komento
  • Valitettavasti kirjastot eivät vielä löydy. Voit todeta kirjastojen puuttumisen yrittämällä kirjautua komennolla:
ssh -e none käyttäjänimi@palv.kon.ip.num "echo -n xsftp : sftp-server"
  • Nähdäksesi tarvittavat kirjastot anna komento
ldd /usr/libexec/openssh/sftp-server
  • Kopioi tarvittavat kirjastot käyttäjän kotihakemiston alla olevaan lib hakemistoon ja luo niihin tarvittavat symboliset linkit:
ln -s libresolv-2.3.5.so libresolv.so.2
ln -s libcrypto.so.0.9.7f libcrypto.so.5
ln -s libutil-2.3.5.so libutil.so.1
ln -s libz.so.1.2.2.2 libz.so.1
ln -s libnsl-2.3.5.so libnsl.so.1
ln -s libcrypt-2.3.5.so libcrypt.so.1
ln -s libgssapi_krb5.so.2.2 libgssapi_krb5.so.2
ln -s libkrb5.so.3.2 libkrb5.so.3
ln -s libk5crypto.so.3.0 libk5crypto.so.3
ln -s libkrb5support.so.0.0 libkrb5support.so.0
ln -s libcom_err.so.2.1 libcom_err.so.2
ln -s libc-2.3.5.so libc.so.6
ln -s libdl-2.3.5.so libdl.so.2
  • Tarkista gftp-ohjelmalla ja terminaalilla vankilan toimivuus.