Gestione dei servizi nei server Linux
Servizi e Demoni
●
●
●
●
●
●
Nei server Linux ogni attività è gestita da un programma
Ogni programma dispone, al minimo, di 3 possibilità di
comunicazione (stdin, stdout, stderr)
Ci sono programmi che dialogano direttamente con un utente
in modo non grafico (stdin=tastiera, stdout e stderr=video)
Ci sono programmi che usano l'interfaccia grafica
Ci sono programmi che non dialogano direttamente con
l'utente (demoni)
Nella gestione dei servizi di rete viene fatto largo uso dei
demoni
Schema di servizio di rete
●
●
●
●
Il demone crea un socket e ci si mette in ascolto.
Il socket è una struttura di comunicazione che viene connessa
ad una porta IP
Alla ricezione di un pacchetto di connessione il demone si
duplica (fork): una parte rimane in ascolto per ulteriori
connessioni, l'altra gestisce le connessioni sul socket ereditato.
Esiste un programma che può ascoltare su molti socket e,
dopo la duplicazione, lanciare un programma od un altro a
seconda del socket su cui è stato collegato, connettendo stdin,
stderr e stdout di questo programma con il socket.
Inetd
●
●
Il programma che agisce lanciando vari programmi è detto
inetd ed è controllato dal file di configurazione /etc/inetd.conf
Nel file di configurazione ogni riga corrisponde alle seguente
serie di informazioni:
–
Servizio (nome della porta come in /etc/services)
–
Tipo di socket ( stream o datagram )
–
Protocollo ( TCP o UDP )
–
Flags ( wait o nowait )
–
Utente ( quale utente sembrarà aver lanciato il programma )
–
Programma ( pathname completo )
–
Argomenti del programma (di solito al massimo 5 )
Attivazione e disattivazione in inetd
●
●
La cosa più semplice da fare è disattivare un servizio attivo:
–
Commentare la riga relativa in /etc/inetd.conf
–
Trovare il numero del processo inetd usando il comando ps
afuxwww | grep inetd (il numero del processo è il primo
numero che appare sulla riga)
–
Eseguire il comando kill -1 xxx dove xxx è il numero del
processo appena trovato
Per riattivare il servizio:
–
Levare il commento in /etc/inetd.conf
–
Trovare il numero del processo inetd con il comando appena
visto
–
Eseguire il comando kill come appena visto
Demoni
●
●
Inetd è il metodo più comodo per attivare molti servizi: ad
esempio è utilizzato per:
–
Ftp
–
Pop
–
Imap
–
Swat
Inetd è lento per cui alcuni servizi non lo utilizzano:
–
Http / Https
–
Ssh / scp
–
Samba
–
Sendmail
Configurazione di avvio con inetd
●
ftp
ftp
●
stream tcp nowait root /usr/sbin/tcpd in.ftpd
pop
pop3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/popper -s
●
imap
imap stream tcp nowait root /usr/sbin/tcpd imapd
●
swat
swat stream tcp nowait.400 root /usr/sbin/swat swat
tcpd è un programma che filtra l'accesso consentendo o meno
l'instaurarsi della connessione
Http / Https
●
I file di configurazione stanno di solito in /etc/http
●
Il file di gran lunga più importante è /etc/httpd/httpd.conf
●
●
●
L'installazione crea un file con dei default ragionevoli. Tale
file contiene anche delle spiegazioni sul come modificarlo
Nelle diapositive seguenti verranno illustrate alcune sezioni
del file di configurazione
Anche il server https viene configurato a partire dallo stesso
file, con l'aggiunta di riferimenti ai necessari certificati
crittografici.
Httpd - nomi dei file (1)
●
●
Nella prima parte del file di configurazione sono indicati dei
nomi di vari file necessari al funzionamento:
–
File aggiuntivi di configurazione
–
File dove registrare informazioni quali il PID del processo
Non è normalmente necessario modificare tali valori
–
●
Salvo la root directory del server stesso
Si noti, proprio all' inizio, la selta se demone o lanciato da
inetd
Httpd – Nomi dei file (2)
### Section 1: Global Environment
# ServerType is either inetd, or standalone.
ServerType standalone
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
ServerRoot "/opt/web"
# The LockFile directive sets the path to the lockfile
LockFile /var/lock/subsys/httpd/httpd.accept.lock
# PidFile: The file in which the server should record its process
# identification number when it starts.
PidFile /var/run/httpd.pid
Httpd – Nomi dei file (3)
# ScoreBoardFile: File used to store internal server process
# information.
ScoreBoardFile /var/run/httpd.scoreboard
# In the standard configuration, the server will process httpd.conf
# (this# file, specified by the -f command line option), srm.conf,
# and access.conf in that order.
The latter two files are now
# distributed empty, as it is recommended that all directives be
# kept in a single file for simplicity.
#ResourceConfig conf/srm.conf
#AccessConfig conf/access.conf
Httpd – Prestazioni (1)
●
●
Nella sezione seguente vi sono i dati che influenzano le
prestazioni del server.
–
Quanti processi sono in attesa di connessioni (il lancio di un
nuovo processo può essere 'lento' per cui avere dei processi
pronti aumenta le prestazioni
–
Limite massimo al numero di processi attivi per evitare di
appesantire troppo il server
–
Limite di richieste gestite da una connessione persistente
–
Timeout
Normalmente non vi è necessità di variare i numeri: se il
server tende a non rispndere si può aumentare il numero di
processi in attesa.
Httpd – Prestazioni (2)
# Server-pool size regulation.
Rather than making you guess
# how many server processes you need, Apache dynamically adapts
# to the load it sees ...
MinSpareServers 1
MaxSpareServers 1
# Number of servers to start initially
StartServers 1
# Limit on total number of servers running, i.e., limit on the
# number the system with it as it spirals down...
MaxClients 150
# MaxRequestsPerChild: the number of requests each child process is
# allowed to process before the child dies.
MaxRequestsPerChild 0
Httpd – Prestazioni (3)
# Timeout: The number of seconds before receives and sends time out.
Timeout 300
# KeepAlive: Whether or not to allow persistent connections
# (more than one request per connection).
# Set to "Off" to deactivate.
KeepAlive On
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection.
# Set to 0 to allow an unlimited amount.
MaxKeepAliveRequests 100
# KeepAliveTimeout: Number of seconds to wait for the next request
# from the same client on the same connection.
KeepAliveTimeout 15
Httpd – Connessioni (1)
●
●
Quando si usa httpd come un server allora occorre indicare
–
la porta su cui ascolta (normalmente la porta 80)
–
L'indirizzo od il nome del server (nel caso che seguiremo viene
utilizzato un asterisco che rimande alla configurazione dei
server virtuali, tecnica con la quale si possono disporre di più
siti all'interno dello stesso computer.
–
Se si utilizza il nome del server allora questo deve essere
risolubile da un DNS il quale fornisce il numero corrispondente.
Fatta, al più, la prima installazione questi dati non necessitano
ulteriori modifiche. Di solito l'installazione stessa inserisce dei
dati di default già corretti.
Httpd – Connessioni (2)
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, in addition to the default.
#Listen 3000
#Listen 12.34.56.78:80
# BindAddress: You can support virtual hosts with this option.
# This directive is used to tell the server which IP address to
# listen to. It can either contain "*", an IP address,
# or a fully qualified Internet domain name.
# See also the <VirtualHost> and Listen directives.
#BindAddress *
Httpd – Moduli (1)
●
●
Apache permette di inserire moduli per gestire le più varie
necessità:
–
Autenticazioni
–
Scripting basato su PERL o PHP
–
Connessioni con database per avere pagine dinamiche
–
SSI (server side include come le setensioni di frontpage)
La sezione relativa ai moduli viene riportata qui di seguito ma
non va toccata se non da persone esperte. L'installazione crea
già le liste corrette evitando mali di testa
Httpd – Moduli (2)
# The following Modules are loaded when the according package has
# been installed on your system. The Variables are defined in
# /sbin/init.d/apache and control which modules are dynamically
# loaded
...
<IfDefine PERL>
LoadModule perl_module /usr/lib/apache/libperl.so
</IfDefine>
<IfDefine SSL>
LoadModule ssl_module
/usr/lib/apache/libssl.so
LoadModule sxnet_module
/usr/lib/apache/mod_sxnet.so
</IfDefine>
...
Httpd – Server principale (1)
●
●
●
Per semplificare la gestione dei siti Apache usa la
configurazione di un primo 'host' in modo da permettere poi la
configurazione degli host virtuali per differenza.
Per questa ragione la configurazione del server principale è
particolarmente completa: comunque molte cose non
richiedono cambiamenti anche se è utile comprenderle
Nelle diapositive che seguiranno sono contenute le varie
impostazioni
Httpd – Server principale (2)
# The directives in this section set up the values used by the
# 'main' server, which responds to any requests that aren't handled
# by a <VirtualHost> definition.
These values also provide defaults
# for any <VirtualHost> containers you may define later in the file.
# All of these directives may appear inside <VirtualHost>
# containers, in which case these default settings will be
# overridden for the virtual host being defined.
# If your ServerType directive (set earlier in the 'Global
# Environment'section) is set to "inetd", the next few directives
# don't have any effect since their settings are defined by the
# inetd configuration. Skip ahead to the ServerAdmin directive.
# Port: The port to which the standalone server listens.
Port 80 Questo valore non viene praticamente mai toccato
Httpd – Server principale (3)
#
SSL Support When we also provide SSL we have to listen to the
# standard HTTP port (see above) and to the HTTPS port
<IfDefine SSL>
Listen 80 Questo valore non viene praticamente mai toccato
Listen 443 Questo valore non viene praticamente mai toccato
</IfDefine>
# User/Group: The name (or #number) of the user/group to run httpd
User wwwrun
Questo valore non viene praticamente mai toccato
Group nogroup Questo valore non viene praticamente mai toccato
# Your address, where problems with the server should # be e-mailed.
# It appears on some server-made pages, such as error documents.
#ServerAdmin [email protected]
Questo valore dev'essere
impostato all' indirizzo di mail dell'amministratore
Httpd – Server principale (4)
# ServerName allows you to set a host name which is sent back to
# clients for your server if it's different than the one the program
# would get (i.e., use "www" instead of the host's real name).
# Note: You cannot just invent host names and hope they work. The
# name you define here must be a valid DNS name for your host. If
# you don't understand this, ask your network administrator.
# If your host doesn't have a registered DNS name, enter its IP
# address here.
ServerName www.it-admin.it
Questo valore dev'essere impostato
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory,
# but symbolic links may be used to point to other locations.
DocumentRoot "/opt/web/gio/it-admin-root"
Httpd – Server principale (5)
# Each directory to which Apache has access, can be configured with
# respect to which services and features are allowed and/or disabled
# in that directory (and its subdirectories).
# First, we configure the "default" to be a very restrictive set of
# permissions.
<Directory "/opt/web/gio/it-admin-root">
Questo valore dev'essere
impostato e corrispondere alla directory che viene usata realmente
Options Indexes -FollowSymLinks +Includes MultiViews
AllowOverride None
Order allow,deny
Allow from all
<IfModule mod_dav.c>
DAV Off
</IfModule>
Httpd – Server principale (6)
Questi sono esempi di che tipo di impostazioni utilizzare
# Enable server side includes (SSI) for the index.html pages, as
# some of the content is created dynamically. Of course this should
# be disabled when setting up a productive server.
<Files /opt/web/gio/it-admin-root/index.htm*>
Options -FollowSymLinks +Includes +MultiViews
</Files>
# Protect the php3 test page, so it cannot be viewed from an outside
<Files test.php3>
Order deny,allow
deny from all
allow from localhost
</Files>
</Directory>
Httpd – Server principale (7)
Questo è l'esempio di una directory secondaria utilizzata poi da un
host virtuale
<Directory "/opt/web/gio/itsecurity">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
AuthType Basic
AuthName ExpertLanUse
AuthUserFile
/etc/httpd/passwd
AuthGroupFile /etc/httpd/group
require user anton berta karl
</Directory>
Httpd – Server principale (8)
Questo è l'esempio di come modulare l'accesso alle pagine
# AccessFileName: The name of the file to look for in each directory
# for access control information.
AccessFileName .htaccess
# The following lines prevent .htaccess files from being viewed by
# Web clients.
Since .htaccess files often contain authorization
# information, access is disallowed for security reasons.
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
Httpd – Server principale (9)
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.
ErrorLog /var/log/httpd/error_log
Va eventualmente modificata per
adattarla alla struttura del server
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
Httpd – Server principale (10)
Normalmente questi valori non vanno modificati
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}
i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
# The location and format of the access logfile
# (Common Logfile Format).
CustomLog /var/log/httpd/access_log common
#CustomLog /var/log/httpd/referer_log referer
#CustomLog /var/log/httpd/agent_log agent
#CustomLog /var/log/httpd/access_log combined
Httpd – Server principale (11)
Questi sono esempi di che tipo di impostazioni vengono utilizzate
per gli alias (qui viene mostrato come raggruppare le icone in una
directory specifica, fuori dalla root-directory, allo scopo di
aumentare la protezione. Può essere necessario modificare il nome
della directory.
<IfModule mod_alias.c>
# Note that if you include a trailing / on fakename then the server
# will require it to be present in the URL.
# aliased in this example, only "/icons/"..
Alias /icons/ "/usr/local/httpd/icons/"
<Directory "/usr/local/httpd/icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>...
So "/icons" isn't
Httpd – Server principale (12)
Questo è un esempio di come viene 'spostata' la directory dei cgibin che è sempre una directory da proteggere con cura. Vedremo
come questa directory venga spostata anche negli host virtuali
# ScriptAlias: This controls which directories contain server
# scripts. ScriptAliases are essentially the same as Aliases, except
# that documents in the realname directory are treated as
# applications and run by the server when requested rather than as
documents sent to the client.
# The same rules about trailing "/" apply to ScriptAlias directives
# as to Alias.
ScriptAlias /cgi-bin/ "/opt/web/apache/cgi-bin/"
Httpd – Host virtuali (1)
●
●
●
Gli host virtuali permettono di usare un solo server per più siti,
tra di loro non legati
Nell'esempio si vede come sono descritti solo alcuni valori,
rimanendo gli altri identici a quelli del host principale appena
visto.
Ovviamente tutti i valori debbono essere inseriti a cura della
persona che effettua la configurazione: l'esempio riportato è
basato su un server reale e può essere utilizzato come guida
per ulteriori configurazioni
Httpd – Host virtuali (2)
<VirtualHost 10.0.0.32:80>
ServerAdmin [email protected]
DocumentRoot /opt/web/gio/www-it-administrator-it
ScriptAlias /cgi-bin/ "/opt/web/gio/it-administrator-cgi-bin/"
ServerName www.it-administrator.it
ServerPath /www.it-administrator.it
ErrorLog /var/log/httpd/apache/it-administrator-error_log
CustomLog /var/log/httpd/apache/it-administrator-access_log common
</VirtualHost>
Httpd – Impostazioni ssl (1)
●
●
●
Con SSL (Secure Socket Layer) si intende il protocollo che
permette il funzionamento dei server sicuri, quelli, per
intenderci, nella quale l'URL incomincia per https:
Nella sezione generale non vi sono valori che richiedono
modifiche, se non in casi particolari.
Si può decidere di spostare il file di log o quello relativo ai
mutex in una posizione più comoda
Httpd – Impostazioni ssl (2)
<IfDefine SSL>
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl
.crl
</IfDefine>
<IfModule mod_ssl.c>
#
Pass Phrase Dialog:
#
Configure the pass phrase gathering process.
SSLPassPhraseDialog
exec:/etc/httpd/ciccio
#
Inter-Process Session Cache:
#
Configure the SSL Session Cache: First either `none'
#
and, second the expiring timeout (in seconds).
SSLSessionCache
SSLSessionCacheTimeout
none
300
Httpd – Impostazioni ssl (3)
#
Semaphore:
#
Configure the path to the mutual explusion semaphore the
#
SSL engine uses internally for inter-process synchronization.
SSLMutex
file:/var/run/ssl_mutex
#
Pseudo Random Number Generator (PRNG):
#
Configure one or more sources to seed the PRNG of the
#
SSL library. The seed data should be of good random quality.
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
#SSLRandomSeed startup file:/dev/random
512
#SSLRandomSeed startup file:/dev/urandom 512
#SSLRandomSeed connect file:/dev/random
512
#SSLRandomSeed connect file:/dev/urandom 512
Httpd – Impostazioni ssl (4)
#
Logging:
#
The home of the dedicated SSL protocol logfile. Errors are
#
additionally duplicated in the general error log file.
#
this somewhere where it cannot be used for symlink attacks on
#
a real server (i.e. somewhere where only root can write).
#
Log levels are (ascending order: higher ones include lower
#
ones): none, error, warn, info, trace, debug.
SSLLog
/var/log/httpd/ssl_engine_log
SSLLogLevel debug
</IfModule>
Put
Httpd – Host virtuali ssl (1)
●
●
●
Anche per gli host virtuali vale il principio che il primo
stabilisce dei valori che, se non modificati, valgono per tutti.
La cosa più importante è generare la coppia di chiavi e poi
usare la chiave pubblica per ottenere il certificato da utilizzare
nello scambio di dati. Questo è comunque argomento del
modulo 5.
Tutte le impostazioni dei file vanno verirficate anche se molte
sono già corrette.
Httpd – Host virtuali ssl (2)
<IfDefine SSL>
## SSL Virtual Host Context
NameVirtualHost 10.0.0.32:443
<VirtualHost 10.0.0.32:443>
DocumentRoot "/opt/web/gio/10.0.0.32"
ServerAdmin [email protected]
ServerName nemo.it-admin.it
ServerPath /10.0.0.32
ScriptAlias /cgi-bin/ "/opt/web/gio/10.0.0.32/cgi-bin/"
ErrorLog /var/log/httpd/apache/10.0.0.32-error_log
CustomLog /var/log/httpd/apache/10.0.0.32-access_log common
TransferLog /var/log/httpd/apache/10.0.0.32-access_log
Httpd – Host virtuali ssl (3)
SSLEngine on
SSLCipherSuite
ALL:!ADH:!EXP56:RC4+RSA:+HIGH:+MEDIUM:+LOW:!SSLv2:+EXP:+eNULL
#
Server Certificate:
SSLCertificateFile /etc/httpd/ssl.crt/server.2002.crt
#
Server Private Key:
SSLCertificateKeyFile /etc/httpd/ssl.key/server.2002.key
#
Server Certificate Chain:
#SSLCertificateChainFile /etc/httpd/ssl.crt/ca.crt
#
Certificate Authority (CA):
#SSLCACertificatePath /etc/httpd/ssl.crt
#
Certificate Revocation Lists (CRL):
#SSLCARevocationPath /etc/httpd/ssl.crl
#SSLCARevocationFile /etc/httpd/ssl.crl/ca-bundle.crl
Httpd – Host virtuali ssl (4)
#
Client Authentication (Type):
SSLVerifyClient none
#
With SSLRequire you can do per-directory access control based
#
on arbitrary complex boolean expressions containing server
#
variable checks and other lookup directives.
#<Location />
#SSLRequire (
%{SSL_CIPHER} !~ m/^(EXP|NULL)-/ \
#
and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \
#
and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \
#
and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \
#
and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20
#
or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/
#</Location>
) \
Httpd – Host virtuali ssl (5)
#
SSL Engine Options:Set various options for the SSL engine.
#SSLOptions +FakeBasicAuth +ExportCertData +CompatEnvVars
+StrictRequire
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/usr/local/httpd/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
#
SSL Protocol Adjustments:
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
</VirtualHost>
Httpd – Host virtuali ssl (6)
<VirtualHost 10.0.0.32:443>
ServerAdmin [email protected]
DocumentRoot /opt/web/gio/docenti-it-admin
ServerName docenti.it-admin.it
ServerPath /docenti.it-admin.it
ScriptAlias /cgi-bin/ "/opt/web/gio/docenti-it-admin-cgi-bin/"
ErrorLog /var/log/httpd/docenti.it-admin-it-error_log
CustomLog /var/log/httpd/docenti.it-admin-it-access_log common
TransferLog /var/log/httpd/access_log
SSLEngine on
SSLCertificateFile /etc/httpd/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/ssl.key/server.key
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
</VirtualHost>
Sendmail – configurazione
●
●
●
Il programma di gestione della posta non è
semplice da configurare ma, per fortuna, viene
configurato automaticamente all'atto della
installazione del server.
Eventuali modifiche, solo per esperti, possono
essere fatte modificando il file sendmail.cf che
può risiedere in /etc oppure in /etc/mail
Una più semplice configurazione può essere fatta
nel file aliases in modo da redirigere la posta in
ingresso su altri server o differenti utenti
Sendmail – Attivazione e
disattivazione
●
●
●
Come molti servizi anche sendmail viene
lanciato automaticamente all' avvio del sistema
operativo.
Per attivare o disattivare questo servizio di solito
si utilizza il comando /etc/init.d/mta seguito dalle
parole start o stop
Alle volte il comando sta in /sbin oppure si
chiama sendmail
Samba - Configurazione
●
●
●
●
●
Il programma samba permette ad un server Linux (o Unix o
mac os X) di agire come un server Windows.
Essendo molto flessibile le opzioni di confugurazione sono
molteplici per cui saranno presentate solo quelle principali.
Installazione quasi di default con Linux.
Configurazione semplice: sia testo che web
Opzioni globali ed opzioni di share
Samba - opzioni globali
●
●
●
●
●
●
●
Nome del server
Gruppo di lavoro
Crittografia
Livello di browsing
Server di dominio
Wins server
Usare dominio Windows
[global]
workgroup = MGENG
guest account = nobody
keep alive = 30
os level = 99
kernel oplocks = false
security = user
encrypt passwords = yes
Samba - crittografia
●
●
●
Serve per le 'nuove' versioni di Windows
– Da NT e 98
Comandi per disabilitarli nella registry dei sistemi windows
– Ma è meglio non farlo
Comandi per gestire (smbpasswd)
–
Smbpasswd -a utente
Samba - livello di browsing
●
●
●
●
Tipo di imbustamento di SMB: in TCP/IP o in Ethernet
Tutti i PC tendenzialmente cercano di divenire master
browser
Al cambio del master browser succede il finimondo
Samba configurato per vincere: sui client o anche sui server
–
os level = 99
Samba - usare i domini windows
●
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
Configurare Samba per usare la validazione di NT
Uncomment the following, if you want to use an existing
NT-Server to authenticate users
security = server
password server = 192.168.1.10
Uncomment this, if you want to integrate your server
into an existing net e.g. with NT-WS to prevent nettraffic
local master = no
If you want Samba to act as a wins server, please set to yes
wins support = no
If you want Samba to use an existing wins server,uncomment
wins server = 192.168.1.1
Do you wan't samba to act as a logon-server for your windows clients,
logon script =%U.bat
domain logons = yes
domain master = yes
[netlogon]
path = /netlogon
Samba - utenti
●
Disabilitare le shell per limitare le possibilità di accesso
–
●
La conversione di più utenti in uno solo con smbuser
–
●
Dove serve avere uno stesso schema di condivisione
Utente guest
–
●
In /etc/passwd la shell dev'essere /bin/false
Per le condivisioni generiche in lettura
Home directory utenti
–
Usa le home di Linux
[homes]
comment = Cartelle degli utenti
read only = No
create mask = 0640
directory mask = 0750
browseable = No
Samba - accessi
●
Validazione con user
–
●
Validazione con Host
–
●
Si possono inserire limitazioni basate
sull'indirizzo IP (o sul nome)
Permessi sui file creati
–
●
Sul client va inserito user e password
Quando più utenti debbono operare
sugli stessi file
Mangle case / Preserve case
–
Linux è case-sensitive, Windows no
[Deposito]
path=/salva
comment = Salvataggi
browseable = yes
read only = no
create mode = 0777
Scarica

Gestione dei servizi nei server Linux