Newer
Older
## Quellen/Links
Filezilla: https://filezilla-project.org
Winscp: https://winscp.net
Android Cx Datei Explorer: https://m6u.de/CXFX
Paidrop: https://pairdrop.net
Android KDE-Connect: https://m6u.de/KDECON
Local Send Downloads: https://localsend.org/de/download
Android Local Send: https://m6u.de/LOCSE
## 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
vergeben.
Den Platzhalter „[User]“ ersetzen Sie jeweils durch die Bezeichnung des Benutzerkontos.
Nutzer von Ubuntu 24.04 installieren außerdem
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
```
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]
```
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
**Zusatzinfo: Verwendung von SFTP einschränken**
Standardmäßig hat jedes Benutzerkonto SSH- und SFTP-Zugriff. Sie können aber für einzelne Benutzern oder Gruppen den Shell-Zugang über SSH verbieten und SFTP auf ein bestimmtes Verzeichnis beschränken, etwa für den Datenaustausch mit Bekannten oder Mitarbeitern. Dazu öffnen Sie die Datei „/etc/ ssh/sshd_config“ als root in einem Editor und fügen am Ende folgende sechs Zeilen an:
```
Match Group sftpgroup
ChrootDirectory /home/sftphome
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no
```
Erstellen Sie mit
```
addgroup sftpgroup
```
eine neue Gruppe und mit den folgenden fünf Zeilen einen neuen Benutzer mit Passwort und das Verzeichnis „/home/sftphome“ mit den erforderlichen Rechten:
```
sudo useradd -s /bin/false -g sftp group sftpuser
sudo passwd sftpuser
sudo mkdir /home/sftphome
sudo chown root:root /home/sftphome
sudo chmod 755 /home/sftphome
```
Der Benutzer sftpuser kann sich jetzt über eine SFTP-Client anmelden und Dateien aus „/home/sftphome“ herunterladen. Wenn er auch Dateien hochladen soll, führen Sie folgende Befehle aus:
```
mkdir /home/sftphome/upload
chown root:sftpgroup /home/sftphome/upload
chmod 775 /home/sftphome/upload
```
Damit erhalten Mitglieder der Gruppe sftpgroup Schreibrechte im Ordner „/home/sftphome/upload“. Eine Anmeldung über SSH ist für diese Gruppe nicht möglich.
## 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.
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
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>
```