質問: vpsが危険にさらされていますか?設定が間違っていますか? 私はvpsを半年(教育目的で)レンタルしていて、それを安全に保つことについて可能な限り学ぼうとしています。最近、侵害されており、気付く前の1週間ほど誰かのプロキシとして使用されていたのではないかと思います。 ssh経由でログインおよびログアウトするユーザー「anonymous」および「nobody」からのログがあり、cpu使用率は文字通りチャートから外れていました。いずれにせよ、私はそれを再インストールし、それが再び起こるかどうかをテストするために私が知っているすべてを再適用しました、そして再インストール後の短い24時間以内に、私はそれがしたと思います。/var/log/auth.logからのそれぞれのログは、私を妄想的に感じさせます。oct 31 06:30:21 vultr su[24157]: successful su for nobody by root oct 31 06:30:21 vultr su[24157]: + ??? root:nobody oct 31 06:30:21 vultr su[24157]: pam_unix(su:session): session opened for user nobody by (uid=0) oct 31 06:30:21 vultr systemd: pam_unix(systemd-user:session): session opened for user nobody by (uid=0) oct 31 06:30:21 vultr systemd-logind[503]: new session 40 of user nobody. oct 31 06:30:24 vultr su[24157]: pam_unix(su:session): session closed for user nobody oct 31 06:30:24 vultr systemd-logind[503]: removed session 40. 朝の6時半に認証をするのは私ではなかったので、当然どこかでまためちゃくちゃになるのではないかと心配です...(注:rootの.bash_historyは疑わしいことを何も示していません。私が知る限り、ユーザーnobodyには.bash_historyがありません-間違っている場合は訂正してください)sshではパスワード認証が無効になっています。sshキー認証のみが可能です。そのため、誰かがまだアクセスを取得できているため、次に何を試すかについて本当に混乱しています(私は思います)。攻撃者が「nobody」ユーザーへのアクセスを取得したphpmyadminエクスプロイトについて この記事 を読みました。ただし、apacheログによると、phpmyadminページにアクセスする試みは行われておらず、記事の日付は2010年であり、現在phpmyadminページにもアクセスできないため、私の場合には当てはまらないと思います。 。ただし、apacheが受信するリクエストの種類は、少し心配です。例を次に示します(/var/log/apache2/access.logから)。192.99.144.140 - - [31/oct/2015:03:43:48 +0000] "propfind /webdav/ http/1.1" 405 569 "-" "webdav client" 185.25.151.159 - - [31/oct/2015:03:59:35 +0000] "get http://testp2.czar.bielawa.pl/testproxy.php http/1.1" 404 460 "-" "mozilla/5.0 (windows nt 5.1; rv:32.0) gecko/20100101 firefox/31.0" 61.228.95.69 - - [31/oct/2015:09:07:39 +0000] "connect 126mx00.mxmail.netease.com:25 http/1.0" 405 536 "-" "-" 185.25.151.159 - - [31/oct/2015:09:15:13 +0000] "get http://testp4.pospr.waw.pl/testproxy.php http/1.1" 404 457 "-" "mozilla/5.0 (windows nt 5.1; rv:32.0) gecko/20100101 firefox/31.0" 一方、私はこのようなものを期待しています:my ip - - [31/oct/2015:14:47:58 +0000] "get / http/1.1" 200 589 "-" "mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, like gecko) chrome/44.0.2403.130 safari/537.36" しようとして何が達成されるのかわかりません"get http://testp4.pospr.waw.pl/testproxy.php"私のサーバーから。 /var/www/htmlにはそのようなファイルやディレクトリはありません再インストール後に安全を確保するために行ったすべてのことをリストします。私が何か間違ったことをしたと思うか、まったく何もしていないかを指摘してください。私がしたこと: ubuntu15.04の新規インストール 公開鍵と秘密鍵のペアを生成する サーバー上のauthorized_keysファイルに公開鍵を追加します /etc/ssh/sshd_configでこれらの設定を変更して、パスワード認証を無効にし、sshキー認証のみを許可します permitrootlogin without-password rsaauthentication yes pubkeyauthentication yes passwordauthentication no リブート 必要なものを次の順序でインストールします。 zip unzip apache2 mysql-server php5 libapache2-mod-php5 openjdk-7-jdk gcc g++ screen vsftpd auditd デフォルトの/var/www/html/index.htmlを削除します vsftpdが機能するように構成します(ftpuserの強力なパスワードを持っています)。私はフォローしました digitaloceanからのこのチュートリアル mkdir /home/proj groupadd ftp-users chown root:ftp-users /home/proj chown root:ftp-users /var/www useradd -g ftp-users -d /home/proj ftpuser chown ftpuser /home/proj passwd ftpuser (add strong password) これらの設定を/etc/vsftpd.confで変更しました anonymous_enable=no local_enable=yes write_enable=yes chroot_local_user=no pam_service_name=ftp リブート 私が言及しなかった他のすべてはデフォルトであり、インストールされているすべてのソフトウェアは最新です。以前に表示したログが気になる場合はお知らせください。また、設定が正しくないかどうか、セキュリティをさらに向上させるために何ができるかを教えていただければ幸いです。さらに、あなたが長期的に非常に役立つであろう問題に関する良い記事を知っているなら。
回答: webサーバーの前で hiawatha webserver をreverse proxyとして実行します。ログで次のようなエクスプロイトをブロックします(「garbage」としてブロックされます)。91.196.50.33|sat 19 mar 2016 21:12:15 +0000|get http://testp3.pospr.waw.pl/testproxy.php http/1.1 host: testp3.pospr.waw.pl proxy-connection: keep-alive user-agent: mozilla/5.0 (windows nt 5.1; rv:32.0) gecko/20100101 firefox/31.0 accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 accept-language: pl,en-us;q=0.7,en;q=0.3 accept-encoding: gzip, deflate 別々のlxcコンテナ内でウェブサーバーとプロキシを実行して、プロセスをさらに分離します。php-fpmに組み込まれているchroot機能を使用します。 shell内でchrootを使用可能にしないでください sshポートをステルス 。/var/www/public_htmlをnoexec nosuid nodevとしてマウントします。