Installing A FreeBSD 7.0 DNS Server With BIND - Page 3

Choose [NO] for the anonymous FTP login:

Choose [NO] for the NFS server.

Choose [NO] again for the NFS client.

You will then be asked for system console customization so we will choose [NO].

Choose [YES] for the time zone.

Most systems don't use UTC, if not please choose [NO].

Time Zone, choose your region, highlight [OK] and press [ENTER].

Choose your country, highlight [OK] and press [ENTER].

CEST was ok for me, so depending on your region go ahead with the following selection.

It a text based installation and we wont use any mouse here so I choose [NO].

Choose [NO] for application browsing.

Choose [YES] for creating a new user.

Scroll down to User, highlight [OK] and press [ENTER].

Type the username and TAB to type the password then the full name, we will then need to type wheel in the Member groups box so that this user will be able to login via SSH, when finished highlight [OK] and press [ENTER]:

You will then go back to the previous screen choose X Exit  then highlight [OK] and press [ENTER].

Ok no we will configure the root password, so press [OK].

Type the new password and press [ENTER] to go and then Retype the new password again, then press [ENTER].

Choose [NO] for visiting the configuration menu.

Share this page:

2 Comment(s)

Add comment

Comments

From: Anonymous at: 2009-02-13 10:44:12

Hi,

Great post.

This is a complementary article that explains howto setup IPv6 DNS zones with bind.

Cheers.

From: Anonymous at: 2012-01-24 09:35:36

Here is details on instalation php, bind, apache, mysql on freebsd:

After installation , run update:
#uname -a
#freebsd-update fetch
#freebsd-update install
#reboot
#uname -a

Port update:
#cp /usr/share/examples/cvsup/ports-supfile /root

#ping -c 3 cvsup6.freebsd.org
#ee /root/ports-supfile
(*default host=cvsup6.FreeBSD.org)

Starting update:
#csup -g -L 2 /root/ports-supfile

#whereis bash      //you can use: cd `whereis -q bash`    ; whereis -b bash    gives you path of binary
#cd /usr/ports/shells/bash
#make install
#hash
#rehash

#whereis portaudit
#cd /usr/ports/ports-mgmt/portaudit
#make install
#/usr/local/sbin/portaudit -Fda

#chsh -s /usr/local/bin/bash
#exit

#> /etc/motd     //write empty motd file, it displays on login

#whereis mc
#cd /usr/ports/misc/mc
#make install


Set static IP address:
#ee /etc/rc.conf
Add lines:
ifconfig_em0="inet 192.168.111.9 netmask 255.255.255.240"
defaultrouter="192.168.111.1"

Add user "user1" in group wheel so he can switch to root
#pw usermod student -G wheel



Installing BIND DNS service on FreeBSD:
#cd /usr/ports/dns/bind97/
#make config
#make install

Create file:
#cp /etc/make.conf /etc/make.conf.old
#ee /etc/make.conf
Add here this:
"NO_BIND = YES"

Editing file named.conf:
#mcedit /var/named/etc/namedb/named.conf
 - delete localhost 127.1.0.0
 - set forwarders
 - add on the end of file:
 zone "facebook.ba"
 {
 type master;
 file "master/facebook.ba";
 allow-transfer {localhost;};
 allow-update {key rndc-key;};
 }
 

Creating rndc key:
#rndc-confgen -a
#cd /var/named/etc/namedb
#cp named.conf named.conf.old
#cat rndc.key >> named.conf

Creating master file:
#cd /var/named/etc/namedb/
#mcedit facebook.ba

Write into facebook.ba file:
    $TTL 3600
    facebook.ba IN SOA server.facebook.ba root.facebook.ba
    (
    1 ; Serial ; Increment by one after every change
    10800 ; Refresh every hour
    3600 ; Retry every 15 minutes
    604800 ; Expire 1000 hours
    86400 ) ; Minimum 1 hour

    ;DNS servers
    facebook.ba IN NS server.facebook.ba.

    ;Computer names
    server.facebook.ba IN A 192.168.1.103
    komp.facebook.ba IN A 192.168.1.102

    ;Aliases
    www IN CNAME server.facebook.ba
    ww1 IN CNAME komp.facebook.ba

    ;MX records
    facebook.ba IN MX 10 mail.facebook.ba.

Then copy file facebook.ba:
/var/named/etc/namedb/# cp facebook.ba working/

Change DNS servers on system:
#ee /etc/resolv.conf
Write into resolv.conf:
domain facebook.ba
nameserver 192.168.1.103

Set up config so BIND will start after reboot:
#ee /etc/rc.conf
Add this on the end:
hostname="facebook.ba"
named_enable="YES"

Start BIND
#/etc/rc.d/named start

Create emty file: /var/named/etc/namedb/working/managed-keys.bind:
> working/managed-keys.bind

Test if everything works:
#dig www.facebook.ba
#dig www.google.ba



Installing APACHE service:
#cd /usr/ports/www/apache22
#make config
#make install   (On menu set all default, you can only desellect ipv6)

Configuration:
Open httpd.conf located in /usr/local/etc/apache22
#ee /usr/local/etc/apache22/httpd.conf
Change:
 - ServerAdmin you@example.com   (put your e-mail address)
 - ServerName www.exaple.com:80  (Remove comment add change address to www.facebok.ba:80)

Testing:
#apachectl configtest

Setting up  automatic start of Apache on system startup:
#ee /etc/rc.conf
Add on the end of file:
apache22_enabled = "YES"
apache22_http_accept_enable= "YES"

Restart apache server:
/usr/local/etc/rc.d/apache22 start

Webpage in this path:/usr/local/www/apache22/data/index.html

Log files are here:
/var/log/httpd-access.log
/var/log/httpd-error.log


Instalation of MySQL database:
#cd /usr/ports/databases/mysql55-server
#make -D BUILD_OPTIMIZED install
#hash



Configuration of MySQL database
#mysql_install_db --user=mysql

#mysql_safe &
#mysqladmin -u root password 'localpassword'

Copying existing configuration:
#cp /usr/local/share/mysql/my-medium.cnf /var/db/mysql/my.cnf

Restricting remote using of database, throught network:
ee /var/db/mysql/my.cnf
Remove comment on line 45 so it looks like this:skip-networking

Configuration for startup of MySQL:
#ee /etc/rc.conf
Add on the end:
mysql_enable="YES"

Restart MySQL to apply all changes:
#/usr/local/etc/rc.d/mysql-server restart

Showing databases:
#mysqlshow -p

Check permissions of TMP folder:
#chown root:wheel /tmp
#chmod 777 /tmp
#chmod = t /tmp

Loging on server
#mysql -u root -p

Showing databases and working with dthat database:
#mysql> show databases;

Creating dtabase:
#mysql> create database ins2007;

Adding user with full permissions on database:
#mysql> grant all on ins2007. to vt@localhost identified by 'password';

Adding userwith read permissions on base:
#mysql> grant select on ins2007.* to vt@localhost identified by 'password'

Adding user with customized permisions on database:
#mysql grant (choose between select,insert,update,delete,create,drop) on ins2007.* vt@localhost identified by 'password'

Removing users form dbase:
#mysql> revoke all privileges on ins2007.* from vt@localhost;

Removing users from MySQL servera:
#mysql> revoke all privileges, grant option from vt@localhost;
#mysql> drop user vt@localhost;

Erasing base:
mysql>drop database ins2007;

Showing privilegies for each user:
#mysql> show grants for vt@localhost;

Backup of all MySQL databases:
#mysqldump -u root -p --all-databases > /path/nameofbackup.sql

Backup only one database:
#mysqldump -u root -p --databases fitbaza > /path/iee nameofbackup.sql

Restore database:
#mysql -u root -p ins2007 < /path/nameofbackup.sql

Configuration file of MySQL database:
/var/db/mysql/my.cnf

Log file of MySQL database
/var/db/mysql/server.facebook.ba.err



Instalation of PHP
#cd /usr/ports/loang/php5
#make config ; make install
When menu appears choose Apache (Build  apache module), other leave default.

Edit Apache httpd.conf for php support:
#ee /usr/local/etc/apache22/httpd.conf
Change path of index.php:
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
On the end add text:
AddType application/x-http-php .php
AddType application/x-http-php-source .phps

Copy configuration file php.ini:
#cd /usr/local/etc
#cp php.ini-recommended php.ini

Specificate session save.path in configuration of php:
#ee /usr/local/etc/php.ini
Remove comment and set path:
session.save_path = "/tmp"

Save and restart Apache
#/usr/local/etc/rc.d/apache22 restart

Testing php:
#ee /usr/local/www/apache22/data/phpinfo.php
Add this line:<?php phpinfo();?>