Installing Ubuntu 18 LTS

There are a few things  you can do with Ubuntu.  Here are a list, and what you will need to do them:

  1. Encode video files with handbrake cli
    • add-apt-repository “deb http://us.archive.ubuntu.com/ubuntu/ bionic universe multiverse”
    • add-apt-repository “deb http://us.archive.ubuntu.com/ubuntu/ bionic-updates universe multiverse”
    • Handbrake Compile
      • apt-get install autoconf automake build-essential cmake git libass-dev libbz2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjansson-dev liblzma-dev libmp3lame-dev libogg-dev libopus-dev libsamplerate-dev libspeex-dev libtheora-dev libtool libtool-bin libvorbis-dev libx264-dev libxml2-dev m4 make nasm patch pkg-config python tar yasm zlib1g-dev intltool
      • git clone https://github.com/HandBrake/HandBrake.git && cd HandBrake
      • ./configure –launch-jobs=$(nproc) –launch
      • make –directory=build install
      • AS OF THIS, THE COMPILE PROCESS FAILS
  2. Run Docker Containers

Mysql – SSL Communications

  1. Server Setup
  2. Client Setup
  3. Programming Interface

Server Setup

Made these instructions from the following reference using  centos.

  1. sudo yum install mariadb-server mariadb (install database)
  2. mysql_secure_installation (secure the database)
  3. Create CA Certificate
    1. cd /etc/mysql
    2. sudo mkdir ssl
    3. cd ssl
    4. sudo openssl genrsa 2048 > ca-key.pem (Use the velow settings)
      • CA common Name : MariaDB admin
        Server common Name: MariaDB server
        Client common Name: MariaDB client

    5. sudo openssl genrsa 2048 > ca-key.pem (create new ca key)
    6. sudo openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca-cert.pem (create certificate using that key)
    7. Verify the following files exist:
      • /etc/mysql/ssl/ca-cert.pem – Certificate file for the Certificate Authority (CA).
      • /etc/mysql/ssl/ca-key.pem – Key file for the Certificate Authority (CA).
    8. sudo openssl req -newkey rsa:2048 -days 365000 -nodes -keyout server-key.pem -out server-req.pem (create server certificate)
    9. sudo openssl rsa -in server-key.pem -out server-key.pem (process the server RSA key)
    10. sudo openssl x509 -req -in server-req.pem -days 365000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem (sign server certificate)
    11.  Verify the following files exist:
      • /etc/mysql/ssl/server-cert.pem – MariaDB server certificate file.
      • /etc/mysql/ssl/server-key.pem – MariaDB server key file.
    12. Create the client certificate:
      1. sudo openssl req -newkey rsa:2048 -days 365000 -nodes -keyout client-key.pem -out client-req.pem (create client key)
      2. sudo openssl rsa -in client-key.pem -out client-key.pem (process client rsa key)
      3. sudo openssl x509 -req -in client-req.pem -days 365000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem (sign client certificate)
    13. Verify all certificates
      • openssl verify -CAfile ca-cert.pem server-cert.pem client-cert.pem
  4. Configure the MariaDB Server to use SSL
    1. sudo vi /etc/mysql/mariadb.cnf
    2. Append/edit in [mysqld] as follows:
      ### MySQL Server ###
      ## Securing the Database with ssl option and certificates ##
      ## There is no control over the protocol level used. ##
      ##  mariadb will use TLSv1.0 or better.  ##
      ssl
      ssl-ca=/etc/mysql/ssl/ca-cert.pem
      ssl-cert=/etc/mysql/ssl/server-cert.pem
      ssl-key=/etc/mysql/ssl/server-key.pem

       

    3. sudo systemctl restart mysql (restart mysql server)
  5. Configure the MariaDV client to use SSL
    1. sudo vi
    2. mysql –ssl –verbose -u <username> -p -e “show variables like ‘%ssl%'” (verify ssl is online)
    3. mysql –ssl –verbose -u <username> -p -e “status” (verify ssl is online)
    4. $ openssl s_client -connect 192.168.1.100:3306 -tls1
      $ openssl s_client -connect 192.168.1.100:3306 -tls1_1
      $ openssl s_client -connect 192.168.1.100:3306 -tls1_2
  6. Add a user to MariaDB server
    1. mysql -u root -p
    2. CREATE DATABASE foo;
    3. GRANT ALL ON foo.* TO bar@localhost IDENTIFIED BY ‘mypassword’ REQUIRE SSL;
    4. GRANT ALL ON foo.* TO bar@192.168.200 IDENTIFIED BY ‘mypassword’ REQUIRE SSL;
  7. Make secure connection from Python
    1. sudo yum -y install mysql-connector-python
    2. Sample python code to test connection:
      #!/usr/bin/python
      # Note (Example is valid for Python v2 and v3)
      from __future__ import print_function
      import sys
      
      import mysql.connector
      from mysql.connector.constants import ClientFlag
      
      config = {
          'user': 'bar',
          'password': 'mypassword',
          'host': '192.168.1.100',
          'client_flags': [ClientFlag.SSL],
          'ssl_ca': '/etc/mysql/ssl/ca-cert.pem',
          'ssl_cert': '/etc/mysql/ssl/client-cert.pem',
          'ssl_key': '/etc/mysql/ssl/client-key.pem',
      }
      
      cnx = mysql.connector.connect(**config)
      cur = cnx.cursor(buffered=True)
      cur.execute("SHOW STATUS LIKE 'Ssl_cipher'")
      print(cur.fetchone())
      cur.close()
      cnx.close()

Prop Making

This is going to be a journey.  It’s something my kids have always wanted.  My goal is to get this to be a resource on how to learn how to do this.

Things I want to learn:

  • 3d design of joints and hinges
  • molding techniques
  • painting and stressing

Resources:

  • http://studiocreations.com/howto/index.html
  • https://www.501st.com/
  • https://astromech.net/
  • http://www.r2-d2builder.com/

Painting and Distressing

  • http://punishedprops.com/painting-props/
  • https://www.therpf.com/showthread.php?t=91353

Machine listing based from Punisher Props:

Make props that look like they were pulled straight off the big screen! Bill teaches you how to model, sand, and paint your props using reference materials to get the perfect finish.