X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=input%2Fhowto%2Fnew-machine.creole;h=cd5bbe8b54f33948c6a9af5899a08dc2686b0309;hb=4560c210de7352f480b37ab77d1467de229b75b3;hp=86b0518ed2d22c45a59868e7dfa69fa71f4b44d6;hpb=ae96f563ce7f6bc7f1b4de7dbacca38f31353106;p=mirror%2Fdsa-wiki.git diff --git a/input/howto/new-machine.creole b/input/howto/new-machine.creole index 86b0518..cd5bbe8 100644 --- a/input/howto/new-machine.creole +++ b/input/howto/new-machine.creole @@ -1,111 +1,36 @@ == setup/integrate a new machine == -Note: this is partially obsolete now that we have [[puppet|howto/puppet-setup]]. We should probably update/rework some parts. +Note: this has recently been changed to rely more on [[puppet|howto/puppet-setup]]. If stuff breaks fix it. -* install ssh if it isn't there already -{{{ - apt-get install ssh -}}} - -* make apt sane -{{{ - echo 'Acquire::PDiffs "false";' > /etc/apt/apt.conf.d/local-pdiff - echo 'APT::Install-Recommends 0;' > /etc/apt/apt.conf.d/local-recommends -}}} -* sane locales: (make sure there is _no_ locale defined in /etc/environment and /etc/default/locale) +* some initial stuff: {{{ - echo -n > /etc/environment - echo -n > /etc/default/locale -}}} - -* make debconf the same on every host: - dialog, - high -{{{ - apt-get install dialog && + apt-get install --no-install-recommends ssh vim && + echo -n > /etc/environment && + echo -n > /etc/default/locale && + apt-get install --no-install-recommends dialog && && echo "debconf debconf/priority select high" | debconf-set-selections && echo "debconf debconf/frontend select Dialog" | debconf-set-selections }}} -* add db.d.o to sources.list: +* unless we want to keep it: {{{ - cat > /etc/apt/sources.list.d/debian.org.list << EOF -deb http://db.debian.org/debian-admin lenny main -deb-src http://db.debian.org/debian-admin lenny main -EOF - - apt-key add - << EOF ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.4.9 (GNU/Linux) - -mQGiBEf4BP0RBACfXnRhBb9HKiA3h5A1tDnluVwfkSuDX4ZXdVAuMZapdOm8r9ug -9zE/dDGWPWja+DArAPZ/i3BFvlMewmden/IFbQKtXluQVIC4GL1RBMwrtWsZzo0g -picl3CYWDAYjRdg4WppUc9FawwGw081FlLGDv7eYRO3+8uGUHfr+SD7CwwCgxJK6 -SvDX6M2Ifuq8WmgWWrVFyakD/ipdxd3NPIcnl1JTO2NjbOJYKpZMl6v0g+1OofSq -CAKTO8ymc0z6SF1j/4mWe1W76wvTpOhOUgn2WO7SQHZaujb/3z+yAJedfbCDgq0S -H/T2qbQTzv+woAjyR/e2Zpsc2DRfqO/8aCw1Jx8N3UbH9MBPYlYlyCnSra1OAyXW -VvC0A/9nT/k6VIFBF0Oq2WwmzOLptOqg61WrnxBr3GIe503++p88tOwlCJlL0uZZ -k68m3m5t7WDtQK4fHQwLramb9AqtBPhiEaXU5bXk77RYE54EeEH9Z4H4YSMMkdYU -gLG5CZI2jprxAZew1mHKROv+15jxYd+BZCrORmpWn5g7N+TC5rQeZGIuZGViaWFu -Lm9yZyBhcmNoaXZlIGtleSAyMDA4iGYEExECACYCGwMGCwkIBwMCBBUCCAMEFgID -AQIeAQIXgAUCSdlA9AUJA8JvcwAKCRC+p88QvSsO4AoeAJ0dY+rDwxNVR6HPs8JZ -xLceOYU/hgCeNW1KkOXrSt2Lv8PVWXnr5jHNZSo= -=4LFD ------END PGP PUBLIC KEY BLOCK----- -EOF + dpkg -l postfix | grep '^ii postfix' && (dpkg --purge postfix && rm /etc/aliases) }}} -* in /etc/ssh/sshd_config: -** disable the DSA hostkey, so that it only does RSA -** remove old host keys: -** disable X11 forwarding -** Tell it to use alternate authorized_keys locations -** maybe link root's auth key there: -{{{ - #| HostKey /etc/ssh/ssh_host_rsa_key - #| X11Forwarding no - #| AuthorizedKeysFile /etc/ssh/userkeys/%u - #| AuthorizedKeysFile2 /var/lib/misc/userkeys/%u - - cd /etc/ssh/ && rm -f ssh_host_dsa_key ssh_host_dsa_key.pub ssh_host_key ssh_host_key.pub && - mkdir -p /etc/ssh/userkeys && ln -s /root/.ssh/authorized_keys /etc/ssh/userkeys/root && - sed -i -e 's/^HostKey.*_dsa_key/# &/; - s/^X11Forwarding yes/X11Forwarding no/; - $ a AuthorizedKeysFile /etc/ssh/userkeys/%u - $ a AuthorizedKeysFile2 /var/lib/misc/userkeys/%u' sshd_config && - (cd / && env -i /etc/init.d/ssh restart) -}}} +* on draghi, add the host to the ldap using ud-host. Set the ssh key and the IP Address attributes. - - -* install userdir-ldap +* run generate, or wait until cron runs it for you. Update DNS. {{{ - apt-get update && apt-get install userdir-ldap + : :: draghi :: && sudo -u sshdist ud-generate && sudo -H ud-replicate && sudo -H puppetd -t + : :: orff :: && sudo -H ud-replicate }}} - -* on draghi, add the host to /home/sshdist/.ssh/authorized_keys and generate.conf -(you want the host's rsa host key there: {{{cat /etc/ssh/ssh_host_rsa_key.pub}}}) -{{{ - : :: draghi :: && sudo vi /home/sshdist/.ssh/authorized_keys - : :: draghi :: && sudo vi /etc/userdir-ldap/generate.conf -}}} -* run generate, or wait until cron runs it for you -{{{ - : :: draghi :: && sudo -u sshdist ud-generate -}}} - -* fix nsswitch for ud fu. (you might have to restart sshd here) -{{{ - sed -i -e 's/^passwd:\[[:space:]]\+compat$/passwd: compat db/; - s/^group:\[[:space:]]\+compat$/group: db compat/; - s/^shadow:\[[:space:]]\+compat$/shadow: compat db/' \ - /etc/nsswitch.conf - (cd / && env -i /etc/init.d/ssh restart) -}}} +* setup [[puppet|howto/puppet-setup]] (run the puppet client two or three times until things converge.) * on the host, run ud-replicate {{{ - echo draghi.debian.org,draghi,db.debian.org,db,82.195.75.106,::ffff:82.195.75.106 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAy1mAS0xIOZH9OrJZf1Wv9qYORv5Z5fmpF0o8Y4IMdS+ZzTjN1Sl8M77jaFTJbumJNs+n2CMcX8CoMemQEPBoRe20a5t3dExPQ3c7FNU0z+WIVFbu/oTTkAWGp5gCDwF3pg2QxUjqYc0X4jpv6pkisyvisij6V/VJ5G1hsIMuKqrCKYyyyiJJytfzSfRrBx2QvB5ZWQxhYeSYDoLDvuF31qUy4TLZ/HR3qZQ1cBrP9dCh5d+GQxdY9LuO6zjlnSyU64GHkyjYt3p03AKG4plD7WHX01bD0DQQ/NOFVwFhOZ63mePyridPuqBMFW39jBf4jSsewV95RE5VbY04+MY4XQ== root@draghi >> /etc/ssh/ssh_known_hosts && + echo draghi.debian.org,draghi,db.debian.org,db,82.195.75.106,::ffff:82.195.75.106,2001:41b8:202:deb:1a1a:0:52c3:4b6a ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAy1mAS0xIOZH9OrJZf1Wv9qYORv5Z5fmpF0o8Y4IMdS+ZzTjN1Sl8M77jaFTJbumJNs+n2CMcX8CoMemQEPBoRe20a5t3dExPQ3c7FNU0z+WIVFbu/oTTkAWGp5gCDwF3pg2QxUjqYc0X4jpv6pkisyvisij6V/VJ5G1hsIMuKqrCKYyyyiJJytfzSfRrBx2QvB5ZWQxhYeSYDoLDvuF31qUy4TLZ/HR3qZQ1cBrP9dCh5d+GQxdY9LuO6zjlnSyU64GHkyjYt3p03AKG4plD7WHX01bD0DQQ/NOFVwFhOZ63mePyridPuqBMFW39jBf4jSsewV95RE5VbY04+MY4XQ== root@draghi >> /etc/ssh/ssh_known_hosts && ud-replicate }}} @@ -116,9 +41,18 @@ EOF * install debian.org which brings you shells and much other fun {{{ - apt-get install debian.org + apt-get install -y debian.org debian.org-recommended }}} +* run puppet a couple times +{{{ + puppet agent -t; puppet agent -t; puppet agent -t; puppet agent -t +}}} + +* try to login using your user and ssh key. you should get a homedir. + +* try to become root using sudo. + * make ca-certificates sane: (choose to *not* trust new certs, and we only want the spi cert activated) {{{ echo "ca-certificates ca-certificates/trust_new_crts select no" | debconf-set-selections @@ -128,45 +62,28 @@ EOF * Add debian-admin@debian.org to root in /etc/aliases {{{ - if ! egrep '^root:' /etc/aliases > /dev/null; then - echo "root: debian-admin@debian.org" >> /etc/aliases - elif ! egrep '^root:.*debian-admin@debian.org' /etc/aliases > /dev/null; then - sed -i -e 's/^root: .*/&, debian-admin@debian.org/' /etc/aliases - fi - newaliases -}}} - -* sane default editor -{{{ - apt-get install vim && update-alternatives --set editor /usr/bin/vim.basic + if ! egrep '^root:' /etc/aliases > /dev/null; then + echo "root: debian-admin@debian.org" >> /etc/aliases + elif ! egrep '^root:.*debian-admin@debian.org' /etc/aliases > /dev/null; then + sed -i -e 's/^root: .*/&, debian-admin@debian.org/' /etc/aliases + fi + newaliases }}} -* add to munin on spohr +* install samhain and get puppet to configure it {{{ - : :: spohr :: && sudo vi /etc/munin/munin.conf -}}} - - -* disable password auth with ssh, once you verified you can log in - and become root using keys. -{{{ - #vi /etc/ssh/sshd_config - # | PasswordAuthentication no - - sed -i -e 's/^PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config && - (cd / && env -i /etc/init.d/ssh restart) + apt-get install -y samhain && + ( puppet agent -t || true ) && + service samhain stop && + rm /var/state/samhain/samhain_file && + samhain --foreground -t init -p none -s none -l none -m none && + service samhain start }}} * if it is a HP Proliant, or has other management fu, read [[howto/ilo-https]] -* setup [[puppet|howto/puppet-setup]] - -* try to login using your user and ssh key. you should get a homedir. - * edit dedication into in $DSA-PUPPET/modules/debian-org/misc/local.yaml * add to nagios -* add host to ldap: ud-host -a $USER -h .... - -- weasel, Wed, 04 Jun 2008 20:52:56 +0200