Merge branch 'master' of git+ssh://db.debian.org/git/dsa-wiki
[mirror/dsa-wiki.git] / input / howto / new-machine.creole
1 == setup/integrate a new machine ==
2
3 Note: this has recently been changed to rely more on [[puppet|howto/puppet-setup]].  If stuff breaks fix it.
4
5
6 * install ssh if it isn't there already
7 {{{
8     apt-get install --no-install-recommends ssh
9 }}}
10
11 * sane editor
12 {{{
13     apt-get install --no-install-recommends vim
14 }}}
15
16 * sane locales: (make sure there is _no_ locale defined in /etc/environment and /etc/default/locale)
17 {{{
18    echo -n > /etc/environment
19    echo -n > /etc/default/locale
20 }}}
21
22 * make debconf the same on every host: - dialog, - high
23 {{{
24     apt-get install --no-install-recommends dialog &&
25     echo "debconf debconf/priority        select high" | debconf-set-selections &&
26     echo "debconf debconf/frontend        select Dialog" | debconf-set-selections
27 }}}
28
29 * unless we want to keep it:
30 {{{
31     dpkg -l postfix | grep '^ii  postfix' && (dpkg --purge postfix && rm /etc/aliases)
32 }}}
33
34 * on draghi, add the host to the ldap using ud-host.  Set the ssh key and the IP Address attributes.
35
36 * run generate, or wait until cron runs it for you.  Update DNS.
37 {{{
38     : :: draghi :: && sudo -u sshdist ud-generate && sudo -H ud-replicate && sudo -H puppetd -t
39     : :: orff :: && sudo -H ud-replicate
40 }}}
41
42 * setup [[puppet|howto/puppet-setup]]  (run the puppet client two or three times until things converge.)
43
44
45 * fix nsswitch for ud fu.  (you might have to restart sshd here)
46 {{{
47     sed -i -e 's/^passwd:\[[:space:]]\+compat$/passwd:         compat db/;
48               s/^group:\[[:space:]]\+compat$/group:          db compat/;
49               s/^shadow:\[[:space:]]\+compat$/shadow:         compat db/' \
50         /etc/nsswitch.conf
51     (cd / && env -i /etc/init.d/ssh restart)
52 }}}
53
54 * install userdir-ldap
55 {{{
56     apt-get update && apt-get install userdir-ldap
57 }}}
58
59 * on the host, run ud-replicate
60 {{{
61     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 &&
62     ud-replicate
63 }}}
64
65 * check if it worked:
66 {{{
67     id weasel
68 }}}
69
70 * install debian.org which brings you shells and much other fun
71 {{{
72     apt-get install debian.org debian.org-recommended
73 }}}
74
75 * try to login using your user and ssh key.  you should get a homedir.
76
77 * try to become root using sudo.
78
79 * make ca-certificates sane:  (choose to *not* trust new certs, and we only want the spi cert activated)
80 {{{
81     echo "ca-certificates ca-certificates/trust_new_crts  select no" | debconf-set-selections
82     sed -i -e 's/^[^#!].*/!&/; s#^!spi-inc.org/spi-cacert-2008.crt#spi-inc.org/spi-cacert-2008.crt#' /etc/ca-certificates.conf
83     dpkg-reconfigure ca-certificates
84 }}}
85
86 * Add debian-admin@debian.org to root in /etc/aliases
87 {{{
88   if ! egrep '^root:' /etc/aliases > /dev/null; then
89     echo "root: debian-admin@debian.org" >> /etc/aliases
90   elif ! egrep '^root:.*debian-admin@debian.org' /etc/aliases > /dev/null; then
91     sed -i -e 's/^root: .*/&, debian-admin@debian.org/' /etc/aliases
92   fi
93   newaliases
94 }}}
95
96 * if it is a HP Proliant, or has other management fu, read [[howto/ilo-https]]
97
98 * edit dedication into in $DSA-PUPPET/modules/debian-org/misc/local.yaml
99
100 * Add host to smarthost machines in $DSA-PUPPET/modules/debian-org/misc/local.yaml (if so desired).  Set MX in ud-ldap.
101
102 * If you need mail now instead of in a day, on handel:
103 {{{
104   : :: handel :: : && sudo -u puppet make -C /srv/puppet.debian.org/ca/ install
105 }}}
106
107 * add to nagios
108
109 -- weasel, Wed, 04 Jun 2008 20:52:56 +0200