- Customize httpd configuration file
<Location /restrict/contents>
Require all denied
AuthName "Protected Contents"
AuthType Basic
AuthUserFile /www/svn/etc/passwd
<RequireAny>
#Require user google
Require valid-user
</RequireAny>
</Location>
- Create password file
The password is encrypted with MD5, example: 5he#t?+lfRos07zonon7$ htpasswd /www/svn/etc/passwd google
- Restart/Reload httpd daemon
# systemctl reload httpd Encrypt username:password for 'Authorization:' header
$ echo google:5he#t?+lfRos07zonon7 | base64
Z29vZ2xlOjVoZSN0PytsZlJvczA3em9ub243Cg==
- Call with curl
curl --location --request POST 'https://www.goweekend.ca/restrict/contents' \
--header 'X-Authorization-Role: AUTHENTICATED' \
--header 'Authorization: Basic e3thdXRoLmFjY2Vzcy5rZXl9fTp7e2F1dGguYWNjZXNzLnNlY3JldH19' \ -H 'Content-Type: application/json' -d '{ "userid":"00019317", "lastName":"Qin"}'
Tuesday, November 24, 2020
HTTPD 2.4 Location Basic Authentication
Wednesday, November 18, 2020
Tomcat: The Apache Tomcat Connectors - Reference Guide
Reference: https://tomcat.apache.org/connectors-doc/reference/workers.html
worker.list=loadbalancer,jk-status
worker.worker1.port=8008
worker.worker1.host=203.18.21.85
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300
worker.worker1.ping_mode=A
worker.worker1.ping_timeout=5000
worker.worker2.port=8008
worker.worker2.host=203.18.22.85
worker.worker2.type=ajp13
worker.worker2.lbfactor=1
worker.worker2.socket_keepalive=1
worker.worker2.socket_timeout=300
worker.worker2.ping_mode=A
worker.worker2.ping_timeout=5000
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=worker1,worker2
#worker.loadbalancer.balance_workers=off
worker.loadbalancer.sticky_session=1
worker.jk-status.type=status
Sunday, November 15, 2020
Python Development on Mac
$ pip3 install xlwt
$ pip3 install openpyxl
Wednesday, November 11, 2020
gpg create key pairs
Create gpg rings on both sides: you and your client
# List existing keys
$ gpg --list-keys
# Generate new key
--full-generate-key might not be available in your environment, in the case, you can use --gen-key instead.
$ gpg --full-generate-key
$ gpg --list-keys
# Export private and public keys
$ gpg --export-secret-key -a "<uid>" > myprivate.key
$ gpg --export --output fei.asc -armor <pub id>
# Export public key in ssh key
$ gpg --export-ssh-key <pub id>!
gpg --export-ssh-key 6352600EF7A9D369A20FF584739E316C0B08E9A5!
$ gpg --edit-key "user id"
ModuleNotFoundError: No module named 'yaml'
Task:
$ ansible-galaxy init myrole
Problem:
ModuleNotFoundError: No module named 'yaml'
Solution:
$ pip3 list pyyaml
$ pip3 install pyyaml
$ export PYTHONUSERBASE=/Users/aniu/Library/Python/3.7
$ python3 -m site --user-site
/Users/aniu/Library/Python/3.7/lib/python/site-packages
Friday, November 6, 2020
Mac to erase ubuntu bootable usb
$ gpt destroy /dev/disk2
gpt destroy: unable to open device '/dev/disk2': Permission denied
Grant full access to terminal in Security and Privacy:
Format the disk with diskutil
$ diskutil zeroDisk /dev/disk2