This is an old revision of the document!
GSR Debian
. Mașina virtuală o gasiti la adresa de mai jos (trebuie sa va logati cu credentialele de pe cs.curs.pub.ro):
https://repository.grid.pub.ro/cs/gsr/GSR%20Debian.ova
Dupa ce o descarcati, trebuie importata în VirtualBox (File → Import Appliance).
Pentru autentificarea în mașina virtuală folosim numele de utilizator student
cu parola student
. Ne putem conecta și prin SSH de pe sistemul fizic folosind comanda
student@eg106-pc:~$ ssh -l student 192.168.56.115 [...] Last login: Thu Dec 3 13:57:01 2015 student@gsr-server:~$
Contul student
are permisiuni privilegiate. Putem accesa drepturile de root
folosind comanda
sudo su
rsync
.root@heimdall:~# apt-get update; apt-get install rsync
bkpuser
cu parola student.root@heimdall:~# groupadd bkpusr root@heimdall:~# useradd -d /home/bkpusr -m -g bkpusr -s /bin/bash bkpusr root@heimdall:~# echo "bkpusr:student" | chpasswd
/home/bkpuser/stud-home
cu drepturi depline pentru utilizatorul bkpuser
.root@heimdall:~# su - bkpusr bkpusr@heimdall:~$ pwd /home/bkpusr bkpusr@heimdall:~$ mkdir stud-home
/home/student/Documents
.student@mjolnir:~/Documents$ echo "1" > file1.txt student@mjolnir:~/Documents$ echo "2" > file2.txt student@mjolnir:~/Documents$ echo "3" > file3.txt
bkpuser
, folosind rsync peste ssh, directorul /home/student/Documents
de pe mașina fizică în directorul /home/bkpusr/stud-home
de pe mașina virtuală. student@mjolnir:~$ rsync -avz Documents/ bkpusr@heimdall.local:stud-home/ bkpusr@heimdall.local's password: sending incremental file list ./ file1.txt file2.txt file3.txt sent 226 bytes received 72 bytes 54.18 bytes/sec total size is 6 speedup is 0.02
bkpuser
de pe mașina virtuală o pereche de chei RSA. Copiați cheia publica in contul student
de pe mașina fizică. Realizați un script care să ruleze în cron, pe mașina virtuală, în contul utilizatorului bkpuser, la fiecare 1 de minut, și să realizeze automat back-up-ul directorului ~/Documents
al utilizatorului student în /home/bkpusr/stud-home
student@mjolnir:~$ ssh-copy-id bkpusr@heimdall.local bkpusr@heimdall.local's password: Now try logging into the machine, with "ssh 'bkpusr@heimdall.local'", and check in: ~/.ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting. student@mjolnir:~$ rsync -avz Documents/ bkpusr@heimdall.local:stud-home/ sending incremental file list sent 97 bytes received 12 bytes 218.00 bytes/sec total size is 6 speedup is 0.06 student@mjolnir:~$ cat sync.sh #!/bin/bash RUSR=bkpusr RHOST=heimdall.local LPATH=/home/student/Documents/ RPATH=stud-home/ rsync -avz $LPATH $RUSR@$RHOST:$RPATH root@mjolnir:~# chown :crontab /var/spool/cron/crontabs root@mjolnir:~# chmod g+w /var/spool/cron/crontabs root@mjolnir:~# ls -ld /var/spool/cron/crontabs/ drwxrwxr-x 4 root crontab 4096 Jan 26 17:52 /var/spool/cron/crontabs/ student@mjolnir:~$ crontab -e crontab: installing new crontab student@mjolnir:~$ crontab -l | tail -n 1 * /10 * * * * /home/student/sync.sh root@mjolnir:~# /etc/init.d/cron restart Restarting periodic command scheduler: cronStopping periodic command scheduler: cron. Starting periodic command scheduler: cron.
nfs-kernel-server
, nfs-common
și portmap
.root@heimdall:~# apt-get install nfs-kernel-server nfs-common portmap [...]
nfsuser
pe mașina virtuala și pe mașina fizică. Pe mașina fizică, setați home-ul utilizatorlui ca fiind în /home/nfsuser
și pe cea virtuală în /opt/exports/home/nfsuser
.root@heimdall:~# groupadd nfsuser root@heimdall:~# mkdir -p /opt/exports/home root@heimdall:~# useradd -d /opt/exports/home/nfsuser -m -g nfsuser -s /bin/bash nfsuser root@heimdall:~# echo "nfsuser:student" | chpasswd root@mjolnir:~# groupadd nfsuser root@mjolnir:~# useradd -d /home/nfsuser -m -g nfsuser -s /bin/bash nfsuser root@mjolnir:~# echo "nfsuser:student" | chpasswd root@heimdall:~# apt-get install finger root@heimdall:~# finger nfsuser Login: nfsuser Name: Directory: /opt/exports/home/nfsuser Shell: /bin/bash Never logged in. No mail. No Plan. root@mjolnir:~# apt-get install finger root@mjolnir:~# finger nfsuser Login: nfsuser Name: Directory: /home/nfsuser Shell: /bin/bash Never logged in. No mail. No Plan.
nfsuser
de pe mașina virtuală cu cel de pe mașina fizică. Ajustați în mod corespunzător ID-ul utilizatorului care deține /opt/exports
. (Hint: chown
, usermod
, groupmod
).root@heimdall:~# id nfsuser uid=1002(nfsuser) gid=1003(nfsuser) groups=1003(nfsuser) root@mjolnir:~# id nfsuser uid=1001(nfsuser) gid=1001(nfsuser) groups=1001(nfsuser) root@mjolnir:~# usermod -u 1002 nfsuser root@mjolnir:~# groupmod -g 1003 nfsuser root@mjolnir:~# id nfsuser uid=1002(nfsuser) gid=1003(nfsuser) groups=1003(nfsuser) root@heimdall:~# chown -R nfsuser:nfsuser /opt/exports
/opt/exports/home/nfsuser
de pe mașina virtuală, setând ca trusted-host IP-ul interfeței virtuale de pe masina fizică, având permisiuni de read-write și permițând conexiuni.root@heimdall:~# tail -n 1 /etc/exports /opt/exports/home/nfsuser 192.168.48.1(rw,insecure)
exportfs
)root@heimdall:~# exportfs -ra exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "192.168.48.1:/opt/exports/home/nfsuser". Assuming default behaviour ('no_subtree_check'). NOTE: this default has changed since nfs-utils version 1.0.x root@heimdall:~# exportfs /opt/exports/home/nfsuser 192.168.48.1
root@heimdall:~# /etc/init.d/rpcbind restart Stopping rpcbind daemon.... Starting rpcbind daemon...Already running..
/home/nfsuser
.root@heimdall:~# ip a s eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000 link/ether 00:0c:29:5a:9c:6c brd ff:ff:ff:ff:ff:ff inet 192.168.48.128/24 brd 192.168.48.255 scope global eth0 inet6 fe80::20c:29ff:fe5a:9c6c/64 scope link valid_lft forever preferred_lft forever root@mjolnir:~# apt-get install portmap root@mjolnir:~# apt-get install nfs-common root@mjolnir:~# mount 192.168.48.128:/opt/exports/home/nfsuser/ /home/nfsuser/
nfsuser
în mașina virtuală, creați fișierul nfswrite.txt
cu permisiuni 744 în directorul său home. Verificați daca pe client (mașina fizică), in /home/nfsuser
exista acest fisier.nfsuser@heimdall:~$ touch nfswrite.txt nfsuser@heimdall:~$ chmod 744 nfswrite.txt nfsuser@heimdall:~$ ls -l total 0 -rwxr--r-- 1 nfsuser nfsuser 0 Jan 26 18:34 nfswrite.txt root@mjolnir:~# ls -l /home/nfsuser/ total 0 -rwxr--r-- 1 nobody nogroup 0 Jan 26 18:34 nfswrite.txt
root@mjolnir:~# umount /home/nfsuser root@mjolnir:~# ls -l /home/nfsuser/ total 0 nfsuser@heimdall:~$ ls -l total 0 -rwxr--r-- 1 nfsuser nfsuser 0 Jan 26 18:34 nfswrite.txt
root@mjolnir:~# mount 192.168.48.128:/opt/exports/home/nfsuser/ /home/nfsuser/ root@mjolnir:~# ls -l /home/nfsuser/ total 0 -rwxr--r-- 1 nobody nogroup 0 Jan 26 18:34 nfswrite.txt root@mjolnir:~# file /home/nfsuser/nfswrite.txt /home/nfsuser/nfswrite.txt: empty
sudo service smbd start
sudo service nmbd start
testparm
EG106
. Folosiți ca nume NetBios prenumele vostru. Reporniți serviciul. Hint: folosiți directiva netbios name
.smb://
). Vizualizați stațiile prezente în workgroup-ul EG106.[homes]
. Creați utilizatorul bart
pe mașina fizică, restartați serverul și conectați-vă cu smbclient
de pe mașina virtuală la home-ul utilizatorului bart de pe mașina fizică. Ce se întâmplă?//netbios-name
sau \\\\netbios-name
. În interfața grafică (Nautilus), puteți folosi smb://netbios-name
//netbios-name/share-name
sau \\\netbios-name\\share-name
. În interfața grafică (Nautilus), puteți folosi smb://netbios-name/share-name
.smbpasswd
. Restartați serverul și încercați să vă conectați din nou. Listați fișierele din share-ul curent./home/bart/private
cu permisiuni 744. Creați un share de tip read-write pentru acest director care să permită accesul doar utilizatorului bart. Conectați-vă la acest share de pe mașina virtuală și transferați un fisier (ex:file.txt
) de pe mașina virtuală pe mașina fizică. (Hint: valid users
)/etc/default/rsync
). Rulați netstat -lntp
și identificati linia corespunzătoare daemonului de rsync./home/student/public-files
și /home/student/private-files
pe mașina virtualăpublic-files
să poată fi accesat fără parolă și private-files
să poata fi accesat numai cu introducerea parolei utilizatorului student.vsftpd
în mașina virtuală și configurați autentificarea folosind PAM. Testați folosind un client din mașina fizică. (tutorial: http://www.cyberciti.biz/tips/centos-redhat-vsftpd-ftp-with-virtual-users.html)