24.3. Efter den grundlæggende installation

Efter første boot endte jeg i en login-promt. Jeg loggede ind som root og blev spurgt hvilken terminal jeg bruger, og fik iøvrigt at vide at det ikke er godt at logge ind som root:


Terminal type? [vt220] 
Don't login as root, use su                                             
Read the afterboot(8) man page for administration advice.
miles# 
Det kan betale sig at læse manualsiden afterboot. Der står mange nyttige oplysninger om systemet.

Jeg startede med at se mig lidt omkring:


miles# df -h
Filesystem    Size   Used  Avail Capacity  Mounted on
/dev/wd0a    47.9M  23.8M  21.7M    52%    /
/dev/wd0d    85.8M   6.0K  81.5M     0%    /tmp
/dev/wd0f     1.5G   292M   1.2G    19%    /usr
/dev/wd0e     190M   6.6M   174M     4%    /var
miles# pwd
/root
miles# echo $SHELL
/bin/csh
miles# date
Thu May 16 00:16:27 CEST 2002
miles# 
Hmm.. c-shell og helt skæv dato. Men lige over 300 M for en hel UNIX-distribution er ikke dårligt.

Hvilke porte lytter den mon på?


miles# netstat -an
Active Internet connections (including servers)
Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)
tcp        0      0  192.168.132.226.22     192.168.132.14.1835    ESTABLISHED
tcp        0      0  127.0.0.1.587          *.*                    LISTEN
tcp        0      0  127.0.0.1.25           *.*                    LISTEN
tcp        0      0  *.22                   *.*                    LISTEN
tcp        0      0  *.37                   *.*                    LISTEN
tcp        0      0  *.13                   *.*                    LISTEN
tcp        0      0  *.113                  *.*                    LISTEN
Active Internet connections (including servers)
Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)
udp        0      0  127.0.0.1.512          *.*                   
udp        0      0  *.514                  *.*                   
udp        0      0  *.68                   *.*                   
udp        0      0  *.*                    *.*                   
Active Internet connections (including servers)
Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)
tcp6       0      0  ::1.587                *.*                    LISTEN
tcp6       0      0  ::1.25                 *.*                    LISTEN
tcp6       0      0  *.22                   *.*                    LISTEN
tcp6       0      0  *.37                   *.*                    LISTEN
tcp6       0      0  *.13                   *.*                    LISTEN
tcp6       0      0  *.113                  *.*                    LISTEN
Active Internet connections (including servers)
Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)
udp6       0      0  ::1.512                *.*                   
Active UNIX domain sockets
Address    Type   Recv-Q Send-Q      Inode       Conn       Refs    Nextref Addr
0xd086825c stream      0      0 0xd68b9858        0x0        0x0        0x0 tabs/.sock
0xd0868194 dgram       0      0        0x0 0xd0815140        0x0 0xd0863b00
0xd0848e10 dgram       0      0        0x0 0xd0815140        0x0        0x0
0xd08484b0 stream      0      0        0x0 0xd07d1180        0x0        0x0
0xd08483e8 stream      0      0        0x0 0xd08157c0        0x0        0x0
0xd0848258 dgram       0      0 0xd68a7844        0x0        0x0        0x0 /var/empty/dev/log
0xd0848190 dgram       0      0 0xd68a7784        0x0 0xd0863100        0x0 /dev/log
Ikke afskrækkende: ssh, time, daytime og ident samt syslog og en bootp-client. Og så er IPv6 konfigureret som default.

Først og fremmest: Jeg føler mig skidt hjemme i en c-shell. Bash er lige mig.


miles# bash
bash: Command not found.
Nå, ikke...

miles# ksh -o emacs
David Korn har ikke levet forgæves. Det er nok det tætteste jeg kommer på en Bash-shell i første omgang. Første prioritet må være at få maskinen til at vide hvilken tidsalder den lever i. Altså skal ntp lokaliseres

# cd /
# find . -name ntpd -print
# find . -name ntp\* -print

Javel ja.... Første prioritet er nu at finde ud af hvordan man installerer extra programmer på OpenBSD. Datoen må sættes manuelt i første omgang:

# date 200311081829
Sat Nov  8 18:29:00 CET 2003
#

Det virkede da i det mindste. For en god ordens skyld må jeg hellere lige oprette et brugbart login til mig selv først.

# useradd                                    
usage: useradd -D [-b basedir] [-e expiry] [-f changetime] [-g group]
                [-k skeletondir] [-r low..high] [-s shell] [-L class]
usage: useradd [-mov] [-G group[,group,...]] [-b basedir] [-c comment]
                [-d homedir] [-e expiry] [-f changetime] [-g group]
                [-k skeletondir] [-p password] [-r lowuid..highuid]
                [-s shell] [-u uid] [-L class] user
Det ligner da noget jeg har set før.

# useradd -g users -c "OpenBSD TestUser" -m  -s /bin/ksh otu
# grep ^otu /etc/passwd
otu:*:1000:10:OpenBSD TestUser:/home/otu:/bin/csh
# ls /home/otu/
.cshrc   .login   .mailrc  .profile .rhosts
# passwd otu
Changing local password for otu.
New password:
Please enter a longer password.
New password:
Please enter a longer password.
New password:
Retype new password:
Selv root får ikke lov at lave for kort password

Login med normal bruger, derefter su:


kvi@snake ~ -> ssh otu@miles
The authenticity of host 'miles (192.168.132.16)' can't be established.
RSA key fingerprint is 6d:e3:f8:5b:c2:47:ec:94:82:fd:69:be:16:40:95:31.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'miles,192.168.132.16' (RSA) to the list of known hosts.
otu@miles's password: 
OpenBSD 3.4 (GENERIC) #18: Wed Sep 17 03:34:47 MDT 2003

Welcome to OpenBSD: The proactively secure Unix-like operating system.

Please use the sendbug(1) utility to report bugs in the system.
Before reporting a bug, please try to reproduce it with the latest
version of the code.  With bug reports, please try to ensure that
enough information to reproduce the problem is enclosed, and if a
known fix for it exists, include that as well.

$ su
Password:
you are not in group wheel
Sorry
Nå, heller ikke.....

Brugere skal være medlem af gruppen wheel for at få lov at lave su


# grep ^wheel /etc/group
wheel:*:0:root,otu
Nu er det bedre:

$ id
uid=1000(otu) gid=10(users) groups=10(users), 0(wheel)
$ su
Password:
miles# ksh -o emacs
Efter et kig i man afterboot fandt jeg ud af at ekstra software kan installeres på samme måde som på FreeBSD: ved hjælp af ports og packages. Jeg havde hurtigt brug for en ntp-daemon så jeg valgte de prækompilerede packages. Fra ftp://ftp.openbsd.org/pub/OpenBSD/3.4/packages/i386 hentede jeg ntp-4.1.74.tgz.

$ su
Password:
miles# ksh -o emacs
# pkg_add
pkg_add: missing package name(s)
usage: pkg_add [-vInfRMS] [-t template] [-p prefix] pkg-name ...
# pkg_add ntp-4.1.74.tgz

+---------------
| Several example configuration files can be found in 
| /usr/local/share/examples/ntp.
|
| 1) create/update the file /etc/ntp.conf
| 2) restart your system
|
| The system restart is necessary as tickadj is run from
| /etc/rc.securelevel before the system securelevel is
| changed.
+---------------

# 
Hmmm.... en UNIX-maskien der skal genstartes bare fordi man installerer et nyt program? På den anden side, det ser ud til at der er en god grund. Jeg lavede /etc/ntp.conf:

$ cat /etc/ntp.conf
server 130.226.1.2
server  127.127.1.0     # local clock
og genstartede maskinen.

Efter dette gik det op for mig at Korn-shell'en i emacs-mode er til at leve med på OpenBSD. Så jeg fortsatte med at installere andre programmer.