Say I have a well updated Linux VPS serving HTTP content on port 80 using apache. What would I gain by enabling IPtables?   I can see no obscurity gains since the machine has a port open. Also, since the machine is constantly updated I trust the kernel to securely handle incoming requests on closed ports, which is reasonable right? I hear everywhere that I need to enable iptables but I fail to see the gains. Am I missing something?
I admin a handful of cloud-based (VPS) servers for the company I work for.   The servers are minimal ubuntu installs that run bits of LAMP stacks / inbound data collection (rsync). The data is large but not personal, financial or anything like that (ie not that interesting)  Clearly on here people are forever asking about configuring  and such like.   I use a bunch of approaches to secure the servers, for example (but not restricted to)   ssh on non standard ports; no password typing, only known ssh keys from known ips for login etc https, and restricted shells (rssh) generally only from known keys/ips servers are minimal, up to date and patched regularly use things like rkhunter, cfengine, lynis denyhosts etc for monitoring   I have extensive experience of unix sys admin. I'm confident I know what I'm doing in my setups. I configure /etc files. I have never felt a compelling need to install stuff like firewalls: iptables etc.  Put aside for a moment the issues of physical security of the VPS.  Q? I can't decide whether I am being naive or the incremental protection a fw might offer is worth the effort of learning / installing and the additional complexity (packages, config files, possible support etc) on the servers.  To date (touch wood) I've never had any problems with security but I am not complacent about it either.
Don't count non-printing characters, HTML comments or other content not displayed toward minimum character requirements A follow-up to , and an extension of .   shows that it is possible to circumvent minimum character requirements using null bytes.  Can we exclude such non-printing characters as ASCII NULL and other control characters from counting toward minimum character requirements?  Edit: Users have demonstrated that , unmatched or invalid HTML tags, and other content that is not displayed after Markdown parsing can be used to bypass such requirements as well.  Can we cover this case as well, except for links? I've set up the physics of a swinging wrecking ball and set the animation to run for 240 frames.  This was not long enough for the entire "swing" of the ball-and-chain.   I'm unable to reset the timeline, but I can set the end frame to (say) 1000 frames, but when I try to play the animation, the animation progress halts at frame 240 and I cannot get it to go any further.   There are no markers or keyframes in the timeline.  What should I do to "force reset" the animation-timeline, to allow changes to the length? Can a 64-bit OS run as a guest on a 64-bit VirtualBox host? Is it possible to run a 64-bit OS as a guest on a 64-bit machine with VirtualBox? I'm guessing it should be, but I'd like to make sure.  Do some virtualization technologies allow a single guest machine to use multiple cores? I guess it should be possible, but my VirtualBox open-source edition doesn't seem to do it. "Put me in touch with whomever created it"? He created it.  Put me in touch with him.   So which is correct and why:   Put me in touch with whomever created it. Put me in touch with whoever created it. Whitespace Problems With Script and Variables How to modify an invalid '/etc/sudoers' file? How does $e^{i x}$ produce rotation around the imaginary unit circle? Euler’s formula states that $e^{i  x} = \cos(x) + i \sin(x)$.  I can see from the MacLaurin Expansion that this is indeed true; however, I don’t intuitively understand how raising $e$ to the power of $ix$ produces rotation.  Can anyone give me an intuitive understanding? Is it true that for algebraic sets $V,W$ we have $I(V \times W ) =I(V) + I(W)$? This is a follow up question to my previous question  Let $k$ be a field and $V \subseteq \Bbb{A}^n$ and $W \subseteq \Bbb{A}^m$ be algebraic sets. Then it should be true that $I(V \times W ) = I(V) + I(W)$ where by $I(V)$ here we mean the extension of $I(V)k[x_1,\ldots,x_{m+n}]$. Now I believe I have proven this (see the proof at the bottom of my question) but when I look at Martin's answer , it is instead claimed that we  actually have  $$I(V \times W )= \sqrt{I(V) + I(W)},$$  and for $I(V) + I(W)$ to be a radical ideal we need $k$ to be algebraically closed.           My question is: What's going on here? I believe my claim is true even without the assumption that $k$ is algebraically closed.           Here's a proof user Sanchez told me of, which I have simplified:       First it is clear that we always have $I(V) + I(W) \subseteq I(V \times W)$. For the reverse inclusion consider a polynomial $f \in I(V \times W)$. Then we can always write $$f = \sum_{i=1}^n f_ig_i$$ where $f_i \in k[x_1,\ldots,x_n]$ and $g_i \in k[x_{n+1},\ldots,x_{m+n}]$. Now take any $b' \in W$. If for all $i$ we have $g_i(b') = 0$ then since $b'$ is arbitrary, $g_i \in I(W)$ for all $i$. Then $f \in I(W) \subseteq I(V ) + I(w)$ and we are done. Otherwise suppose there exists $b \in W$  and $i$ such that $g_i(b) \neq 0$. Then wlog we may suppose that  $g_1(b) \neq 0$.   Next, $\sum f_ig_i(b) = 0 $ on all of $V$ by assumption of $f \in I(V \times W)$. So $\sum f_i g_i(b) = p$ for some $p \in I(V)$. Now write $$f_1 = \frac{ p - g_2(b) f_2 + \ldots g_n(b)f_n}{g_1(b)}.$$  Substituting this for $f_1$ in $\sum f_ig_i$, followed by taking things mod $I(V)$ we get an  expression with only $n-1$ terms $\mod{I(V)}$. Continuing this process we will finally get an expression with $0$ terms $\mod{I(V)}$ so that $f \in I(V)$. This shows $I(V \times W) \subseteq I(V) + I(W)$ which completes the proof. How to exclude a package from apt-get autoremove? I'm in a situation where the list of orphaned packages to be removed by apt-get autoremove includes a package that I want to keep. Apparently I have accidentally removed a package which was depending on it. How can I now mark the package as explicitly desired, so that apt-get autoremove will not remove it? What does "Suit yourself" mean? I have two servers (both servers are on Windows OS):   Server_A running Oracle 12c Server_B running SQL Server 2014   I want these servers to be able to see each other, so I can SELECT anything I want in Server_A from Server_B and vice versa.  I only want the ability to run SELECT queries (not INSERT, UPDATE, DELETE or any DDL queries), and also if possible to EXECUTE procedures.  What options or technologies we have for achieving this issue and which one is better?    Tell me if any software I have to install or any configuration have to be set on each of servers. I appreciate explaining the instructions step by step. Evaluate: $\lim_{n\to\infty}\left({2\sqrt n}-\sum_{k=1}^n\frac1{\sqrt k}\right)$ Surjectivity implies injectivity and conversely Does someone know how to set a command block with a command inside using the setblock command?  I have created this code /setblock &lt;x&gt; &lt;y&gt; &lt;z&gt; command_block {TileEntityData:{Command:"testfor @p[_=1]"}} but it doesn't works.  Do someone know how to do that? Is it possible to prevent an NSURLRequest from caching data or remove cached data following a request? On iPhone, I perform a HTTP request using NSURLRequest for a chunk of data. Object allocation spikes and I assign the data accordingly. When I finish with the data, I free it up accordingly - however instruments doesn't show any data to have been freed!  My theory is that by default HTTP requests are cached, however - I don't want my iPhone app to cache this data.   Is there a way to clear this cache after a request or prevent any data from being cached in the first place?  I've tried using all the cache policies documented a little like below:  NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]]; theRequest.cachePolicy = NSURLRequestReloadIgnoringLocalCacheData;   but nothing seems to free up the memory! Why does the Euclidean algorithm work for polynomials? What is the proof? Suppose I know that I can find the $\gcd$ of two integers with the Euclidean algorithm. What is the 'extension' so I can use this method also for polynomials?  Edit: I found an easy answer with less rigor which is approachable without knowledge of matrices:    also the first 3 subchapters of Ubuntu installer can't find any disk on Dell XPS 13 9350 I am trying to install Ubuntu 14.04 / 15.10 on my Dell XPS 13 9350 (November 2015).  I created a bootable USB disk which boots fine but the installer and the file manager do not detect the hard drive.  What is the problem? How can I solve it? How To Get Notified When Hard Drives Fail In Dell PowerEdge Servers I have a Dell PowerEdge R415 and R515 and wondering how I can be alerted remotely when a hard drive fails in either server? Both are running RAID, so I need to be notified, so I can swap out the drive. Both servers only have the basic Baseboard Management Controller. Is this possible with a third party tool/software? Resistor circuit that isn't parallel or series How to include a PDF image into a PDFLaTeX document I am generating a PDF file using pdflatex and need to include another PDF file. The reason is that I have a graphMl file which I exported from yEd graph editor to a PDF file, named sample.pdf. The TeX code to be compiled with pdflatex is given below. I need to include that file at the start of the document.   \documentclass[a4paper,leqno,twoside]{article}  \usepackage[latin1]{inputenc} \usepackage[english]{babel} \usepackage{multirow}  \begin{document}   [% FOREACH st IN Service %]    Name,Id:   [% st.Id %], [% st.Name %]     des:   [% st.Description %]    Customers:  [% FOREACH softservice IN st.Customers %]   [% FOREACH swid IN softservice.SW %]  [% swid.Service %]   [% FOREACH st IN Service %][% IF swid.Service == st.Id %]     ([% st.Name %])     [% END %] [% END %][% END %][% END %]    Suppliers:    [% FOREACH shservice IN st.Suppliers %]    [% FOREACH sw IN shservice.SW %][% sw.Service %]     [% FOREACH st IN Service %][% IF sw.Service == st.Id %]([% st.Name %])      [% END %][% END %][% END %]    [% FOREACH hw IN shservice.HW %][% hw.Type %][% hw.Nr %][% END %]   [% END %]   \newpage   [% END %] \end{document}