randy/bird-install.md
2022-05-25 17:54:16 -07:00

2.2 KiB

Installing BIRD on Debian Buster

First build a Debian Buster, of course

You can use our recipe

Build BIRD from source

Prerequisites

You will need to

apt get git autoconf build-essential bison m4 flex libncurses5-dev libncursesw5-dev libreadline-dev

Then try to clone the BIRD repo

You would think this would be easy, but the GitHub Repo is from three years ago.

and it mentions the CZ NIC repo, but

bird.iad.rg.net:/usr/local/src# git clone git://git.nic.cz/bird.git
Cloning into 'bird'...
fatal: unable to connect to git.nic.cz:
git.nic.cz[0: 2001:1488:ac15:ff90::133]: errno=Connection timed out
git.nic.cz[1: 217.31.192.133]: errno=Connection timed out

and

bird.iad.rg.net:/usr/local/src# git clone git@gitlab.nic.cz:labs/bird.git
Cloning into 'bird'...
The authenticity of host 'gitlab.nic.cz (2001:1488:ac15:ff90::133)' can't be established.
ECDSA key fingerprint is SHA256:KBChE+2IlYlFEWNA4Z53fp/aUZo47KXwJS/y3/9NdHo.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'gitlab.nic.cz,2001:1488:ac15:ff90::133' (ECDSA) to the list of known hosts.
git@gitlab.nic.cz: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

I finally got it with

git clone https://gitlab.nic.cz/labs/bird.git

Configure & Make

First

cd bird
autoreconf

To put everything in normal Debian directories,

./configure --prefix=/usr --sysconfdir=/etc --runstatedir=/run
make

Install

make install

And get a better configuration starter file

rsync /usr/local/src/bird/bird.conf /etc/bird

Configure BIRD

And some System Chores

Add a line to /etc/rsyslog.conf

local1.*                        -/var/log/bird.log

And rotate it

cat > /etc/logrotate.d/bird << EOF
/var/log/bird.log {
    daily
    missingok
    rotate 3
    compress
    delaycompress
    notifempty
    create 640 bird bird
}
EOF
touch /var/log/bird.log
chown bird:bird /var/log/bird.log

2021.02.28