| 
  
   Size: 6035 
  
  Comment:  
 | 
    ← Revision 54 as of 2025-01-12 19:57:02  ⇥ 
  Size: 6323 
  
  Comment:  
 | 
| Deletions are marked like this. | Additions are marked like this. | 
| Line 1: | Line 1: | 
| <<TableOfContents(2)>> | |
| Line 6: | Line 7: | 
|  * https://www.openbsd.org/art2.html * wget http://ftp.fr.openbsd.org/pub/OpenBSD/6.0/amd64/install60.iso * wget https://cdn.openbsd.org/pub/OpenBSD/6.5/amd64/install65.iso  | 
 * http://www.openbsd.org/tshirts.html * https://www.openbsd.org/artwork.html {{{#!highlight sh wget http://ftp.fr.openbsd.org/pub/OpenBSD/6.0/amd64/install60.iso wget https://cdn.openbsd.org/pub/OpenBSD/6.5/amd64/install65.iso wget https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/install73.iso wget https://cdn.openbsd.org/pub/OpenBSD/7.6/i386/install76.iso wget https://cdn.openbsd.org/pub/OpenBSD/7.6/amd64/install76.iso }}}  | 
| Line 110: | Line 117: | 
|  * /etc/rc.d/httpd start * /etc/rc.d/httpd check * pkg_info -Q wget * pkg_add wget-1.20.2 * wget http://localhost/ * mkdir -p /var/www/htdocs/localhost * echo -e "<html><body>Hello</body></html>" > /var/www/htdocs/localhost/index.html * /etc/rc.d/httpd restart * pkg_add fcgi-2.4.0p16 * pkg_add spawn-fcgi-1.6.3p0 * https://web.archive.org/web/20160122022029/http://www.fastcgi.com/drupal/node/6?q=node/21  | 
{{{#!highlight sh /etc/rc.d/httpd start /etc/rc.d/httpd check pkg_info -Q wget pkg_add wget-1.20.2 wget http://localhost/ mkdir -p /var/www/htdocs/localhost echo -e "<html><body>Hello</body></html>" > /var/www/htdocs/localhost/index.html /etc/rc.d/httpd restart pkg_add fcgi-2.4.0p16 pkg_add spawn-fcgi-1.6.3p0 # https://web.archive.org/web/20160122022029/http://www.fastcgi.com/drupal/node/6?q=node/21 }}} === fcgi.c ===  | 
| Line 139: | Line 148: | 
| {{{#!highlight sh | |
| Line 141: | Line 151: | 
{{{#!highlight bash  | 
|
| Line 156: | Line 164: | 
| # | |
| Line 160: | Line 167: | 
| http://localhost:8080/ | # http://localhost:8080/ | 
| Line 202: | Line 209: | 
| Line 204: | Line 210: | 
| /usr/local/sbin/beat.py | === /usr/local/sbin/beat.py === | 
| Line 230: | Line 236: | 
| /etc/rc.d/beat | === /etc/rc.d/beat === | 
| Line 242: | Line 248: | 
| {{{#!highlight bash | {{{#!highlight sh | 
| Line 247: | Line 253: | 
| Line 248: | Line 255: | 
| }}} {{{  | 
|
| Line 252: | Line 257: | 
}}}  | 
}}} | 
OpenBSD
The OpenBSD project produces a FREE, multi-platform 4.4BSD-based UNIX-like operating system.
   1 wget http://ftp.fr.openbsd.org/pub/OpenBSD/6.0/amd64/install60.iso
   2 wget https://cdn.openbsd.org/pub/OpenBSD/6.5/amd64/install65.iso
   3 wget https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/install73.iso
   4 wget https://cdn.openbsd.org/pub/OpenBSD/7.6/i386/install76.iso
   5 wget https://cdn.openbsd.org/pub/OpenBSD/7.6/amd64/install76.iso
VirtualBox installation
- new
 - name: OpenBSD6
 - type: bsd
 - version: openbsd 64 bit
 - next
 - 512 MB
 - next
 - create disk
 - create
 - vdi
 - next
 - fixed size
 - next
 - 8GB
 - Create
 - Settings
 - Network card Intel PRO/1000 MT Desktop
 - Start
 - install60.iso
 - Start
 - (I)nstall
 - ? choose keyboard
 - pt
 - System hostname: openbsd
 - card: em0
 - IP v4 address: dhcp
 - IP v6: none
 - done
 - password for root: *******
 - start sshd yes
 - expect X11 yes
 - X11 started by xdm: no
 - setup a user: vitor
 - Password for vitor ********
 - Allow root ssh login no
 - root disk wd0
 - use whole disk
 - Auto layout
 - set location cd0
 - pathname 6.0/amd64
 - all
 - done
 - continue without verification yes
 - done
 - Timezone Portugal # Europe/Lisbon
 - yes
 - reboot
 - Unmount ISO
 - Login as vitor
 - VM settings, network, adapter 1, NAT, port forwarding,  
- add rule, protocol tcp, host port 2222, guest port 22
 - add rule, protocol tcp, host port 8080, guest port 80
 
 
   1 df -h 
   2 startx # fvwm window manager 
   3 setxkbmap pt
   4 # default shell ksh 
   5 perl -v # 5.20 
   6 du -hs .
   7 
   8 #edit /root/.profile
   9 PKG_PATH=http://ftp.fr.openbsd.org/pub/OpenBSD/6.0/packages/amd64/
  10 export PKG_PATH
  11 exit
  12 login 
  13 env 
  14 pkg_info python
  15 pkg_add python-2.7.12 # pkg_add python-2.7.16 
  16 pkg_info -Q jdk
  17 pkg_add jdk-1.8.0.72p0v0 # pkg_add jdk-11.0.2.9.3p0v0
  18 # You may wish to add /usr/local/jdk-11/man to /etc/man.conf
  19 cd /usr/local/jdk-1.8.0/bin # cd /usr/local/jdk-11/bin
  20 ./java -version 
  21 python2.7 --version 
  22 pkg_info #list installed packages 
  23 #https://www.openbsd.org/faq/faq15.html#PkgMgmt
  24 
  25 #install ntpd
  26 pkg_add ntp
  27 ntpdate pt.pool.ntp.org #update datetime
  28 
httpd service
In /etc/rc.conf remove the value NO for httpd_flags
httpd_flags=
In /etc/httpd.conf
server "localhost"{
  listen on 0.0.0.0 port 80
  root "/htdocs/localhost"
}- In the configuration file root points to /var/www
 - The logs are in /var/ww/logs
 
   1 /etc/rc.d/httpd start
   2 /etc/rc.d/httpd check
   3 pkg_info -Q wget
   4 pkg_add wget-1.20.2
   5 wget http://localhost/
   6 mkdir -p /var/www/htdocs/localhost
   7 echo -e "<html><body>Hello</body></html>" > /var/www/htdocs/localhost/index.html
   8 /etc/rc.d/httpd restart
   9 pkg_add fcgi-2.4.0p16
  10 pkg_add spawn-fcgi-1.6.3p0
  11 # https://web.archive.org/web/20160122022029/http://www.fastcgi.com/drupal/node/6?q=node/21
  12 
fcgi.c
   1 #include "fcgi_stdio.h"
   2 #include <stdlib.h>
   3 
   4 void main(void)
   5 {
   6     int count = 0;
   7     while(FCGI_Accept() >= 0)
   8         printf("Content-type: text/html\r\n"
   9               "\r\n"
  10               "<title>FastCGI Hello!</title>"
  11               "<h1>FastCGI Hello!</h1>"
  12               "Request number %d running on host <i>%s</i>\n",
  13                 ++count, getenv("SERVER_NAME"));
  14 }
   1 cd /var/www/htdocs/localhost
   2 cc fcgi.c -o fcgi -lfcgi -I /usr/local/include -L /usr/local/lib
   3 mkdir -p /var/www/usr/bin
   4 mkdir -p /var/www/usr/lib
   5 mkdir -p /var/www/usr/libexec
   6 cp /usr/lib/libc.so.95.0 /var/www/usr/lib/libc.so.95.0
   7 cp /usr/libexec/ld.so /var/www/usr/libexec/ld.so
   8 cp ./usr/local/lib/libfcgi.so.0.0 /var/www/usr/lib
   9 
  10 mkdir -p /var/www/htdocs/localhost/usr/bin
  11 mkdir -p /var/www/htdocs/localhost/usr/lib
  12 mkdir -p /var/www/htdocs/localhost/usr/libexec
  13 cp /usr/lib/libc.so.95.0 /var/www/htdocs/localhost/usr/lib/libc.so.95.0
  14 cp /usr/libexec/ld.so /var/www/htdocs/localhost/usr/libexec/ld.so
  15 cp /usr/local/lib/libfcgi.so.0.0 /var/www/htdocs/localhost/usr/lib
  16 
  17 pkg_add apache-httpd-2.4.39p1
  18 /etc/rc.d/apache2 start
  19 # http://localhost:8080/
  20 
  21 pkg_add gtar-1.32
  22 wget http://mirrors.up.pt/pub/apache//httpd/mod_fcgid/mod_fcgid-2.3.9.tar.bz2
  23 bunzip2 mod_fcgid-2.3.9.tar.bz2| tar xvf -
  24 tar xvf mod_fcgid-2.3.9.tar
  25 cd mod_fcgid-2.3.9
  26 ./configure.apxs
  27 make
  28 make install
  29 # /usr/local/lib/apache2/mod_fcgid.so
  30 vi /etc/apache2/httpd2.conf
  31 # LoadModule /usr/local/lib/apache2/mod_fcgid.so
  32 # Virtual hosts
  33 Include /etc/apache2/extra/httpd-vhosts.conf
  34 
  35 /var/www/htdocs/localhost/cgi-bin
  36 fcgi.c    fcgi.fcgi
  37 
  38 /etc/apache2/extra/httpd-vhosts.conf
  39 
  40 <VirtualHost *:80>
  41     ServerName localhost
  42     FcgidInitialEnv name value
  43     DocumentRoot "/var/www/htdocs/localhost"
  44     ScriptAlias / /var/www/htdocs/localhost/
  45     <Directory "/var/www/htdocs/localhost">
  46        SetHandler fcgid-script
  47        Options +ExecCGI
  48         Allow from all
  49     </Directory>
  50 </VirtualHost>
  51 
  52 # install pip
  53 pkg_add py-pip-9.0.3
  54 ln -sf /usr/local/bin/pip2.7 /usr/local/bin/pip
  55 pip install flup
  56 pkg_add py3-pip-9.0.3
  57 pip3.6 install flup
Custom service
/usr/local/sbin/beat.py
   1 #!/usr/bin/python
   2 import threading
   3 import time
   4 import os
   5 import syslog
   6 import datetime
   7 import sys 
   8 import signal
   9 
  10 def termHandler(signal,frame):
  11     print('Signal term caught')
  12     sys.exit(0)
  13     
  14 if __name__=="__main__":
  15     f=open('/var/run/beat.pid','wa')
  16     f.write('%d'%(os.getpid()))
  17     f.close()
  18     signal.signal(signal.SIGTERM,termHandler)    
  19     
  20     while True:
  21         syslog.syslog(syslog.LOG_INFO, "Beat %s"%(datetime.datetime.now()) )
  22         time.sleep(5)
/etc/rc.d/beat
daemon="/usr/local/bin/python2.7 /usr/local/sbin/beat.py" rc_bg=YES . /etc/rc.d/rc.subr rc_cmd $1
