05bed8e734e6b6141613f245cfe90a2d724e8113
Home.md
... | ... | @@ -16,6 +16,7 @@ |
16 | 16 | 7. [monitoring](#technology_monitoring) |
17 | 17 | 8. [networking](#technology_networking) |
18 | 18 | 9. [virtualisation](#technology_virtualisation) |
19 | + 10. [websites](#technology_websites) |
|
19 | 20 | |
20 | 21 | ## coding |
21 | 22 | - [android](coding/android) |
... | ... | @@ -100,3 +101,4 @@ |
100 | 101 | |
101 | 102 | ### websites |
102 | 103 | - [django](technology/websites/django) |
104 | +- [httpd](technology/websites/httpd) |
custom.css
... | ... | @@ -1,148 +1,158 @@ |
1 | 1 | @font-face { |
2 | - font-family: 'goudy_bookletter_1911regular'; |
|
3 | - src: url('fonts/goudy_bookletter_1911-webfont.eot'); |
|
4 | - src: url('fonts/goudy_bookletter_1911-webfont.eot?#iefix') format('embedded-opentype'), |
|
5 | - url('fonts/goudy_bookletter_1911-webfont.woff') format('woff'), |
|
6 | - url('fonts/goudy_bookletter_1911-webfont.ttf') format('truetype'), |
|
7 | - url('fonts/goudy_bookletter_1911-webfont.svg#goudy_bookletter_1911regular') format('svg'); |
|
8 | - font-weight: normal; |
|
9 | - font-style: normal; |
|
10 | -} |
|
11 | -@font-face { |
|
12 | - font-family: 'envy'; |
|
13 | - src: url('fonts/envy_code_r.eot'); |
|
14 | - src: url('fonts/envy_code_r.eot?#iefix') format('embedded-opentype'), |
|
15 | - url('fonts/envy_code_r.woff2') format('woff2'), |
|
16 | - url('fonts/envy_code_r.woff') format('woff'), |
|
17 | - url('fonts/envy_code_r.ttf') format('truetype'), |
|
18 | - url('fonts/envy_code_r.svg') format('svg'); |
|
2 | + font-family: 'saxmono'; |
|
3 | + src: url('/fonts/saxmono-webfont.woff') format('woff'); |
|
19 | 4 | font-weight: normal; |
20 | 5 | font-style: normal; |
21 | 6 | } |
22 | 7 | body { |
23 | - background: #111111; |
|
24 | - color: #abc0c5; |
|
25 | - font-family: 'goudy_bookletter_1911regular'; |
|
8 | + background: #202224; |
|
9 | + color: #beced0; |
|
10 | + font-family: 'saxmono'; |
|
26 | 11 | font-size: 16px; |
27 | 12 | letter-spacing: .3px; |
28 | 13 | } |
29 | 14 | #head { |
30 | 15 | border-bottom: none; |
16 | + text-transform: uppercase; |
|
31 | 17 | } |
32 | 18 | h1, |
33 | 19 | h2, |
34 | 20 | h3, |
35 | 21 | h4 { |
36 | - color: #5a7588; |
|
22 | + color: #cd6e42; |
|
37 | 23 | font-weight: normal; |
24 | + text-transform: uppercase; |
|
38 | 25 | } |
39 | -.markdown-body { |
|
40 | - font-size: 16px; |
|
26 | +#head h1 { |
|
27 | + font-size: 1.5em; |
|
41 | 28 | } |
42 | 29 | .markdown-body h2, |
43 | 30 | .markdown-body h3, |
44 | 31 | .markdown-body h4 { |
45 | - color: #5a7588; |
|
32 | + color: #646086; |
|
46 | 33 | font-weight: normal; |
47 | 34 | border-bottom: none; |
35 | + text-transform: uppercase; |
|
36 | +} |
|
37 | +.markdown-body h2 .fa-link, |
|
38 | +.markdown-body h3 .fa-link, |
|
39 | +.markdown-body h4 .fa-link { |
|
40 | + color: #3d4047; |
|
41 | +} |
|
42 | +.markdown-body h2 { |
|
43 | + font-size: 1.5em; |
|
48 | 44 | } |
49 | -.markdown-body h2 .fa-link { |
|
50 | - color: #abc0c5; |
|
45 | +.markdown-body h3 { |
|
46 | + font-size: 1.3em; |
|
47 | +} |
|
48 | +.markdown-body h4 { |
|
49 | + font-size: 1em; |
|
51 | 50 | } |
52 | 51 | a, |
53 | 52 | a:link, |
54 | 53 | a:visited { |
55 | - color: #776e89; |
|
54 | + color: #62a8b2; |
|
56 | 55 | } |
57 | 56 | a:active, |
58 | 57 | a:hover, |
59 | 58 | a:focus { |
60 | - color: #a29076; |
|
59 | + color: #33708c; |
|
61 | 60 | text-decoration: none; |
62 | 61 | } |
63 | 62 | .markdown-body code { |
64 | - background-color: #222222; |
|
65 | - color: #5c8676; |
|
66 | - font-family: 'envy'; |
|
63 | + background-color: #3d4047; |
|
64 | + color: #beced0; |
|
65 | + font-family: 'saxmono'; |
|
67 | 66 | font-size: 13px; |
68 | - padding: 5px 4px 2px 4px; |
|
69 | - border-radius: 0px; |
|
70 | - border-color: #222222; |
|
67 | + padding: 1px 1px 1px 1px; |
|
68 | + border-radius: 5px; |
|
69 | + border-color: #3d4047; |
|
71 | 70 | } |
72 | 71 | .markdown-body pre { |
73 | - background: #111111; |
|
74 | - color: #4f8396; |
|
75 | - font-family: 'envy'; |
|
76 | - border-radius: 0px; |
|
77 | - border-color: #444444; |
|
72 | + background: #161719; |
|
73 | + color: #dceef1; |
|
74 | + font-family: 'saxmono'; |
|
75 | + border-radius: 5px; |
|
76 | + border-color: #76b660; |
|
78 | 77 | border-width: 1px; |
79 | - border-style: none; |
|
80 | - border-left-style: solid; |
|
78 | + border-style: solid; |
|
81 | 79 | } |
82 | 80 | .markdown-body pre code { |
83 | - color: #4f8396; |
|
84 | - font-family: 'envy'; |
|
81 | + color: #dceef1; |
|
82 | + font-family: 'saxmono'; |
|
85 | 83 | white-space: pre-wrap; |
86 | 84 | } |
87 | 85 | .highlight .nt { |
88 | - color: #4f8396; |
|
86 | + color: #beced0; |
|
89 | 87 | } |
90 | 88 | .markdown-body ul { |
91 | - list-style: ':: ' |
|
89 | + list-style: '- ' |
|
90 | +} |
|
91 | +.markdown-body table thead { |
|
92 | + text-transform: uppercase; |
|
93 | + font-size: 16px; |
|
94 | + text-align: left; |
|
92 | 95 | } |
93 | 96 | .markdown-body table tr, |
94 | 97 | .markdown-body table tr:nth-child(2n) { |
95 | - background-color: #111111; |
|
98 | + background-color: #161719; |
|
96 | 99 | } |
97 | 100 | .markdown-body table tr th, |
98 | 101 | .markdown-body table tr td { |
99 | - border: 1px solid #444444; |
|
102 | + border: 1px solid #3d4047; |
|
100 | 103 | } |
101 | 104 | .minibutton a { |
102 | - background: #111111; |
|
103 | - color: #abc0c5; |
|
105 | + background: #161719; |
|
106 | + color: #beced0; |
|
104 | 107 | border: none; |
105 | 108 | text-shadow: none; |
106 | - text-transform: lowercase; |
|
107 | 109 | } |
108 | 110 | .minibutton a:active, |
109 | 111 | .minibutton a:hover, |
110 | 112 | .minibutton a:focus { |
111 | - background: #111111; |
|
112 | - color: #a29076; |
|
113 | + background: #161719; |
|
114 | + color: #33708c; |
|
113 | 115 | border: none; |
114 | 116 | text-shadow: none; |
115 | 117 | } |
116 | 118 | #head #searchbar div#searchbar-fauxtext { |
117 | - border-color: #222222; |
|
118 | - background: #222222; |
|
119 | + border-color: #3d4047; |
|
120 | + background: #161719; |
|
119 | 121 | } |
120 | 122 | #head #searchbar div#searchbar-fauxtext input#search-query, |
121 | 123 | #head #searchbar div#searchbar-fauxtext input#search-query.ph { |
122 | - background: #111111; |
|
123 | - color: #abc0c5; |
|
124 | - font-family: 'goudy_bookletter_1911regular'; |
|
124 | + background: #161719; |
|
125 | + color: #beced0; |
|
126 | + font-family: 'saxmono'; |
|
125 | 127 | } |
126 | 128 | #head #searchbar div#searchbar-fauxtext a#search-submit { |
127 | - background: #111111; |
|
128 | - border-color: #222222; |
|
129 | + background: #161719; |
|
130 | + border-color: #3d4047; |
|
129 | 131 | } |
130 | 132 | #head #searchbar div#searchbar-fauxtext a#search-submit span { |
131 | 133 | background-position: -431px -25px; |
132 | 134 | } |
133 | 135 | .results h1 strong { |
134 | - color: #4f8396; |
|
136 | + color: #76b660; |
|
135 | 137 | font-weight: normal; |
136 | 138 | } |
137 | 139 | .results p#no-results strong { |
138 | - color: #8b5c51; |
|
140 | + color: #8d3636; |
|
139 | 141 | font-weight: normal; |
140 | 142 | } |
143 | +#error { |
|
144 | + background-color: #161719; |
|
145 | + border: none; |
|
146 | +} |
|
147 | +#error h1 { |
|
148 | + color: #cd6e42; |
|
149 | +} |
|
141 | 150 | .page #footer { |
142 | 151 | border-top: none; |
152 | + margin-left: 10px; |
|
143 | 153 | } |
144 | 154 | #footer p#last-edit, |
145 | 155 | #footer p#last-edit b { |
146 | - color: #444444; |
|
156 | + color: #3d4047; |
|
147 | 157 | font-weight: normal; |
148 | 158 | } |
fonts/saxmono-webfont.woff
... | ... | Binary files /dev/null and b/fonts/saxmono-webfont.woff differ |
technology/linux/audio_visual/ffmpeg.md
... | ... | @@ -25,3 +25,9 @@ ffmpeg -f alsa -ac 2 -i alsa -f x11grab -r 15 -i :0.0 -acodec libmp3lame -vcode |
25 | 25 | ``` |
26 | 26 | ffmpeg -i videofile.mp4 videofile.webm |
27 | 27 | ``` |
28 | + |
|
29 | +### adjust crf |
|
30 | +adjust constant rate factor to lower bit rate |
|
31 | +``` |
|
32 | +ffmpeg -i input.mp4 -vcodec libx264 -crf 20 output.mp4 |
|
33 | +``` |
technology/linux/general/keymaps.md
... | ... | @@ -1,12 +1,21 @@ |
1 | 1 | # keymaps |
2 | 2 | |
3 | -check keymaps |
|
3 | +## check keymaps |
|
4 | 4 | ``` |
5 | 5 | localectl status |
6 | 6 | ``` |
7 | 7 | |
8 | -changes required to load keys |
|
8 | +## changes required to load keys |
|
9 | 9 | ``` |
10 | 10 | vconsole.conf |
11 | 11 | /etc/X11/xorg.conf.d/00-keyboard.conf |
12 | 12 | ``` |
13 | + |
|
14 | +## use capslock as escape and control |
|
15 | +using xcape capslock can be set to 'escape' when tapped and 'ctrl' when help down. |
|
16 | +``` |
|
17 | +setxkbmap -option ctrl:nocaps |
|
18 | +xcape -e 'Control_L=Escape' |
|
19 | +``` |
|
20 | + |
|
21 | +[ref](https://www.dannyguo.com/blog/remap-caps-lock-to-escape-and-control) |
technology/linux/general/ssh.md
... | ... | @@ -34,6 +34,13 @@ ssh -X user@host |
34 | 34 | ``` |
35 | 35 | - on server side `X11Forwarding` must be set to `yes` in '/etc/ssh/sshd_config' |
36 | 36 | |
37 | +## ssh host fingerprint |
|
38 | +to find the fingerprint of a host |
|
39 | +``` |
|
40 | +sudo ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key |
|
41 | +sudo ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key |
|
42 | +``` |
|
43 | + |
|
37 | 44 | ## remote host id has changed |
38 | 45 | if the fingerprint for the remote host has changed (and you are sure it's not |
39 | 46 | a mitm attack) run the following to remove from 'known_hosts' |
technology/networking/subnet_cheatsheet.md
... | ... | @@ -2,6 +2,7 @@ |
2 | 2 | |
3 | 3 | https://oav.net/mirrors/cidr.html |
4 | 4 | |
5 | +``` |
|
5 | 6 | Netmask Netmask (binary) CIDR Notes |
6 | 7 | _____________________________________________________________________________ |
7 | 8 | 255.255.255.255 11111111.11111111.11111111.11111111 /32 Host (single addr) |
... | ... | @@ -40,7 +41,9 @@ _____________________________________________________________________________ |
40 | 41 | 192.0.0.0 11000000.00000000.00000000.00000000 /2 |
41 | 42 | 128.0.0.0 10000000.00000000.00000000.00000000 /1 |
42 | 43 | 0.0.0.0 00000000.00000000.00000000.00000000 /0 IP space |
44 | +``` |
|
43 | 45 | |
46 | +``` |
|
44 | 47 | Net Host Total |
45 | 48 | Net Addr Addr Addr Number |
46 | 49 | Class Range NetMask Bits Bits of hosts |
... | ... | @@ -59,8 +62,10 @@ K 222-223 255.255.255.254 31 1 2 (reserved) |
59 | 62 | (ref: RFC1375 & http://www.iana.org/assignments/ipv4-address-space ) |
60 | 63 | ( http://www.iana.org/numbers.htm ) |
61 | 64 | ---------------------------------------------------------- |
65 | +``` |
|
62 | 66 | |
63 | 67 | The current list of special use prefixes: |
68 | +``` |
|
64 | 69 | 0.0.0.0/8 |
65 | 70 | 127.0.0.0/8 |
66 | 71 | 192.0.2.0/24 |
... | ... | @@ -69,14 +74,16 @@ The current list of special use prefixes: |
69 | 74 | 192.168.0.0/16 |
70 | 75 | 169.254.0.0/16 |
71 | 76 | all D/E space |
72 | -(ref: RFC1918 http://www.rfc-editor.org/rfc/rfc1918.txt ) |
|
73 | -( or ftp://ftp.isi.edu/in-notes/rfc1918.txt ) |
|
74 | -(rfc search: http://www.rfc-editor.org/rfcsearch.html ) |
|
75 | -( http://www.ietf.org/ietf/1id-abstracts.txt ) |
|
76 | -( http://www.ietf.org/shadow.html ) |
|
77 | +``` |
|
78 | +- (ref: RFC1918 http://www.rfc-editor.org/rfc/rfc1918.txt ) |
|
79 | +- ( or ftp://ftp.isi.edu/in-notes/rfc1918.txt ) |
|
80 | +- (rfc search: http://www.rfc-editor.org/rfcsearch.html ) |
|
81 | +- ( http://www.ietf.org/ietf/1id-abstracts.txt ) |
|
82 | +- ( http://www.ietf.org/shadow.html ) |
|
77 | 83 | |
78 | 84 | |
79 | 85 | Martians: (updates at: www.iana.org/assignments/ipv4-address-space ) |
86 | +``` |
|
80 | 87 | no ip source-route |
81 | 88 | access-list 100 deny ip host 0.0.0.0 any |
82 | 89 | deny ip 0.0.0.0 0.255.255.255 any log ! antispoof |
... | ... | @@ -114,7 +121,9 @@ Martians: (updates at: www.iana.org/assignments/ipv4-address-space ) |
114 | 121 | deny ip 224.0.0.0 15.255.255.255 any log ! unless MBGP-learned routes |
115 | 122 | deny ip 224-239/8 0.255.255.255 any log ! IANA - Multicast |
116 | 123 | deny ip 240-255/8 0.255.255.255 any log ! IANA - Reserved |
124 | +``` |
|
117 | 125 | |
126 | +``` |
|
118 | 127 | filtered source addresses |
119 | 128 | 0/8 ! broadcast |
120 | 129 | 10/8 ! RFC 1918 private |
... | ... | @@ -127,8 +136,10 @@ filtered source addresses |
127 | 136 | 240.0.0.0/5 ! class E reserved |
128 | 137 | 248.0.0.0/5 ! reserved |
129 | 138 | 255.255.255.255/32 ! broadcast |
139 | +``` |
|
130 | 140 | |
131 | 141 | ARIN administrated blocks: (http://www.arin.net/regserv/IPStats.html) |
142 | +``` |
|
132 | 143 | 24.0.0.0/8 (portions of) |
133 | 144 | 63.0.0.0/8 |
134 | 145 | 64.0.0.0/8 |
... | ... | @@ -145,16 +156,18 @@ ARIN administrated blocks: (http://www.arin.net/regserv/IPStats.html) |
145 | 156 | 208.0.0.0/8 |
146 | 157 | 209.0.0.0/8 |
147 | 158 | 216.0.0.0/8 |
159 | +``` |
|
148 | 160 | ---------------------------------------------------------- |
149 | 161 | |
150 | 162 | well known ports: (rfc1700.txt) |
151 | - www.iana.org/assignments/port-numbers |
|
163 | + - www.iana.org/assignments/port-numbers |
|
152 | 164 | |
153 | 165 | protocol numbers: |
154 | - www.iana.org/assignments/protocol-numbers |
|
155 | - www.iana.org/numbers.htm |
|
166 | + - www.iana.org/assignments/protocol-numbers |
|
167 | + - www.iana.org/numbers.htm |
|
156 | 168 | |
157 | 169 | ICMP(Types/Codes) |
170 | +``` |
|
158 | 171 | Testing Destination Reachability & Status |
159 | 172 | (0/0) Echo-Reply |
160 | 173 | (8/0) Echo |
... | ... | @@ -205,12 +218,14 @@ ICMP(Types/Codes) |
205 | 218 | (30/0) Traceroute |
206 | 219 | (31/0) Conversion-Error |
207 | 220 | (32/0) Mobile-Redirect |
221 | +``` |
|
208 | 222 | |
209 | 223 | Ref: [RFC 792] [RFC 896] [RFC 950] [RFC 1016] |
210 | 224 | www.cisco.com/univercd/cc/td/doc/product/lan/cat6000/sw_5_3/cofigide/qos.htm#19774 |
211 | 225 | |
212 | 226 | |
213 | 227 | |
228 | +``` |
|
214 | 229 | Decimal system Prefix's |
215 | 230 | Factor Exponent Prefix |
216 | 231 | --------------------------------------------------- |
... | ... | @@ -236,9 +251,10 @@ Decimal system Prefix's |
236 | 251 | 0.000 000 000 000 000 000 000 001...10^-24...yocto |
237 | 252 | --------------------------------------------------- |
238 | 253 | |
239 | -Convert Fahrenheit <> Celsius: |
|
240 | - Celsius = (Fahrenheit - 32) / 1.8 |
|
241 | - Fahrenheit = (Celsius * 1.8) + 32 |
|
254 | +``` |
|
255 | +- Convert Fahrenheit <> Celsius: |
|
256 | + - Celsius = (Fahrenheit - 32) / 1.8 |
|
257 | + - Fahrenheit = (Celsius * 1.8) + 32 |
|
242 | 258 | |
243 | 259 | |
244 | 260 | last updated: 4jul02 |
technology/websites/httpd.md
... | ... | @@ -0,0 +1,6 @@ |
1 | +# httpd |
|
2 | + |
|
3 | +- view modules loaded into server |
|
4 | +``` |
|
5 | +httpd -l |
|
6 | +``` |