Newer
Older
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
## Persönliche Samba-Freigaben ermöglichen
Samba-Server im Terminal installieren:
```
sudo apt install samba
```
Für persönliche Freigaben muss ein Benutzer zur Gruppe „sambashare“ gehören. Lassen Sie sich mit
```
groups
```
anzeigen, ob das aktuelle Benutzerkonto bereits dazugehört. Andernfalls führen Sie
```
sudo usermod -aG sambashare [User]
```
aus. Da Samba eine eigene Passwortverwaltung besitzt, muss man außerdem ein Passwort mit
```
sudo smbpasswd -a [User]
```
vergeben. Den Platzhalter „[User]“ ersetzen Sie jeweils durch die Bezeichnung des Benutzerkontos. Nutzer von Ubuntu 24.04 installieren außerdem
```
sudo apt install nautilus-share
```
Die Erweiterung ist nötig, damit der Dateimanager Nautilus „Freigabeoption“ im Kontextmenü anzeigt. Nach diesen Änderungen starten Sie Linux neu.
Erlauben Sie Gästen und anderen Benutzern mit
```
chmod 751 /home/[User]
```
den Zugriff auf das Home-Verzeichnis. Linux Mint weist auf das Problem der fehlenden Berechtigungen im Freigabedialog hin, Ubuntu nicht.
## Globale Samba-Freigaben konfigurieren
Eine neue Freigabe lässt sich beispielsweise über diese drei Zeilen erstellen, die Sie am Ende der Datei „smb.conf“ einfügen:
```
[data1]
path = /data1
writeable = no
```
Damit wird das Verzeichnis „/data1“ unter der Bezeichnung „data1“ freigegeben.
Wenn Sie auch Benutzern ohne Konto den Zugriff auf die Freigabe erlauben wollen, ergänzen Sie die Freigabedefinition um folgende Zeile:
```
guest ok = yes
```
Samba berücksichtigt Konfigurationsänderungen nach einiger Zeit automatisch, was sie über einen Neustart des Dienstes mit
```
sudo systemctl restart smbd
```
beschleunigen können.
**Schreibrechte aktivieren:**
```
sudo chown -R root:sambashare /data1
sudo find /data1 -type d -exec chmod 775 {} +
sudo find /data1 -type f -exec chmod 664 {} +
```
## Apache-Freigaben ohne und mit Schreibzugriff
```
sudo apt install apache2
```
```
sudo mkdir /var/www/html/data
mount --bind /data1 /var/www/html/data
```
```
/data1 /var/www/html/data none bind 0 0
```
```
http://[MeinServer]/data
```
**Freigaben mit Schreibzugriff:**
```
sudo a2enmod dav
sudo a2enmod dav_fs
```
```
sudo mkdir /var/www/webdav
```
```
mount --bind /data1 /var/www/webdav
```
```
sudo chown -R www-data:www-data /var/www/webdav
```
Bauen Sie oberhalb von „</VirtualHost>“ die folgenden vier Zeilen ein:
```
Alias /webdav /var/www/webdav
<Directory /var/www/webdav>
DAV On
</Directory>
```
Starten Sie den Webserver mit
```
sudo systemctl restart apache2
```
neu
Den Schreibzugriff können Sie einfach mit
```
sudo chown -R root:root /var/www/webdav
```
unterbinden.
**Zusatzinfos:**
Apache-Verzeichnisse mit Passwort schützen:
Wenn nur bestimmte Personen Zugriff auf die Webseiten erhalten sollten, lässt sich der Zugang mit einem Passwort schützen. Erzeugen Sie zuerst eine Datei für die Authentifizierung:
```
sudo htpasswd -c -B /etc/apache2/.htusers sepp
```
Bauen Sie in einen Anweisungsblock in die Server-Konfiguration „/etc/apache2/sites-available/000-default.conf“ ein:
```
<Directory /var/www/html>
AuthType Basic
AuthName "Bitte geben Sie ein Passwort ein!"
AuthUserFile /etc/apache2/.htusers
Require valid-user
</Directory>
```
Der Zugang wird jetzt nur nach Anmeldung mit dem Benutzernamen „sepp“ und dem vergebenen Passwort gewährt.
**Webdav mit Passwort schützen:**
Passwortdatei erzeugen:
```
sudo htpasswd -c -B /etc/apache2/.webdav webdavuser
```
Passwortschutz aktivieren:
```
Alias /webdav /var/www/webdav
<Directory /var/www/webdav>
DAV On
AuthType Basic
AuthName "Mein WebDAV"
AuthUserFile /etc/apache2/.webdav
Require valid-user
</Directory>
```
## SFTP für den Datenaustausch nutzen
```
sudo apt install openssh-server
```
```
ssh [User]@[Server-IP]
```
```
http://[Name oder IP]/[Webdav-Ordner]
```
## Datenaustausch mit Android-Geräten
**KDE Connect:**
```
sudo apt install gnome-shell-extension-gsconnect gnome-shell-extension-prefs
sudo apt install kdeconnect --no-install-recommends
```
## Freigabedienste im Netzwerk bekannt machen
Für weitere Serverdienste erstellen Sie Konfigurationsdateien im Ordner „/etc/avahi/services“.
Für SFTP beispielsweise die Datei „sftp.service“ mit diesem Inhalt (neun Zeilen):
```
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h (SFTP)</name>
<service>
<type>_sftp-ssh._tcp</type>
<port>22</port>
</service>
</service-group>
```
```
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h (WebDav)</name>
<service>
<type>_webdav._tcp</type>
<port>80</port>
<txt-record>path=/webdav</txt-record>
<txt-record>u=''</txt-record>
<txt-record>p=''</txt-record>
</service>
</service-group>
```
```
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h (WebDav)</name>
<service>
<type>_webdavs._tcp</type>
<port>443</port>
<txt-record>path=/webdav</txt-record>
<txt-record>u=''</txt-record>
<txt-record>p=''</txt-record>
</service>
</service-group>
```
Hinter "u=" tragen Sie den Benutzernamen ein und hinter "p=" das Passwort, wenn Sie die Atuthentifizierung in Apache konfiguriert haben.
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
Datei nfs.service:
```
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h (NFS)</name>
<service>
<type>_nfs._tcp</type>
<port>2049</port>
<txt-record>path=/srv/nfsv4/</txt-record>
</service>
</service-group>
```
Datei sftp.service:
```
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h (SFTP)</name>
<service>
<type>_sftp-ssh._tcp</type>
<port>6004</port>
</service>
</service-group>
```
**WS-Discovery-Service: *
```
sudo apt install wsdd2
```