Konfiguracja systemu CentOS 5.3:
1. FTP.
2. HTTP.
3. SELinux + zapora sieciowa.
4. Instalacja Mysql 5.5.
5. Instalacja php 5.3.
6. Instalacja vmware serwer 2.0 (free).
7. MPlayer + kodeki.
8. Midnight Commander.
9. Thunderbird.
10. Komunikator GaJIM.
11. Komunikator Kopete.
12. GCC.
13. SAMBA.
14. Sendmail.
15. IMAP/POP3 na dovecot.
16. SENDMAIL + SMTPS.
17. DOVECOT + POP3S.
18. Dodawanie użytkownika oraz plik Aliases (e-mail).
19. Blokada bezpośredniego logowania na konto root-a.
20. Logowanie na root'a tylko przez wybranych userów (polecenie su).
21. Pakowanie / wypakowanie plików / katalogów.

Instalacja

Instalację systemu linux CentOS 5.3 przeprowadzamy w standardowy sposób. Nie dodajemy żadnych dodatkowych składników. Wszelkie dodatkowe elementy systemu można dodać w późniejszym czasie.

Dodanie usług, dodatkowych pakietów po instalacji

1. FTP
  1. Instalacja / dodanie usługi:
    W celu dodania usługi wywołujemy z menu X-Window: Aplikacje -> Dodaj/usuń oprogramowanie. W oknie wybieramy znajdź i wpisujemy vsftpd, na liście możliwych do zainstalowania programów zaznaczamy
    vsftpd-2.0.5-16.el5_6.1.i386 - vsftpd - bardzo bezpieczny demon FTP
    i wybieramy zastosuj.

  2. Uruchomienie:
    Po zainstalowaniu wybieramy z menu: System -> Administracja -> Usługi. W nowym oknie wyszukujemy vsftpd, zaznaczmy i wciskamy tryb "Uruchom".

  3. Katalog konfiguracji:
    Katalog z konfiguracją FTP'a:
    /etc/vsftpd - plik ftpusers i vsftpd.conf
    Ciekawy link: http://forum.fedora.pl/index.php?showtopic=9329

  4. SELinux:
    Aby umozliwić logowanie się poprzez FTP należy zmienić ustawienia zapory SELinux poleceniem
    setsebool -P ftp_home_dir=1
    Przywrócenie zapory i zablokowanie dostepu:
    setsebool -P ftp_home_dir=0


  5. Dostęp tylko do katalogu domowego:
    Aby zablokować użytkownikowi dostęp do innych katalogów niz jego domowy należy w pliku /etc/vsftpd/vsftpd.conf
    dopisać wiersz którego nie ma:
    chroot_local_user=YES

  6. Blokada użytkownika anonimowego:
    Aby zablokować dostęp użytkownika anonimowego należy w pliku /etc/vsftpd/vsftpd.conf
    zmienić wartość wiersza na:
    anonymous_enable=NO
    po zmianach należy zrestartować usługę FTP poleceniem
    service vsftpd restart
    dodatkowo można poleceniami:
    zatrzymać usługę: service vsftpd stop
    uruchomić usługę: service vsftpd start

  7. Uprawnienia root'a:
    Aby użytkownik miał mieć prawa root'a należy wyedytować plik
    /etc/passwd
    polecenie: nano passwd
    i wpis np.: user:x:500:500:usertest:/home/user:/bin/bash
    należy poprawić na:
    user:x:0:0:usertest:/home/user:/bin/bash

  8. Zmiana katalogu domowego:
    Aby zmienić katalog domowy użytkownika należy wyedytować plik
    /etc/passwd
    polecenie: nano passwd
    i wpis np.: user:x:500:500:usertest:/home/user:/bin/bash
    należy poprawić na:
    user:x:0:0:usertest:/local/user:/bin/bash
    od następnego logowania katalogiem domowym będzie katalog /local/user


GFTP - dobry wielowątkowy klient FTP - pobrać należy RPM gftp-2.0.18-3.2.2.i386.rpm

2. HTTP
  1. Instalacja / uruchomienie:
    Usługa HTTP winna być zainstalowana podczas standardowej instalacji. W celu uruchomienia wybieramy z menu: System -> Administracja -> Usługi. W nowym oknie wyszukujemy httpd, zaznaczmy i wciskamy tryb "Uruchom".

  2. Strona domowa:
    Konfiguracja - uruchamiamy terminal. W oknie terminala w wierszu poleceń wpisujemy:
    cd /etc/httpd/conf
    nano httpd.conf
    po uruchomieniu edytora wyszukujemy linie:
    - DocumentRoot (domyślny katalog w którym będzie przechowywana strona internetowa) i zmieniamy standarową ścieżkę "/var/www/html" na docelową,
    - Directory "/var/www/html" i zmieniamy ścieżkę "/var/www/html" na identyczną jak w przypadku linii DocumentRoot,
    - directoryIndex index.html index html.var i po odstępie dopisujemy index.php

  3. Adres IP / numer portu:
    Kolejnym krokiem jest ustawienie portu lub adresu IP i numeru portu na którym będzie nasłuchiwać serwer HTTP.
    W tym celu wyszukujemy linię zawierającej słowo Listen i modyfikujemy na naprzykład: Listen 0.0.0.0:80
    (taka modyfikacja pozwoli aby serwer HTTP nasłuchiwał na porcie 80 dla całej sieci).

  4. Strona kodowa:
    Ustawienia strony kodowej:
    - w pliku /etc/httpd/conf/httpd.conf należy odnaleźć wiersz:
    AddDefaultCharset
    i zmienić na np: Windows-1250

    Wychodzimy z edytora nano Ctrl + X - potwierdzając zapisanie zmian w pliku httpd.conf.

  5. Uruchomienie / zatrzymanie / restart:
    W linii poleceń wywołujemy polecenie restartu usługi httpd:
    /etc/init.d/httpd restart
    Można użyć również poleceń zatrzymania i uruchomienia usługi:
    /etc/init.d/httpd stop
    /etc/init.d/httpd start
    lub polecenia:
    service httpd restart

  6. Blokada domyślnego wyświetlania zawartości katalogów (listowania katalogów i plików)
    W celu zablokowania domyslnego wyświetlania zawartości katalogów (listowania katalogów i plików w postaci drzewa) należy w httpd.conf wyłączyć w sekcji:
    <Directory "/var/www/html">
    wpis:
    Options Indexes FollowSymLinks
    poprzedzając go znakiem #

  7. Dostęp do plików .htaccess
    W celu zablokowania umożliwienia odczytu plików .htaccess zawierającego dodatkowe dyrektywy odczytu zawartosci katalogów (listowania ich po podaniu na przykład uzytkownika i hasła) należy w httpd.conf dodać w sekcji:
    <Directory "/var/www/html">
    wiersz:
    AllowOverride All
    oraz wyłączyć (poprzedzić znakiem #) domyślny zapis:
    #AllowOverride None

  8. Zapis w pliku domyślnego wyświetlania zawartości katalogów oraz dostępu do plików .htaccess
    <Directory "/var/www/html">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.2/mod/core.html#options
    # for more information.
    #
        #Options Indexes FollowSymLinks
    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
        #AllowOverride None
        AllowOverride All
    #
    # Controls who can get stuff from this server.
    #
        Order allow,deny
        Allow from all
    
    </Directory>
    

  9. Listowanie zawartości katalogu przez WWW
    Należy włączyć opisany powyżej sposób:
    - blokady domyślnego wyświetlania zawartości katalogów (listowania katalogów i plików)
    - dostępu do plików .htaccess

    W dalszych krokach, celem wylistowania wskazanego katalogu umieszczonego w głównym katalogu DocumentRoot, jest wykonanie::
    - utworzenia w nim katalogu do listowania zawartości (na przykład katalogu public),
    - nadania katalogowi odpowiednich praw (do odczytu: 755 lub do odczytu i zapisu 777) na przykład poleceniem chmod -R 777 public,
    - zmodyfikowania zawartość pliku httpd.conf dodając w nim zapis z nową sekcją:
    <Directory /var/www/html/public/>
      AllowOverride All
      Options FollowSymLinks Indexes
    </Directory>
    
    Należy pamiętać aby w sekcji directory podać pełną scieżkę do katalogu public od katalogu głównego.
    - zrestarować usługę httpd poleceniem:
    service httpd restart

  10. Listowanie zawartości katalogu na hasło
    Należy włączyć opisany powyżej sposób:
    - blokady domyślnego wyświetlania zawartości katalogów (listowania katalogów i plików)
    - dostępu do plików .htaccess

    W dalszych krokach, celem wylistowania wskazanego katalogu umieszczonego w głównym katalogu DocumentRoot, jest wykonanie::
    - utworzenia w nim katalogu do listowania zawartości (na przykład katalogu public),
    - nadania katalogowi odpowiednich praw (do odczytu: 755 lub do odczytu i zapisu 777) na przykład poleceniem chmod -R 777 public,
    - zmodyfikowania zawartość pliku httpd.conf dodając w nim zapis z nową sekcją:
    <Directory /var/www/html/private/>
      Options FollowSymLinks Indexes
    </Directory>
    Należy pamiętać aby w sekcji directory podac pełną scieżkę do katalogu private od katalogu głównego.
    - utworzyć w katalogu /var/www/html/private plik: .htaccess i wprowadzić do niego zawartość:
    AuthType Basic
    AuthBasicProvider file
    AuthName "private"
    AuthUserFile /var/www/.htpasswd
    Require valid-user
    - utworzyć w katalogu /var/www/.htpasswd poleceniem:
    htpasswd -c /var/www/.htpasswd username
    New password:
    Re-type new password:
    Adding password for user username
    gdzie "username" - nazwa uzytkownika
    w pliku /var/www/.htpasswd powstanie zapis z nazwą uzytkownika i zakodowanym hasłem,
    - nadać prawa do odczytu do pliku /var/www/.htpasswd dla użytkownika apache poleceniem
    chmod 600 /var/www/.htpasswd
    chown apache.apache /var/www/.htpasswd
    - zrestarować usługę httpd poleceniem:
    service httpd restart

  11. VirtualHost na localhost
    W celu stworzenia virtualhost'a na localhost należy w pliku httpd.conf wyszukać wiersz NameVirtualHost i wprowadzić zapis:
    NameVirtualHost localhost:80
    następnie w katalogu: /etc/httpd/conf.d/ stworzyć plik na przykład o nazwie:
    virtual1.conf
    poleceniem: nano virtual1.conf
    w pliku zapisujemy wiersze jak poniżej:
    <VirtualHost localhost:80>
        ServerAdmin root@localhost
        ServerName virtual1.com
        #ServerAlias virtual1.com
        DocumentRoot "/local/virtual1/"
        ErrorLog /local/www-virtual1-error_log
        CustomLog /local/www-virtual1-access_log common
    </VirtualHost>
    
    wykonujemy restart httpd i na serwerze po wpisaniu w przegladarce adresu localhost pojawi się zawartośc katalogu /local/virtual1
    po wpisaniu zaś w adresie przeglądarki adresu IP serwera pokaże się zawartość głowenj strony. Strona na localhost bedzie widocna tylko z serwera i może w tym momencie służyć jako strona do testowania wprowadzanych zmian.

  12. Katalog domowy użytkownika
    W celu uruchomienia startowania stron WWW z katalogów domowych użytkowników należy wyedytować plik httpd.conf w sekcji:
    <IfModule mod_userdir.c>
    - wyłączając działanie blokady UserDir disable - na początku dodajemy znak #
    - odblokowujemy wiersz UserDir public_html - kasujemy znak # na początku wiersza
    - w katalogu domowym użytkownika /home/user/ zakładamy katalog public_html
    - będąc w katalogu /home nadajemy uprawnienia 755 do katalogu user (gdzie user jest nazwą użytkownika i zawiera podkatalog public_html - pełna scieżka /home/user/public_html/), w tym celu wykonujemy polecenia:
    cd /home
    chmod -R 755 user
    - wykonujemy restart httpd poleceniem service httpd restart

    Aby wywołać stronę domową użytkownika user w przeglądarce wpisjuemy http://localhost/~user/


3. SELinux + zapora sieciowa.
  1. Dostęp z X-Windows
    Z menu X-Windows wybieramy: System -> Administracja -> Poziom bezpieczeństwa i zapora sieciowa.
    Wyłączenie zapory sieciowej oraz SELinux nie jest zalecane.

  2. Zaufane usługi / dodanie portów
    Opcje zapory sieciowej oraz SELinux pozwalają zdefiniować zaufane usługi (na przykład: FTP, SSH, Samba, WWW(HTTP)). W opcji "Inne porty" można dodać porty, które nie mają być blokowane, w celu obsługi zainstalowanych serwisów.

4. Mysql 5.5.
  1. Instalacja
    Wykonujemy w kolejności polecenia:
    rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm
    yum install libmysqlclient15 --enablerepo=webtatic //ten z błedem
    yum remove mysql mysql-*
    yum install mysql55 mysql55-server --enablerepo=webtatic
    service mysqld start
    mysql_upgrade

5. PHP 5.3.
  1. Instalacja
    Przed zainstalowaniem należy usunąc wszystkie skladniki PHP (np. 5.1.16 dostarczane z CENTOS 5.3)
    Następnie wykonujemy polecenia:
    rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm
    yum --enablerepo=webtatic install php
    yum --enablerepo=webtatic install php-mysql
    yum --enablerepo=webtatic install php-mcrypt
    yum --enablerepo=webtatic install php-mbstring
    yum --enablerepo=webtatic install php-gd
    yum --enablerepo=webtatic update php
    yum remove php-mhash php-ncurses // niekoniecznie ale można wykonać

    lub inaczej (wersja instalacji nie koniecznie musi być 5.3)

    yum install php php-devel
    yum search php
    yum install php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc
    yum install httpd-devel

  2. Konfiguracja
    Edytujemy plik /etc/php.ini i w sekcji upload_max_filesize podajemy wymaganą wartość przesyłanego pliku w MB,
    w sekcji memory_limit podajemy wielkość pamięci do obsługi poleceń (na przykład zwiększamy wartość po to aby
    obsłużyć użycie biblioteki GD celem dekompresji dużych plików JPEG przez funkcję ImageCreateFromJpeg)

    Restart usługi HTTP pozwala na uruchomienie wprowadzonych zmian:
    /etc/init.d/httpd restart

6. Instalacja vmware serwer 2.0 (free).
  1. Rejestracja się na stronie VMWare
    http://www.vmware.com/products/server/get.html
    Na podany przy rejestracji e-mail przyjdzie link do klucza licencji do wersji Free serwera VMWare (pod platformę Linux i Windows) oraz będą umieszczone linki w celu pobrania wersji instalacyjnych.

  2. Plik instalcyjny RPM
    Należy pobrać z otrzymanego linku instalacyjny plik rpm dla wersji linux: VMware-server-2.0.1-156745.i386.rpm

  3. Instalacja CentOS (czysta instalacja)
    Zainstalować czystą wersję Centos'a 5.3 podając przy instalacji wszystkie składniki oprócz:
    - wirtualizacji
    - klastrów
    - klastrowej pamięci masowej
    - Centos Extras
    Instalacja musi odbyć się tak, aby nie był instalowany kernel XEN, który jest dodawany przy wirtualizacji.
    Podczas instalacji wyłaczyć SELinux (później można go uruchomić) oraz dodać nowe porty do obsługi firewall'a:
    - port 902 na TCP
    - port 8222 na TCP - dostęp do zarządzania bez szyfrowania na porcie 8222
    - port 8333 na TCP - dostęp do zarządzania z wykorzystaniem szyfrowania na porcie 8333
    Po instalacji systemu nie pobierać żadnych aktualizacji, włączyć natomiast usługę HTTP.

  4. Instalacja VMWare Serwer
    Po instalacji czystej wersji CentOS, włączeniu usługi HTTP należy uruchomić pobrany plik instalacyjny RPM: VMware-server-2.0.1-156745.i386.rpm. Po instalacji sprawdzić Details rpm.

  5. Konfiguracja WMWare Serwer
    Uruchomić w konsoli: /usr/bin/vmware-config.pl w celu wykonania pierwszej konfiguracji, na wszystkie pytania odpowiadać domyślnie, zapisać adresy sieciowe ustawione dla
    - NAT (np.: może być: 192.168.33.0),
    - Host-Only (np.: może być 172.16.219.0).
    Podczas instalacji nie może pojawić się komunikat o prośbę podania directory for C headers ...,
    jeżeli taki komunikat się pojawi oznacza to, że vmware chce przebudować składniki systemu i potrzebuje źródeł
    kernela systemu CentOS (przy prawidłowej instalacji nie ma takiego problemu).
    Podczas końcowej części konfiguracji system wyświetli okno startowania procesów
    - Virtual machine monitor
    - Virtual machine communication interface
    - VM communication interface socket family
    - Virtual Ethernet
    - Bridget networking on /dev/vmnet0
    - Host-only networking on /dev/vmnet1 (background)
    - DHCP server on /dev/vmnet1
    - Host-only networking on /dev/vmnet8 (background)
    - DHCP server on /dev/vmnet8
    - NAT service on /dev/vmnet8
    - VMware server Authentication Daemon (background)
    - Shared memory Available
    - VMware Server Host Agent (background)
    - VMware Virtual Infrastrukture Web Access
    - Virtual machines.
    Uruchomienie wszystkich procesów musi mieć status OK.

  6. Pierwsze uruchomienie konsoli zarządzania VMWare Serwer
    Po ustawieniu konfiguracji należy wywołać z konsoli vmware wpisując polecenie:
    [root@localhost ~]# vmware
    System otworzy przegladarkę firefox i bedzie próbował uruchomić na porcie 8333 środowisko VMWare:
    https://127.0.0.1:8333
    należy dodac wyjątek uruchamianej usługi HTTPS: z kluczem wygenerowanym przez środowisko VMware.

  7. Wykaz ktalogów VMWare Serwer
    Wykaz katalogów użytych przez VMWare:
    - virtual machines files: /var/lib/vmware/Virtual Machines
    - VIX API binary files: /usr/bin
    - VIX Api library files: /usr/lib/vmware-vix/lib

  8. Informacje dodatkowe
    W katalogu Virtual machines dla każdego nowego systemu zakładane będą podkatalogi z nazwą systemu wpisanego podczas zakładania virtualnej maszyny.
    W oknie dla nowego systemu należy zainstalować plugin dla przeglądarki Firefox.
    W przypadku wystąpienia błędów podczas uruchamiania firefox'a dokonać jego deinstalacji i zainstalować ponownie korzystając Menedźera pakietów i opcji znajdź (wpisac słowo kluczeowe firefox).

7. MPlayer + kodeki.
  1. Dodanie repozytorium Rpmforge
    W pierwszym kroku należy dodać repozytorium Rpmforge poleceniem:
    rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

  2. Dodanie repozytorium Macromedia
    W drugim kroku należy dodać repozytorium Macromedia wykonując polecenie:
    rpm -Uhv http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm

  3. Instalacja aplikacji multimedialnych
    Po instalacji repozytorium Rpmforge oraz Macromedia należy zainstalować aplikacje multimedialnych wykonując polecenia:
    yum -y install libdvdcss libdvdread libdvdplay libdvdnav lsdvd mplayerplug-in mplayer mplayer-gui compat-libstdc++-33 flash-plugin gstreamer-plugins-bad gstreamer-plugins-ugly

  4. Instalacja kodeków
    W kolejnym kroku należy zainstalować kodeki: w32codecs - wykonujemy w tym celu polecenia:
    wget www1.mplayerhq.hu/MPlayer/releases/codecs/mplayer-codecs-20061022-1.i386.rpm ; rpm -ivh mplayer-codecs-20061022-1.i386.rpm
    oraz
    wget www1.mplayerhq.hu/MPlayer/releases/codecs/mplayer-codecs-extra-20061022-1.i386.rpm; rpm -ivh mplayer-codecs-extra-20061022-1.i386.rpm
    I to powinno wystarczyć aby odtwarzać najbardziej popularne formaty plików.

    Kodeki można pobrać również ze strony: http://www.mplayerhq.hu/MPlayer/releases/codecs/

    Szukamy:
    mplayer-codecs-20061022-1.i386.rpm
    mplayer-codecs-extra-20061022-1.i386.rpm

  5. Instalacja aplikacji do odtwarzania plików RMVB
    Aplikacje do odtwarzania plików rmvb (Real Player i Helix Player) można pobrać ze strony: https://player.helixcommunity.org/2004/downloads/

    Szukamy:
    realplayer-10.0.4.750-20050401.i586.rpm
    helixplayer-1.0.4.752-20050401.i586.rpm

8. Midnight Commander.

W internecie należy wyszukać: mc-4.6.1a-35.el5.i386.rpm

9. Thunderbird.

W celu zainstalowania aplikacji należy przejrzeć dostępne repozytoria na stronie: rpm.pbone.net

10. Komunikator GaJIM.

W oknie terminala uruchamiamy polecenie:
yum install gajim

11. Komunikator Kopete.

Instalowany standardowo przez instalatora.

12. GCC.

W oknie terminala uruchamiamy polecenia:
rpm -q gcc
yum install gcc


13. SAMBA.
  1. Instalacja / dodanie usługi

    Wybieramy z menu: Aplikacje -> Dodaj/Usuń oprogramowanie. W oknie programu Menedżera pakietów wybieramy drugą zakładkę: Znajdź. Wyszukujemy słowa samba, z listy znalezionych pakietów zaznaczamy: Samba-3.0.33-3.29.el5_6.2.i386 - Serwer SMB Samba i wykonujemy zastosuj. System autoamtycznie rozwiąże zalezności, pobierze i zainstaluje pakiety.

  2. Plik konfiguracyjny Samby

    Konfiguracja samby zawarta jest w pliku /etc/samba/smb.conf.

  3. Zabezpieczenia na poziomie udziału (security = share)

    1. Udostępnienie katalogu tylko do odczytu użytkownikowi anonimowemu (czyli każdemu):
      Edytujemy plik /etc/samba/smb.conf i w sekcji [global] wprowadzamy następujące zmiany:
      - wprowadzamy znak ; przed wierszami:
      ; security = user
      ; passdb backend = tdbsam
      i dodajemy kontrolę dostępu na poziomie udziału:
      encrypt passwords = yes
      smb passwd file = /etc/samba/smbpasswd
      security = share
      Dodajemy na końcu nową sekcję na przykład [dane]:
      [dane]
      path = /home/user/samba
      guest ok = yes
      map to guest = Bad User
      i ustawiamy do katalogu określonego scieżką path uprawnienia na przykład poleceniem:
      chmod -R 777 /home/user/samba
      gdzie słowo user jest nazwą użytkownika.
      Nadane w tym momencie uprawnienia 777 nie uprawniają użytkownika do zapisu/modyfikacji zawartości katalogu podłączonego sieciowo.
      Wykonujemy restart samby poleceniem service smb restart

    2. Udostępnienie katalogu do odczytu i zapisu użytkownikowi anonimowemu (czyli każdemu):
      Edytujemy plik /etc/samba/smb.conf i w sekcji [global] wprowadzamy następujące zmiany:
      - wprowadzamy znak ; przed wierszami:
      ; security = user
      ; passdb backend = tdbsam
      i dodajemy kontrolę dostępu na poziomie udziału:
      encrypt passwords = yes
      smb passwd file = /etc/samba/smbpasswd
      security = share
      Dodajemy na końcu nową sekcję na przykład [dane]:
      [dane]
      path = /home/user/samba
      guest ok = yes
      map to guest = Bad User
      write ok = yes
      i ustawiamy do katalogu okreslonego scieżką path uprawnienia na przykład poleceniem:
      chmod -R 777 /home/user/samba
      gdzie usłowo user jest nazwą użytkownika.
      Nadane w tym momencie uprawnienia 777 nie uprawniają użytkownika do zapisu/modyfikacji zawartości katalogu podłączonego sieciowo.
      Uprawnienia zapisu i odczytu określone sa w sekcji [dane] - wiersz: write ok = yes.
      Wykonujemy restart samby poleceniem service smb restart

    3. Udostępnienie katalogu do odczytu i zapisu wybranym użytkownikom:
      Edytujemy plik /etc/samba/smb.conf i w sekcji [global] wprowadzamy następujące zmiany:
      - wprowadzamy znak ; przed wierszami:
      ; security = user
      ; passdb backend = tdbsam
      i dodajemy kontrolę dostępu na poziomie udziału:
      encrypt passwords = yes
      smb passwd file = /etc/samba/smbpasswd
      security = share
      Dodajemy na końcu nową sekcję na przykład [dane]:
      [dane]
      path = /home/user/samba
      guest ok = no
      write ok = yes
      valid users = user_nazwa user2_nazwa
      Następnie tworzymy użytkownika w systemie i nadajemu hasło dla samby:
      adduser user_nzawa
      smbpasswd -a user_nazwa
      dodanie kończy się zapisem:
      Added user user_nazwa.
      Następnie ustawiamy do katalogu okreslonego scieżką path uprawnienia na przykład poleceniem:
      chmod -R 777 /home/user/samba
      gdzie usłowo user jest nazwą użytkownika.
      Nadane w tym momencie uprawnienia 777 nie uprawniają użytkownika do zapisu/modyfikacji zawartości katalogu podłączonego sieciowo.
      Uprawnienia zapisu i odczytu określone sa w sekcji [dane] - wiersz: write ok = yes.
      Wykonujemy restart samby poleceniem service smb restart

  4. Zabezpieczenia na poziomie użytkownika (security = user)

    Edytujemy plik /etc/samba/smb.conf i w sekcji [global] wprowadzamy następujące zmiany:
    - wprowadzamy znak ; przed wierszami:
    ; security = user
    ; passdb backend = tdbsam
    i dodajemy kontrolę dostępu na poziomie udziału:
    encrypt passwords = yes
    smb passwd file = /etc/samba/smbpasswd
    security = user
    map to guest = Bad User
    Wpis map to guest = Bad User umożliwi bezproblemowy dostęp gościnny do udziałów (warto wpis w tym miejscu zachować w przypadku późniejszej decyzji o zrobieniu takiego udziału). Decyzja oczywiście należy do administratora.

    1. Udostępnienie katalogu tylko do odczytu użytkownikowi anonimowemu (czyli każdemu):
      Edytujemy plik /etc/samba/smb.conf - dodajemy na końcu nową sekcję na przykład [dane]:
      [dane]
      path = /home/user/samba
      guest ok = yes
      i ustawiamy do katalogu okreslonego scieżką path uprawnienia na przykład poleceniem:
      chmod -R 777 /home/user/samba
      gdzie usłowo user jest nazwą użytkownika.
      Wykonujemy restart samby poleceniem service smb restart

    2. Udostępnienie katalogu do odczytu i zapisu użytkownikowi anonimowemu (czyli każdemu):
      Edytujemy plik /etc/samba/smb.conf - dodajemy na końcu nową sekcję na przykład [dane]:
      [dane]
      path = /home/user/samba
      guest ok = yes
      write ok = yes
      i ustawiamy do katalogu okreslonego scieżką path uprawnienia na przykład poleceniem:
      chmod -R 777 /home/user/samba
      gdzie usłowo user jest nazwą użytkownika.
      Wykonujemy restart samby poleceniem service smb restart

    3. Udostępnienie katalogu do odczytu wybranym użytkownikom:
      Edytujemy plik /etc/samba/smb.conf - dodajemy na końcu nową sekcję na przykład [dane]:
      [dane]
      path = /home/user/samba
      guest ok = no
      valid users = user_nazwa user2_nazwa
      i ustawiamy do katalogu okreslonego scieżką path uprawnienia na przykład poleceniem:
      chmod -R 777 /home/user/samba
      gdzie usłowo user jest nazwą użytkownika.
      Wykonujemy restart samby poleceniem service smb restart

    4. Udostępnienie katalogu do odczytu wszystkim użytkownikom a zapis tylko wybranym:
      Edytujemy plik /etc/samba/smb.conf - dodajemy na końcu nową sekcję na przykład [dane]:
      [dane]
      path = /home/user/samba
      guest ok = yes
      write list = user_nazwa user2_nazwa
      i ustawiamy do katalogu okreslonego scieżką path uprawnienia na przykład poleceniem:
      chmod -R 777 /home/user/samba
      gdzie usłowo user jest nazwą użytkownika.
      Wykonujemy restart samby poleceniem service smb restart

  5. Udostępnianie katalogów domowych użytkowników

    Edytujemy plik /etc/samba/smb.conf - dodajemy na końcu nową sekcję: [homes]:
    [homes]
    comment = Katalog Domowy
    browseable = no
    write ok = yes
    valid users = %S
    Zamiast polecenia: valid users = %S można zastosować polecenie: users = %S, które pozwoli wyeliminować sytuację dostępu do katalogów domowych innych użytkowników.
    Wykonujemy restart samby poleceniem service smb restart

    UWAGA !!! W przypadku udostępniania katalogów domowych, należy pamiętać, iż sekcja [homes] może udostepnić katalogi domowe również innnych użytkowników takich jak: root czy bin, sys, itd. W celu wyeliminowania takiej sytuacji należy w sekcji [global] dodać opcję invalid users z listą użytkowników systemowych.

  6. Udostępnienie domyślne

    Edytujemy plik /etc/samba/smb.conf
    - w sekcji [global] dodajemy wpis (nazwę udziału): default service = pomoc
    - dodajemy nową sekcję z udziałem określonym powyżej w sekcji [global}: [pomoc]
    path = /katalog/pomoc
    guest ok = yes
    W przypadku zmian przeprowadzanych w sambie katalog pomoc może okazać się przydatny dla adminsitratora. Może on w nim umieścić plik z informacją o przeprowadzanych aktualizacjach oraz ewentualnych utrudnieniach.

  7. Najbardziej użyteczne opcje Samby

    - map to guest = Bad User - umożliwia bezproblemowy dostęp gościny do udziałów
    - admin users = user - lista użytkowników mających uprzywilijowane uprawnienia root'a do działań na plikach/katalogach
    - hosts allow = 192.168.1.1/nazwa_kompa - lista komputerów mających dostęp do zasobów samby, określamy po adresie IP lub nazwie komputera
    - hosts deny = 192.168.1.1/nazwa_kompa - lista komputerów dla których dostęp do zasobów samby jest zabroniony, określamy po adresie IP lub nazwie komputera
    - browseable = yes/no - określa widoczność udziału na liście przeglądanych udziałów samby w oknie wyszukiwania sieciowego (domyślnie ustawione na Yes), można na przykład ustawić wskazany udział jako ukryty i nie będzie widoczny w liście wyszukiwania (po wpisaniu na przykład całej ścieżki wyszukiwania \\192.168.0.100\kata_ukryty system wyświetli zasób udostępniany przez Sambę, trzeba tylko znać nazwę udostępnianego katalogu),
    - force user/group = user/grupa - dostęp do udziału zdefiniowany poprzez wymuszenie użytkownika lub grupy (domyślnie opcja nie jest zdefiniowana),
    - guest ok = yes/no - dostęp anonimowy do zasobu (domyślnie no),
    - guest only = yes/no - wymuszenie podłączania zasobu dla użytkownika anonimowego (domyślnie no),
    - valid/invalid users = user - lista użytkowników mających dostęp lub blokadę do udostępnianych zasobów (domyślnie opcja nie jest zdefiniowana),
    - max connections = wartość liczbowa - umożliwia limitowanie liczby maksymalnych połączeń do udostępnionych zasobów (domyślnie ustawiona wartość 0, która nie wprowadza ograniczeń),
    - read/write list = user/@grupa - lista użytkowników mających dostęp tylko do odczytu lub odczytu i zapisu w udostępnianym udziale samby (domyślnie wartość pusta),
    - writable = yes/no - określa czy dany udostępniony zasób jest udostępniony do zapisu (domyślnie no).

  8. Polskie znaki

    Polskie znaki w sambie - ustawiamy w sekcji [global] w zależności od wersji samby oraz strony kodowej po stronie linuksa i tak:

    - Samba 2.0 i 2.2 oraz strona kodowa w linuksie ISO-8859-2:
    [global]
    character set = ISO8859-2
    client code page = 852

    - Samba 3.0 oraz strona kodowa w linuksie ISO-8859-2:
    [global]
    unix charset = ISO8859-2
    dos charset = CP852

    - Samba 3.0 oraz strona kodowa w linuksie UTF-8:
    [global]
    unix charset = UTF8
    display charset = UTF8
    dos charset = CP852

  9. Moduły Virtual File System (VFS) w Sambie

    Moduły VFS w sambie dostępne są od wersji 2.2. W systemach linuks możliwe jest sprawdzenie ich instalacji poleceniem vfstest, niestety w systemie CentOS polecenie nieoniecznie jest dostępne. Standardowo moduły VFS w linuksie znajdują się w katalogu /usr/lib/samba/vfs, poniżej zawartość katalogu:
    - audit.so
    - cap.so
    - defaullt_quota.so
    - expand_msdfs.so
    - extd_audit.so
    - fake_perms.so
    - full_audit.so
    - netatalk.so
    - readahead.so
    - readonly.so
    - recycle.so
    - shadow_copy.so
    Uruchomienie danego modułu VFS odbywa się poprzez dodanie stosownego wpisu w sekcji samego udziału.

    Moduł recycle - dokonanie wpisu powoduje uruchomienie działania kosza w systemie samby. Brak wpisu modułu recycle powoduje faktyczne usuwanie (bez kosza) plików z zasobów samby, uruchomienie skutkuje usuwaniem plików z zasobów samby najpierw do wskazanego kosza. Poniżej kilka linii poleceń modułu recycle:
    - vfs objects = recycle - włączenie Kosza
    - recycle:repository = .KOSZ - relatywna ścieżka do katalogu Kosz
    - recycle:keeptree = True - zachowanie struktury usuniętych plików i katalogów
    - recycle:versions = True - dostępność usuniętych danych
    - recycle:touch = True - zachowanie różnych wersji usuniętych katalogów
    - recycle:exclude = *.tmp|*.o|*.obj|~$*|*.ba0 - pliki które będą usuwane z pominięciem Kosza
    - recycle:exclude_dir = /tmp|/temp|/cache - katalogi które będą usuwane z pominięciem Kosza
    - recycle:directory_mode (np. = 0700) - ustawienie maski uprawnień dla katalogu Kosza
    - recycle:subdir_mode (np. = 0700) - ustawienie maski uprawnień dla podkatalogów Kosza
    - recycle:touch_mtime (=yes|no) - ustawienie czasu modyfikacji plików gdy będa one trafiały do Kosza
    - recycle:minsize - określenie minimalnej wielkości pliku w bajtach poniżej której będą usuwane z pominięciem Kosza
    - recycle:maxsize - określenie maksymalnej wielkości pliku w bajtach powyżej której będą usuwane z pominięciem Kosza
    - recycle:noversions - lista plików (można używać masek * i ?) w stosunku do których nie będzie używana opcja "recycle:versions" czyli zachowanie różnych wersji.
    Włączenie logowania zdarzeń modułu recycle dla wszystkich udostępnień wykonuje się w sekcji [global] poprzez dodanie wpsiu:
    [global]
    vfs objects = recycle
    recycle:facility = LOCAL1
    recycle:priority = NOTICE

    Moduł netatalk - moduł pozwalający wykluczyć problem obsługi plików oraz wyświetlania w przypadku korzystania z zasobów samby z systemów Apple, gdzie występuje zasada obsługi plików .AppleDouble (pliki maja postać "._" + nazwa oryginalnego pliku). Użycie modułu powoduje ich ukrcyie:
    vfs objects = netatalk

    Moduł default_quota - zadaniem modułu jest zmiana standardowego przydziału dyskowego (wielkości przestrzni dyskowej do wykorzystania przez użytkownika). Uruchmienie pozwoli kontrolować ilość wykorzystywanego miejsca przydzielowgo użytkownikom w zasobach samby:
    - vfs objects = defualt_quota - włączenie defualt_quota
    - default_quota:uid = 12345 - użycie quoty użytkownika z UID 12345
    - default_quota:uid nolimit = no - wyłączenie braku limitu dla owego użytkownika

    Moduł readonly - pozwala ustawić cykliczne włączenie udostępnionych zasobów tylko do odczytu. Funkcja może się przydać w przypadku konieczności na przykład codziennego wykonania kopii zawartości udziału. Włączenie opcji przedstawia się następująco:
    - vfs objects = readonly - włączenie modułu
    - readonly:period = "today 03:00","today 04:00" - ustawienie zasobu tylko do doczytu w określonym przedziale czasowym

    Moduł shadow_copy - umożliwia właczenie w sambie wykonywanie kopii volumenów w tle (odpowiednik tzw. VSS - Volume Snapshot Service). Uruchomienie opcji wymaga zainstalowanego w systemie linuks systemu plików umożliwiającego wykonanie tzw. zamrażania (na przykład: XFS), system plików winien być zaisntalowany wewenątrz systemu LVM, który wykonuje tzw. migawki. Można również skorzystać z innych systemów plików mających wbudowaną obsługę migawek, jak na przykład: NTFS (dla Windows), ZFS (Mac OS X 10.5, FreeBSD 7.0, Solaris), etx3now (rozbudowany i niekompatybilny z ext3 dla systemów linuks). Istnieje również mozliwość zainstalowania innego systemu plików wewnątrz LVM, jak chociażby ext3, jednakże w celu wykonania migawki (snapshot'u) należy system plików przemontować w tryb tylko do odczytu (przykładowe polecenie: mount -o remount,ro).

    Moduł vscan - moduł slużący do ochrony antywirusowej. Nie jest on standardowo nstalowany z dystrybucją Samby. Można pobrać z internetu źródla i wykonać instalację modułu w zainstalowanym już środowisku Samby.

14. Sendmail.
  1. Instalacja pakietu sendmail-cf
    Po instalacji systemu należy zainstalować dodatkowo pakiet sendmail-cf, w tym celu wykonujemy polecenie:
    yum install sendmail-cf
    System doinstaluje potrzebne składniki do wykonania polecenia make w katalogu /etc/mail po zmianie konfiguracji w plikach *.mc.

  2. Konfiguracja sendmail'a:
    W pierwszej kolejności należy wykonać kopie oryginalnych plików *.mc oraz *.cf do innego folderu.

    Konfiguracja sendmail'a polega na zmianach dokonywanych w plikach *.mc (sendmail.mc) zwanych master config znajdujących się w katalogu /etc/mail. Wyłączanie opcji w plikach odbywa się poprzez dodanie na początku wiersza znaków dnl (standarodowo komentarze dodaje się poprzez zastosowania znaku #, w konfiguracji sendmail'a jest to słowo dnl).

    Edytujemy plik sendmail.mc:
    1. Nasłuch sendmail
      Zmieniamy nasłuch sendmail tak aby działał w obrębie sieci (na wszystkich interfejsach) a nie klasy adresowej localhost (127.0.0.1):
      - szukamy wiersz DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA') i dodajemy na początku komentarz dnl,
      - wykonujemy restart poleceniem: service sendmail restart
      - sprawdzamy nasłuch poleceniem: netstat -atn | grep 25
      system powinien wyświetlić:
      tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN
      Zapis 0.0.0.0:25 oznacza, że nasz serwer nasłuchuje na porcie 25 na wszystkich interfejsach.

    2. Odbiór poczty - przekazywanie bez autentykacji (Relay)
      Konfigurujemy serwer aby mógł odbierać pocztę skierowaną do niego oraz przekazywać bez autentykacji (RELAY):
      - edytujemy plik access i dodajemy do niego wpis:
      serwer.poczty.pl OK
      gdzie serwer.poczty.pl jest nazwą naszego serwera (mozna również dodać adres ip serwera na interfejsie na którym będzie odbierana poczta.
      Przykładowe wpisy w pliku access:
      Connect:localhost.localdomain RELAY
      Connect:localhost RELAY
      Connect:127.0.0.1 RELAY
      Connect:serwer.poczty.pl OK
      gdzie RELAY oznacza zezwolenie na przekazywanioe poczty.
      - edytujemy plik local-host-names i dodajemy do niego wszystkie nazwy identyfikujące system, przykładowa zawartość:
      localhost.localdomain
      serwer.poczty.pl
      poczty.pl

    3. Nazwa sendmail
      Ustawienie sendmail'a tak aby przedstawiał się nazwą internetową (w naszym przypadku serwer.poczty.pl - nazwa oczywiście jest przykładowa i musi być zarejestrowana na serwerach DNS)
      - edytujemy plik sendmail.mc i dopisujemy wiersz:
      define(`confDOMAIN_NAME',`serwer.poczty.pl')dnl

    4. ISP - przekierowanie poczty
      ISP - konfiguracja na jaki serwer ma trafiać poczta:
      - w konfiguracji dostawcy domeny (ISP) należy dodać wpisy informujące na jaki serwer ma być kierowana poczta.
      Przykładowy wpis może glądać tak:
      serwer.poczty.pl. MX 10 serwer.poczty.pl.
      serwer.poczty.pl. MX 20 mail.poczty.pl.
      O kolejności dostarczania poczty decyduje wartośc liczby za zwrotem MX, kolejność wybierana jest od najniższej wartości (im niższa wartość tym wyższy priorytet ma dany serwer).

    5. Autentykacja SMTP (bez wykorzystania REALY)
      Autentykacja w SMTP (bez wykorzystanai metody RELAY):
      - edytujemy plik access i zostawiamy tylko wpisy:
      Connect:localhost.localdomain RELAY
      Connect:localhost RELAY
      Connect:127.0.0.1 RELAY
      - edytujemy plik local-host-names i usuwamy wpisy lub dodajemy na początku komentarz (znak #):
      #localhost.localdomain
      #serwer.poczty.pl
      #poczty.pl
      - pobieramy pakiety SASL wykonując polecenie: yum install cyrus-sasl cyrus-sasl-plain cyrus-sasl-md5
      System może zwrócić komunikat:
      Package cyrus-sasl-2.1.22-5.el5_4.3.i386 already installed and latest version
      Package cyrus-sasl-plain-2.1.22-5.el5_4.3.i386 already installed and latest version
      Package cyrus-sasl-md5-2.1.22-5.el5_4.3.i386 already installed and latest version
      Nothing to do
      Co oznacza, że pakiety SASL są zainstalowane w systemie.
      Pakiet cyrus-sasl bezpośrednio po zainstalowaniu jest gotowy do wykorzystania i nie wymaga żadnych dodatkowych prac. Sposób przeprowadzenia autoryzacji zapisany jest w pliku:
      /usr/lib/sasl2/Sendmail.conf
      i może mieć wpis: pwcheck_method:saslauthd
      - poprawiamy konfigurację sendmail.mc wprowadzając wpis:
      define(`confAUTH_OPTIONS', `A p')dnl
      TRUST_AUTH_MECH(`LOGIN PLAIN')dnl
      define(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnl
      define(`confDOMAIN_NAME',`serwer.poczty.pl')dnl
      w ostatnim wierszu nazwę serwera można zamienić adresem IP
      wpisy:
      dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
      dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
      powinny zostać zakomentowane, chyba, że chcemy używac utentykacji poprzez szyfrowanie, które jest bardziej bezpieczne.

15. IMAP/POP3 na dovecot.
  1. Instalacja / uruchomienie
    W celu uruchomienia IMAP należy zainstalować paczkę dovecot. Można to wykonać wywołując polecenie:
    yum install dovecot
    lub poprzez Aplikacje -> Dodaj/usuń oprogramowanie -> druga zakładka "Znajdź" - wpisujemy dovecot i instalujemy.
    Następnie należy uruchomić usługę dovecot poprzez wywołanie setup lub menu usługi spod X-Windowsów.

  2. Konfiguracja
    Plik konfiguracyjny dovecot.conf znajduje się w katalogu /etc - w celu obsługi protokołu POP3 należy go wedytować i dopisać w sekcji protokols:
    protocols = imap imaps pop3 pop3s
    Następnie wykonujemy polecenie service dovecot restart
    oraz polecenie chkconfig dovecot on

16. SENDMAIL + SMTPS.
  1. Opcje konfiguracyjne pliku sendmail.mc

    • W pliku sendmail.mc zmieniamy wpisy (zdejmujemy komentarz dnl):
      define(`confCACERT_PATH',`/etc/mail/certs')dnl
      define(`confCACERT',`/etc/mail/certs/cacert.pem')dnl
      define(`confSERVER_CERT',`/etc/mail/certs/sendmail.pem')dnl
      define(`confSERVER_KEY',`/etc/mail/certs/sendmail.pem')dnl
      define(`confCLIENT_CERT',`/etc/mail/certs/sendmail.pem')dnl
      define(`confCLIENT_KEY',`/etc/mail/certs/sendmail.pem')dnl
      
      oraz:
      DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl
      i wydłużamy czas zestawienia połączenia na 5 minut:
      define(`confTO_CONNECT', `5m')dnl
      
      Po wprowadzeniu zmian w pliku sendmail.mc należy dokonać jego konwersji na plik sendmail.cf. W tym celu należy uruchomić polecenie: m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

    • Inne spotykane ścieżki do plików z certyfikatami:
      # CA directory
      O CACertPath=/usr/share/ssl/certs
      # CA file
      O CACertFile=/usr/share/ssl/certs/ca-bundle.crt
      # Server Cert
      O ServerCertFile=/usr/share/ssl/certs/sendmail.pem
      # Server private key
      O ServerKeyFile=/usr/share/ssl/certs/sendmail.pem
      

  2. Generowanie certyfikatów

    • Pierwszy sposób - należy wykonać polecenia:
      mkdir /etc/mail/certs
      cd /etc/mail/certs
      openssl req -new -x509 -keyout cakey.pem -out cacert.pem -days 365
      openssl req -nodes -new -x509 -keyout sendmail.pem -out sendmail.pem -days 365
      chmod 600 sendmail.pem
      openssl x509 -noout -text -in sendmail.pem

    • Drugi sposób - według ustawień w pliku Makefile - wykonać należy polecenia:
      cd /usr/share/ssl/certs
      należy skasować plik sendmail.pem i wykonać
      make sendmail.pem

      Ważność certyfikatu sendmail.pem należy okreslić w pliku Makefile. Podczas generowania certyfikatu konieczne będzie uzupełnienie:
      Country Name:
      State or Province NAme (full name):
      Locality Name (eg, city) [Default City]:
      Organization Name (eg, company) [My Company Ltd]:
      Organization Unit Name (eg, section) []:
      Common NAme (eg, your name or your server's hostname) []:
      Email Address []:
      
      oraz podanie hasła od 4 do 8191 znaków
      Enter pass phrase for ca-bundle.key:
      

      oraz polecenia:
      cd /usr/share/ssl/certs
      skasować plik ca-bundle.crt oraz ca-bundle.key
      make ca-bundle.crt

      Wykonujemy restart: service sendmail restart

17. DOVECOT + POP3S.
  1. Opcje konfiguracyjne pliku dovecot
    Ścieżki certyfikatów dla demona Dovecot znajdują się w /etc/dovecot/conf.d/10-ssl.conf
    ssl_cert = /etc/pki/dovecot/certs/dovecot.pem
    ssl_key = /etc/pki/dovecot/private/dovecot.pem
    
    lub w pliku /etc/dovecot
    ssl_cert_file =/etc/pki/dovecot/certs/dovecot.pem
    ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
    

  2. Generowanie certyfikatów
    Generowanie certyfikatów dla demona dovecot wykonujemy wywołując poniższe polecenia
    openssl genrsa -out key.pem 2048
    openssl req -new -key key.pem -out csr.pem
    openssl req -x509 -days 365 -key key.pem -in csr.pem -out certificate.pem

    Podczas generowania certyfikatów system poprosi o uzupełnienie poniższych danych:
    Nazwa pospolita (CN):
    Organizacja (O):
    Jednostka organizacyjna (OU):
    Country:
    State or Province Name (full name) [Berkshire]:
    Locality Name (eg, city) [Default City]:
    Organization Name (eg, company) [My Company Ltd]:
    Organization Unit Name (eg, section) []:
    Common Name (eg, your name or your server's hostname) []:
    Email Address []:
    A chelenge password []:
    An optional Company Name[]:
    

    Plik key.pem kopiujemy do katalogu:
    /etc/pki/dovecot/private
    zmieniając nazwę na dovecot.pem

    Plik certificate.pem kopiujemy do katalogu:
    /etc/pki/dovecot/certs
    zmieniając nazwę na dovecot.pem

    W pliku /etc/dovecot włączamy ścieżki:
    ssl_cert_file =/etc/pki/dovecot/certs/dovecot.pem
    ssl_key_file = /etc/pki/dovecot/private/dovecot.pem

    Wykonujemy restart: service dovecot restart


18. Dodawanie użytkownika oraz plik Aliases (e-mail).
  1. Dodawanie/usuwanie użytkownika sprowadza się do wykonania poniższych poleceń:
    • dodawanie: useradd nazwa -g 100
    • usuwanie: userdel nazwa

  2. Plik Aliases (e-mail):
    W pliku /etc/aliases należy dodać alias dla użytkownika podając adres e-mail oraz nazwę użytkownika

19. Blokada bezpośredniego logowania na konto root-a.
W pliku konfiguracyjnym od ssh /etc/ssh/sshd_config ustawiamy wartość na nie (no): PermitRootLogin no
Wykomnujemy restart demona SSH poleceniem: service sshd restart

20. Logowanie na root'a tylko przez wybranych userów (polecenie su).
W celu umożliwienia logowania się na konto root poprzez użycie polecenia su tylko wybranym użytkownikom należy wykonać poniższe czynności:
  1. Edycja pliku /etc/pam.d/su
    W pliku /etc/pam.d/su należy od-haszować linie:
    auth required pam_wheel.so

  2. Utworzenie grupy roboczej wheel
    W kolejnym kroku należy utworzyć grupę roboczą wheel:
    groupadd wheel

  3. plik /etc/group
    Ostatnią czynnością jest edycja pliku /etc/group i dodanie linii z wheel wraz z określeniem nazw użytkowników, którym zezwolone zostanie logowanie na konto roota za pomocą polecenia su. Przykłądowy wiersz z uzytkownikami user1 user2 user3 poniżej
    wheel:x:101:user1,user2,user3

21. Pakowanie / wypakowanie plików / katalogów.
  1. tar / gtar
    • pakowanie:
      tar cvzf etc.tar /etc - spakuje w katalogu bieżącym cały katalog wraz z podkatalogami (nie podajemy znaku / na końcu)
      tar cvzf archiwum.tar plik1 plik2 plik3 - spakuje w katalogu bieżącym podane pliki od 1 do 3 tworząc plik wynikowy archiwum.tar
      gtar cvzf etc.tar.gz /etc - spakuje w katalogu bieżącym cały katalog wraz z podkatalogami (nie podajemy znaku / na końcu)
      gtar cvzf archiwum.tar.gz plik1 plik2 plik3 - spakuje w katalogu bieżącym podane pliki od 1 do 3 tworząc plik wynikowy archiwum.tar.gz

    • wypakowanie:
      tar xvzf etc.tar - wypakuje w katalogu bieżącym archiwum znajdujące się w pliku etc.tar
      gtar xvzf etc.tar.gz - wypakuje w katalogu bieżącym archiwum znajdujące się w pliku etc.tar.gz

  2. 7za
    - pakowanie: 7za a -t7z -mx3 -pHaslo archiwum.zip plik1 plik2 plik3 - spakuje na hasło w katalogu bieżącym podane pliki od 1 do 3 tworząc plik wynikowy archiwum.zip