User Tools

Site Tools


strutture:lnf:dr:calcolo:sistemi:scientific_linux_7_template

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:

yum install epel-release

Installiamo i seguenti pacchetti:

yum install deltarpm bash-completion yum-utils

Aggiorniamo i pacchetti installati

yum update

Disabilitiamo kdump

systemctl disable kdump.service

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

vgrename [automatic_name] vglocal

Sostituiamo tutte le occorrenze di [automatic_name] con vglocal nei seguenti file:

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

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

yum install mailx

Modifichiamo il file main.cf di postfix (vi /etc/postfix/main.cf) impostando:

inet_interfaces = all
relayhost = [smtp.lnf.infn.it]
mydomain = lnf.infn.it

Kerberos

Installiamo i pacchetti per il client Kerberos

yum install krb5-workstation krb5-libs krb5-auth-dialog

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.

[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
        }

OpenAFS (Solo SL)

Installiamo i pacchetti

yum install openafs-1.6-sl-client openafs-1.6-sl-krb5 net-tools

Modifichiamo il file CellAlias in /usr/vice/etc/ inserendo

lnf.infn.it lnf

e il file ThisCell sempre in /usr/vice/etc/ inserendo

lnf.infn.it

Abilitare gli aggiornamenti automatici di sicurezza (Solo SL)

Modifichiamo il file yum-cron.conf (vi /etc/yum/yum-cron.conf) inserendo

update_cmd = minimal-security

Disabilitare SELinux

Per disabilitare SELinux modifichiamo il file di configurazione /etc/sysconfig/selinux impostando il valore disabled alla voce SELINUX

SELINUX=disabled

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:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Rendiamo effettive le modifiche eseguendo il comando:

sysctl -p

Modifichiamo la voce AddressFamily nel file /etc/ssh/sshd_config sostituendo any con inet

AddressFamily inet

Quindi riavviamo ssh.

systemctl restart sshd
systemctl status sshd

Infine modifichiamo la voce inet_interfaces in /etc/postfix/main.cf nel modo seguente:

inet_interfaces = 127.0.0.1

oVirt agent

Installiamo il pacchetto relativo ai guest agent di oVirt

yum install ovirt-guest-agent

Eseguiamo i seguenti comandi per avviare il servizio e abilitarlo al boot:

systemctl enable ovirt-guest-agent.service
systemctl start ovirt-guest-agent.service

VMWare agent

Installiamo il pacchetto relativo ai guest agent di VMWare

yum install open-vm-tools

Eseguiamo i seguenti comandi per avviare il servizio e abilitarlo al boot:

systemctl enable vmtoolsd
systemctl start vmtoolsd

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

systemctl stop firewalld 
systemctl disable firewalld 

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

yum install iptables-services

Abilitiamo iptables al boot

systemctl enable iptables

Cancelliamo il contenuto del file /etc/sysconfig/iptables contenente le regole create di default

cat /dev/null > /etc/sysconfig/iptables

Infine avviamo il servizio e verifichiamo lo stato

systemctl start iptables
systemctl status iptables

check-mk agent

Installiamo il pacchetto xinetd

yum install xinetd

Scarichiamo la versione corretta di check_mk_agent e il relativo file di configurazione di xinetd

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

Abilitiamo l'avvio al boot di xinetd e avviamo il servizio

systemctl enable xinetd
systemctl start xinetd
systemctl status xinetd

Log rate limit

aggiungere a /etc/systemd/journald.conf:

RateLimitInterval=0
RateLimitBurst=0

Custom script

Creiamo la directory /usr/custom/scripts

mkdir -p /usr/custom/scripts

Copiamo nella directory appena create gli script:

  • z-send.warnings
  • summarize
scp slcalc:/usr/custom/scripts/* /usr/custom/scripts/

Log alert script

Modifichiamo il file /etc/rsyslog.conf inserendo

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

Creiamo il file unset.warnings in /var/log/

touch /var/log/unsent.warnings

Creiamo un link simbolico dallo script z-send.warnings a /etc/cron.hourly/

ln -s /usr/custom/scripts/z-send.warnings /etc/cron.hourly/

Infine riavviamo il servizio rsyslog

systemctl restart rsyslog
systemctl status rsyslog

Tivoli Storage Manager e configurazione backup

Scarichiamo la versione client di Tivoli Storage Manager

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

Estraiamo il contenuto:

tar -xf 6.4.3.4-TIV-TSMBAC-LinuxX86.tar

Lanciamo l'installazione:

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

Modifichiamo il file /opt/tivoli/tsm/client/ba/bin/dsm.sys con il seguente contenuto:

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

Templatize script

Configurati tutti i servizi precedenti è necessario eseguire il seguente script per ripulire la macchina da tutte le configurazioni non necessarie:

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
strutture/lnf/dr/calcolo/sistemi/scientific_linux_7_template.txt · Last modified: 2019/04/16 09:23 by dmaselli@infn.it

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki