User Tools

Site Tools


strutture:lnf:dr:calcolo:sistemi:scientific_linux_7_template

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
strutture:lnf:dr:calcolo:sistemi:scientific_linux_7_template [2018/02/13 10:48] – [Tivoli Storage Manager e configurazione backup] dmaselli@infn.itstrutture:lnf:dr:calcolo:sistemi:scientific_linux_7_template [2019/04/16 09:23] (current) – [Data e ora (solo VM oVirt)] dmaselli@infn.it
Line 1: Line 1:
 +===== ScientificLinux/CentOS 7 Template =====
  
 +===== Impostare proxy per YUM =====
 +
 +  echo 'proxy=http://squid.lnf.infn.it:3128/' >> /etc/yum.conf
 +  
 +  
 +==== Installazioni e aggiornamenti ====
 +
 +Aggiungiamo i repository **EPEL**:
 +
 +<code>
 +yum install epel-release
 +</code>
 +
 +Installiamo i seguenti pacchetti:
 +
 +<code>
 +yum install deltarpm bash-completion yum-utils
 +</code>
 +
 +Aggiorniamo i pacchetti installati
 +
 +<code>
 +yum update
 +</code>
 +
 +Disabilitiamo ''kdump''
 +
 +<code>
 +systemctl disable kdump.service
 +</code>
 +
 +===== Impostare Version lock YUM (Solo SL)=====
 +  yum remove yum-conf-sl7x
 +  rpm -q --queryformat='%{VERSION}' sl-release > /etc/yum/vars/slreleasever
 +
 +
 +==== Installare xAuth per il forward di X11 via SSH ==== 
 +
 +  yum install xorg-x11-xauth
 +
 +
 +==== Abilitare verbose boot  ====
 +  
 +  sed -i 's/rhgb\|quiet//g' /etc/default/grub
 +  sed -i 's/rhgb\|quiet//g' /boot/grub2/grub.cfg
 +
 +==== Sostituzione del Volume Group name (solo SL) ====
 +
 +Modifichiamo il nome del volume group assegnato automaticamente con **vglocal**
 +<code>vgrename [automatic_name] vglocal</code>
 +
 +Sostituiamo tutte le occorrenze di **[automatic_name]** con **vglocal** nei seguenti file:
 +<code>
 +for f in /etc/grub2.cfg /etc/fstab /etc/default/grub /boot/grub2/grub.cfg; do sed -ri 's/centos_dhcp--?lnf/vglocal/g' $f ; done
 +</code>
 +
 +
 +Quindi riavviamo la macchina.
 +
 +
 +==== Data e ora ====
 +
 +Installare il servizio NTP:
 +  yum install ntp
 +  
 +Controllare che in ''/etc/ntp.conf'' siano presenti i server LNF:
 +  server ntp1.lnf.infn.it iburst
 +  server ntp2.lnf.infn.it iburst
 +  server ntp3.lnf.infn.it iburst
 +  
 +Abilitare la sincronizzazione:
 +  timedatectl set-ntp true
 +==== Mail ====
 +
 +Installiamo il pacchetto ''mailx'' per poter utilizzare il comando **mail** da linea di comando
 +<code>yum install mailx</code>
 +
 +Modifichiamo il file main.cf di postfix (''vi /etc/postfix/main.cf'') impostando:
 +<code>
 +inet_interfaces = all
 +relayhost = [smtp.lnf.infn.it]
 +mydomain = lnf.infn.it
 +</code> 
 +
 +==== Kerberos ====
 +
 +Installiamo i pacchetti per il client Kerberos
 +
 +<code>yum install krb5-workstation krb5-libs krb5-auth-dialog</code>
 +
 +Editiamo il file di configurazione ''/etc/krb5.conf'' per impostare i realm, LNF.INFN.IT K5 come realm di default, il dominio del realm e alcuni valori di default utilizzati dagli applicativi di Kerberos 5.
 +
 +<code>
 +[libdefaults]
 +        default_realm = LNF.INFN.IT
 +
 +[domain_realm]
 +        .lnf.infn.it = LNF.INFN.IT
 +        lnf.infn.it  = LNF.INFN.IT
 +
 +[realms]
 +        LNF.INFN.IT = {
 +                kdc = kdc5s3.lnf.infn.it:88
 +                kdc = kdc5s2.lnf.infn.it:88
 +                kdc = kdc5s1.lnf.infn.it:88
 +                kdc = kdc5s0.lnf.infn.it:88
 +                kdc = kdc5p.lnf.infn.it:88
 +                admin_server = kdc5p.lnf.infn.it:749
 +                default_domain = lnf.infn.it
 +        }
 +        INFN.IT = {
 +                kdc = k5.infn.it:88
 +                kdc = afscnaf.infn.it:88
 +                kdc = afsrm1.roma1.infn.it:88
 +                kdc = afsna.na.infn.it:88
 +                admin_server = k5.infn.it:749
 +                default_domain = infn.it
 +        }
 +
 +[appdefaults]
 +
 +        aklog_homedir = true
 +
 +        pam-afs-session = {
 +            minimum_uid = 1000
 +            ignore_root = true
 +                debug = true
 +        }
 +
 +        pam = {
 +                minimum_uid = 1000
 +                ticket_lifetime = 259200 # 86400
 +                renew_lifetime = 604800
 +                forwardable = true
 +                krb4_convert = false
 +                ccache_dir = /tmp
 +                tokens = true
 +                krb4_convert_524 = false
 +                krb4_use_as_req = false
 +                #afs_cells = lnf.infn.it=afs@LNF.INFN.IT
 +                afs_cells = lnf.infn.it=afs/lnf.infn.it@LNF.INFN.IT
 +                #existing_ticket = true
 +                validate = true
 +                #validate = false
 +                keytab = FILE:/etc/krb5.keytab
 +                debug = false
 +                #debug = true
 +        }
 +</code>
 +
 +==== OpenAFS (Solo SL) ====
 +
 +Installiamo i pacchetti
 +
 +<code>yum install openafs-1.6-sl-client openafs-1.6-sl-krb5 net-tools</code>
 +
 +Modifichiamo il file ''CellAlias'' in ''/usr/vice/etc/'' inserendo
 +<code>lnf.infn.it lnf</code>
 +
 +e il file ''ThisCell'' sempre in ''/usr/vice/etc/'' inserendo
 +<code>lnf.infn.it</code>
 +
 +==== Abilitare gli aggiornamenti automatici di sicurezza (Solo SL) ====
 +
 +Modifichiamo il file yum-cron.conf (''vi /etc/yum/yum-cron.conf'') inserendo
 +
 +<code>
 +update_cmd = minimal-security
 +</code> 
 +
 +==== Disabilitare SELinux ====
 +
 +Per disabilitare SELinux modifichiamo il file di configurazione ''/etc/sysconfig/selinux'' impostando il valore ''disabled'' alla voce ''SELINUX''
 +
 +<code>SELINUX=disabled</code>
 +
 +Dopo aver salvato il file è necessario il reboot del sistema per rendere le modifiche effettive.
 +==== Networking ====
 +
 +Disabilitare Network Manager:
 +  systemctl stop NetworkManager
 +  systemctl disable NetworkManager
 +  cat > /etc/resolv.conf <<EOT
 +  search lnf.infn.it
 +  nameserver 193.206.84.12
 +  nameserver 193.206.84.112
 +  nameserver 193.206.84.212
 +  EOT
 +
 +Togliamo tutti i riferimenti a ipv6 in ''/etc/sysconfig/network-scripts/ifcfg-*''.
 +
 +Inoltre togliamo tutti i riferimenti univoci alle interfacce.
 +
 +Modifichiamo le seguenti voci nel file ''/etc/sysctl.conf'':
 +<code>
 +net.ipv6.conf.all.disable_ipv6 = 1
 +net.ipv6.conf.default.disable_ipv6 = 1
 +</code>
 +
 +Rendiamo effettive le modifiche eseguendo il comando:
 +
 +<code>sysctl -p</code>
 +
 +Modifichiamo la voce ''AddressFamily'' nel file ''/etc/ssh/sshd_config'' sostituendo ''any'' con ''inet''
 +
 +<code>AddressFamily inet</code>
 +
 +Quindi riavviamo ''ssh''.
 +
 +<code>
 +systemctl restart sshd
 +systemctl status sshd
 +</code>
 +
 +Infine modifichiamo la voce ''inet_interfaces'' in ''/etc/postfix/main.cf'' nel modo seguente:
 +
 +<code>
 +inet_interfaces = 127.0.0.1
 +</code>
 +==== oVirt agent ====
 +
 +Installiamo il pacchetto relativo ai guest agent di oVirt  
 +
 +<code>yum install ovirt-guest-agent</code>
 +
 +Eseguiamo i seguenti comandi per avviare il servizio e abilitarlo al boot:
 +
 +<code>
 +systemctl enable ovirt-guest-agent.service
 +systemctl start ovirt-guest-agent.service
 +</code>
 +
 +==== VMWare agent ====
 +
 +Installiamo il pacchetto relativo ai guest agent di VMWare  
 +
 +<code>yum install open-vm-tools</code>
 +
 +Eseguiamo i seguenti comandi per avviare il servizio e abilitarlo al boot:
 +
 +<code>
 +systemctl enable vmtoolsd
 +systemctl start vmtoolsd
 +</code>
 +
 +=== Disabilitare LRO sulle interfacce virtuali ===
 +
 +https://kb.vmware.com/s/article/1027511
 +
 +inserire in /etc/rc.local:
 +  echo 'for if in `cat /proc/net/dev | grep : | grep -v lo | sed s/:.*// `; do ethtool -K $if lro off gro off; done' >> /etc/rc.d/rc.local
 +  chmod +x /etc/rc.d/rc.local
 +==== Disabilitare firewalld e abilitare iptables ====
 +
 +Per disabilitare ''firewalld'' eseguiamo
 +
 +<code>
 +systemctl stop firewalld 
 +systemctl disable firewalld 
 +</code>
 +
 +''mask'' previene l’avvio del servizio sia in automatico che manuale creando un link simbolico da ''/etc/systemd/system/firewalld.service'' a ''/dev/null''.
 +
 +Installiamo quindi il pacchetto ''iptables-services''
 +
 +<code>yum install iptables-services</code>
 +
 +Abilitiamo ''iptables'' al boot
 +
 +<code>systemctl enable iptables</code>
 +
 +Cancelliamo il contenuto del file ''/etc/sysconfig/iptables'' contenente le regole create di default 
 +
 +<code>cat /dev/null > /etc/sysconfig/iptables</code>
 +
 +Infine avviamo il servizio e verifichiamo lo stato
 +
 +<code>
 +systemctl start iptables
 +systemctl status iptables
 +</code>
 +==== check-mk agent ====
 +
 +Installiamo il pacchetto ''xinetd''
 +
 +<code>yum install xinetd</code>
 +
 +Scarichiamo la versione corretta di check_mk_agent e il relativo file di configurazione di xinetd
 +<code>
 +curl http://www.lnf.infn.it/computing/check_mk/check_mk_agent.linux-1.2.6p12 > /usr/bin/check_mk_agent
 +curl http://www.lnf.infn.it/computing/check_mk/check_mk_agent.xinetd > /etc/xinetd.d/check-mk-agent
 +chmod +x /usr/bin/check_mk_agent
 +</code>
 +
 +Abilitiamo l'avvio al boot di ''xinetd'' e avviamo il servizio
 +
 +<code>
 +systemctl enable xinetd
 +systemctl start xinetd
 +systemctl status xinetd
 +</code>
 +
 +==== Log rate limit ====
 +
 +aggiungere a /etc/systemd/journald.conf:
 +
 +  RateLimitInterval=0
 +  RateLimitBurst=0
 +
 +
 +==== Custom script ====
 +
 +Creiamo la directory ''/usr/custom/scripts''
 +
 +<code>mkdir -p /usr/custom/scripts</code>
 +
 +Copiamo nella directory appena create gli script:
 +
 +  * z-send.warnings
 +  * summarize
 +
 +<code>scp slcalc:/usr/custom/scripts/* /usr/custom/scripts/</code>
 +
 +
 +==== Log alert script ====
 +
 +Modifichiamo il file ''/etc/rsyslog.conf'' inserendo 
 +
 +<code>
 +local6.*                                                /var/log/dsmcschedule.log
 +
 +# Custom hourly warning mail
 +*.warning                                               /var/log/unsent.warnings
 +
 +# Send all logs to logsrv.lnf.infn.it
 +*.*                                                     @logsrvdata.lnf.infn.it
 +</code>
 +
 +
 +Creiamo il file ''unset.warnings'' in ''/var/log/''
 +
 +<code>touch /var/log/unsent.warnings</code>
 +
 +Creiamo un link simbolico dallo script ''z-send.warnings'' a ''/etc/cron.hourly/''
 +
 +<code>ln -s /usr/custom/scripts/z-send.warnings /etc/cron.hourly/</code>
 +
 +Infine riavviamo il servizio ''rsyslog''
 +
 +<code>
 +systemctl restart rsyslog
 +systemctl status rsyslog
 +</code>
 +==== Tivoli Storage Manager e configurazione backup ====
 +
 +Scarichiamo la versione client di Tivoli Storage Manager
 +
 +<code>curl -O ftp://ftp.boulder.ibm.com/storage/tivoli-storage-management/patches/client/v6r4/Linux/LinuxX86/BA/v643/6.4.3.4-TIV-TSMBAC-LinuxX86.tar</code>
 +
 +Estraiamo il contenuto: 
 +
 +<code>tar -xf 6.4.3.4-TIV-TSMBAC-LinuxX86.tar</code>
 +
 +Lanciamo l'installazione:
 +
 +<code>yum localinstall TIVsm-API64.x86_64.rpm TIVsm-BA.x86_64.rpm gskcrypt64-8.0.14.53.linux.x86_64.rpm gskssl64-8.0.14.53.linux.x86_64.rpm</code>
 +
 +Modifichiamo il file ''/opt/tivoli/tsm/client/ba/bin/dsm.sys'' con il seguente contenuto:
 +
 +<code bash>
 +cat > /opt/tivoli/tsm/client/ba/bin/dsm.sys <<EOT
 +************************************************************************
 +* Tivoli Storage Manager                                               *
 +*                                                                      *
 +* Sample Client System Options file for UNIX (dsm.sys.smp)             *
 +************************************************************************
 +
 +*  This file contains the minimum options required to get started
 +*  using TSM.  Copy dsm.sys.smp to dsm.sys.  In the dsm.sys file,
 +*  enter the appropriate values for each option listed below and
 +*  remove the leading asterisk (*) for each one.
 +
 +*  If your client node communicates with multiple TSM servers, be
 +*  sure to add a stanza, beginning with the SERVERNAME option, for
 +*  each additional server.
 +
 +************************************************************************
 +
 +servername  tsm01
 +    commmethod         tcpip
 +    tcpport            1500
 +    tcpserveraddress   tsm01.lnf.infn.it
 +    Inclexcl           /opt/tivoli/tsm/client/ba/bin/inclexcl.file
 +    passwordaccess     generate
 +    passworddir        /etc/security/tsm01
 +    nodename           __NODENAME__
 +    users              root
 +    schedlogname       /var/log/dsmcschedule.log
 +
 +EOT
 +
 +cat > /opt/tivoli/tsm/client/ba/bin/dsm.opt <<EOT
 +************************************************************************
 +* Tivoli Storage Manager                                               *
 +*                                                                      *
 +* Sample Client User Options file for UNIX (dsm.opt.smp)               *
 +************************************************************************
 +
 +*  This file contains an option you can use to specify the TSM
 +*  server to contact if more than one is defined in your client
 +*  system options file (dsm.sys).  Copy dsm.opt.smp to dsm.opt.
 +*  If you enter a server name for the option below, remove the
 +*  leading asterisk (*).
 +
 +************************************************************************
 +
 +* SErvername       A server name defined in the dsm.sys file
 +servername tsm01
 +compressalways no
 +
 +EOT
 +
 +touch /opt/tivoli/tsm/client/ba/bin/inclexcl.file
 +
 +
 +cat > /usr/lib/systemd/system/tsmscheduler.service <<EOT
 +[Unit]
 +Description=Tivoli Storage Manager Client Scheduler
 +After=network.target
 +
 +[Service]
 +Type=simple
 +ExecStart=/opt/tivoli/tsm/client/ba/bin/dsmc schedule
 +StandardOutput=syslog
 +SyslogFacility=local6
 +SyslogLevel=debug
 +StandardError=journal
 +KillMode=process
 +Restart=always
 +
 +[Install]
 +WantedBy=multi-user.target''
 +EOT
 +
 +</code>
 +==== Templatize script ====
 +
 +Configurati tutti i servizi precedenti è necessario eseguire il seguente script per ripulire la macchina da tutte le configurazioni non necessarie:
 +
 +<code bash>
 +cat > /root/templatize.sh <<EOT
 +#!/bin/bash
 +
 +echo
 +echo Making this system as a template in 10 seconds...
 +sleep 10
 +
 +set -x
 +
 +/usr/bin/systemctl stop rsyslog
 +/usr/bin/systemctl stop auditd
 +
 +set -e
 +
 +/usr/bin/package-cleanup --oldkernels --count=1
 +
 +/usr/bin/yum clean all
 +rm -rf /var/cache/yum
 +
 +/usr/sbin/logrotate -f /etc/logrotate.conf
 +/bin/rm -f /var/log/*-???????? /var/log/*.gz
 +/bin/rm -f /var/log/dmesg.old
 +/bin/rm -rf /var/log/anaconda
 +
 +/bin/cat /dev/null > /var/log/audit/audit.log
 +/bin/cat /dev/null > /var/log/wtmp
 +/bin/cat /dev/null > /var/log/lastlog
 +/bin/cat /dev/null > /var/log/grubby
 +
 +/bin/sed -r -i '/^(HWADDR|UUID)=/d' /etc/sysconfig/network-scripts/ifcfg-*
 +
 +/bin/rm -f /etc/udev/rules.d/70*
 +/bin/rm -rf /tmp/*
 +/bin/rm -rf /var/tmp/*
 +/bin/rm -f /etc/ssh/*key*
 +/bin/rm -f /root/.ssh/known_hosts
 +/bin/rm -f /root/.viminfo
 +/bin/rm -f /root/.pine-debug1
 +/bin/rm -f /root/.ssh/id_dsa*
 +/bin/rm -f /root/.ssh/id_rsa*
 +
 +/bin/rm -f /root/.bash_history
 +unset HISTFILE
 +
 +hostnamectl set-hostname 'localhost.localdomain'
 +newaliases
 +
 +shutdown -h now
 +EOT
 +
 +# bash /root/templatize.sh
 +
 +</code>

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki