Should you add MX entries for hosts in your (public) DNS?
For a long time, whenever we added a new server to our public DNS,we also added an MX entry for it (directing inbound email to ourgeneral external MX gateway). This was essentially historical habit,and I believe it came about because a very long time ago there werefar too many programs that would send out email with In I recently read Marek's Socket API thoughts , whichmulls over a number of issues and ends with the remark: But nonetheless, I very much like the idea of only blocking API'sbeing exposed to the user. This is definitely an attractive idea. All of the various attemptsat In addition to quotas on filesystems themselves ( Recently I wound up reading this article ( via ),which contains the following: [...] this memo assumes that there already exists an efficientconcurrency implementation where forking a new lightweight processtakes at most hundreds of nanoseconds and context switch takes tensof nanoseconds. Note that there are already such concurrency systemsdeployed in the wild. One well-known example are Golang's goroutinesbut there are others available as well. When designing APIs and similar things, it is quite important tounderstand that extremely lightweight processes One of the obvious things that you can do with CertificateTransparency is to monitor the CT logs for bad people somehow getting a certificatefor one of your websites. If you're Paypal or Google or the Universityof Toronto, and you see a CT log entry for a 'www.utoronto.ca'certificate that isn't yours, you can ring lots of alarms. You cando this with actual infrastructure (perhaps based on the actuallogs , and seealso , andalso ), or youcan Certificate Transparency is anincreasingly important part of the modern TLS world, especially forwebsite certificates (which I believe are still the dominant useof TLS certificates). One part of Certificate Transparency ismonitoring for certificates issued for your own sites and domains,but that's not the only use; another one is looking for certificatesissued to suspicious names. For instance, a bunch of people wouldprobably be interested if someone issued a certificate for Today I wound up reading Why it's hard for programmers to writea program to flatten a list? ( via ),where the quiz challenge put forward is to turn an input like Yesterday I posed the side question of whathappened when you called the following code with The intent of this code is to recursively flatten iterable things.What I had expected to get This is the kind of thing where it's easier to show you the log messagesfirst and discuss them later: Ubuntu recently released some of their usual not particularly helpfulkernel security update announcements and I tweeted : Another day, another tedious grind through Ubuntu kernel securityannouncements to do the assessment that Ubuntu should be doingalready. I have written about the general sorts of things we want to knowabout kernel security updates , but there'snothing like a specific example (and @YoloPerdiem asked ). Sohere is essentially the assessment email that I sent to my co-workers. First, the background. We currently have Ubuntu 1 From: andeven To: addresses of '
Why exposing only blocking APIs are ultimately a bad idea
select() style APIs have generally not gone well, high levelcallbacks give you 'callback hell', and it would be conceptuallynice to combine cheap concurrency with purely blocking APIs to haveour cake and eat it too
Some notes on ZFS per-user quotas and their interactions with NFS
refquota ) and quotason entire trees (plain quota ), ZFS also supports per-filesystem quotason how much space users (or groups) can use. We haven't previouslyused these for various reasons, but today we had a situation with aninaccessible runaway user process eating up all the free space in onepool on our fileservers and we decided to (tryto) stop it by sticking a quota on the user. The result was reasonablyeducational and led to
Cheap concurrency is an illusion (at least on Unix)
Using Certificate Transparency to monitor your organization's TLS activity
The conflict between wildcard TLS certificates and Certificate Transparency
www.really-its-paypal-login.com or geeglemail.com
How recursively flattening a list raises a Python type question
[1,[2,3], [4, [5,6]]] into [1,2,3,4,5,6] . My immediate reactionwas that I'd do this in Python rather than in any statically typedlanguage I know, because all of them make the input
In Python, strings are infinitely recursively iterable
flatten2(["abcdef",]) :def flatten2(inlst): olst = [] for i in inlst: try: it = iter(i) except TypeError: it = None if it is None: olst.append(i) else: olst.extend(flatten2(i)) return olst
A single email message with quite a lot of different malware
1chbMp-0007UF-Jw attachment application/msword; MIME file ext: .doc; zip exts: .rels .xml[3] none1chbMp-0007UF-Jw attachment application/msword; MIME file ext: .doc; zip exts: .rels .xml[3] none1chbMp-0007UF-Jw attachment
What an actual assessment of Ubuntu kernel security updates looks like
Menu