• セキュリティ意識

    こんにちは

    最近のサポートページに書かれた内容から、ふと思ったのですが
    皆さん、パスワード変更してますか?
    公開されてるパスワードを使い続けるのは危険です。変更しましょう。簡単です。
    おそらく、ユーザーpiでログインしてるでしょから
    pi@smpd:~ $ passwd と実行するだけです。
    現在のパスワードを訪ねてくるので入力し、続けて新しいパスワードを2回入力します。

    ちなみに、私は公開鍵認証でログインしてます。パスワード認証より安全とされてます。
    ただ、私の場合、安全性と言うより、一々パスワードを入力しなくていいって横着な理由です・・・

  • @Cresson さん

    パスワードは必ず変更する派のジャイアンです。
    セキュアなはずのLANですが、どこにセキュリティホールが存在しているか分かったもんじゃありませんし、踏み台にされて悪事の片棒をかつがされるのは絶対に嫌ですから。
    ブログでも、折に触れて「パスワードは変更しておこう」と呼びかけてきました。

    でもパスワードを変更してる人って、どの位の割合なんでしょうね。低いんだろうなぁ...

  • @ジャイアン さん

    インストールガイドにパスワードの変更を促す文言を入れた方がいいかもしれませんね。

  • @Cresson さま
    まさに、パスワードはそのまま使っていました:scream:
    インターネットからはルータのファイアーウォール越しにアクセス出来ないだろうと軽く考えていましたが、
    やはり常時電源入だったらsshログインでデフォルトのパスワードなら入り放題ですよね。

    ところで、公開鍵認証の有効化方法について、「ググれ」と言われそうですが、是非説明を書いて頂きたくリクエストいたします。

  • 通常、外部(インターネット)からのパケットはルータでフィルタリングされる設定で運用されていると思います。

    ルータを買い替えたり、通信サービスを乗り換えたりしたときは、経路上のルータとフィルタリング設定を今一度把握されるのが重要かと思います。
    思わぬ穴が空いていたら、重大なリスクとなりますので。


    さて、symphonic-mpdのセキュリティリスクについてご説明しておきたいと思います。

    • セキュリティ更新をしていない(apt-get upgrade禁止)
      ⇨音質優先(独自にビルドしているライブラリの上書き防止)
    • ファイアウォール無効(iptables)
      ⇨音質優先(ネットワークのオーバーヘッドを排除)
    • ympdがrootで実行されている。ympdからroot権限で起動/停止など各種スクリプトを実行している。
      ⇨利便性優先/実装の簡素化
    • カーネルのセキュリティ機能無効化(メモリアドレスのランダム化、分岐予測の脆弱性対策 などなど)
      ⇨音質優先(カーネルのオーバーヘッドを排除)

    セキュリティ更新をしていない古いソフトウェアが稼働している以上、攻撃に晒されたら一瞬でrootを盗られると思っていただく必要があります。

    同様に、市販のNASでも古いLinuxで動いているというケースは珍しくないと思いますので、ご注意いただく必要があるかと思います。


    ネットワークをセキュアに保つには、

    • ルータで外部からの通信(ipv4/ipv6)をフィルタする

    • 不特定のインターネットサイトにアクセスする端末は、OSや各種ソフトウェアのセキュリティ更新を行い、ウィルス対策ソフトやパケットフィルタ(ローカルファイアウォール)を設定すること


    もしインターネットに公開しているサーバが自宅にあるなら、家庭内ネットワークからは切り離すべきでしょう。

  • @sunatomo さん

    クライアント側の設定がOS毎違うと思うので半端な説明になりますが、お許しください。

    1. サーバー側(smpd)で鍵を作成します。

    pi@smpd:~ $ ssh-keygen -t rsa

    パスワードを聞いてきますが、パスワード無しでログインする予定なら
    Enterでパスして構いません。
    .sshにid_rsa(秘密鍵)id_rsa.pub(公開鍵)2つのファイルが作成されます。

    1. id_rsa.pub(公開鍵)をauthorized_keysに結合します。(結合って言っても初 回なので実質リネームですが、結合で説明します)
       結合したら元のid_rsa.pubは不要なので削除します。
       パーミッションの設定をします。authorized_keysは600 .sshは700です。
      具体的には

    pi@smpd:~ $ cd .ssh
    pi@smpd:~/.ssh $ cat id_rsa.pub >> authorized_keys
    pi@smpd:~/.ssh $ rm id_rsa.pub
    pi@smpd:~/.ssh $ chmod 600 authorized_keys
    pi@smpd:~/.ssh $ chmod 700 ~/.ssh

    以上でサーバー側の設定は終わりです。
    何らかの方法でid_rsa(秘密鍵)をクライアント側にコピーします。
    以下クライアント側の設定なので、私の場合クライアントもLinuxなので
    Linuxの説明しかできません。あしからず
    コピーはscpを使います。

    ~]$ scp [email protected]:~/.ssh/id_rsa ~/.ssh/

    これで.sshにid_rsaがダウンロードされました。
    id_rsaは好きな名前に変更して構いません。仮にpiで説明します。
    パーミッションの設定をします。id_rsaは600 .sshは700です。
    具体的には

    ~]$ cd .ssh
    .ssh]$ chmod 600 id_rsa
    .ssh]$ chmod 700 ~/.ssh
    .ssh]$ mv id_rsa pi

    以上で設定完了です。
    実際アクセスしてみます。

    ~]$ ssh -i ~/.ssh/pi [email protected]

    ログインできましたか

  • @Cresson さん

    SSH接続時のパスワード関する問題提起ありがとうございました。
    「SSHで接続する (SSH connection)」の最後に変更の必要性を追加しておきました。詳細はこのスレッドを読むよう、リンクしてあります。
    僕も非変更派だったのですが、心を入れ替えます:sweat_smile: 。

  • 私はその昔、ルーターのログから、WANからの不正アクセスかどの位あるのかチェックしたことがあるのですが、想像を遥かに超えるアクセスがあることに大変驚いたことがあります。(同時にその全てがはねられていて安心もしましたが)
    普通に使っていれば不正アクセスを許すことはないと思いますが、敵もさるもので、あらゆる手練手管を使ってバックドアを仕掛けにきます(つまり何かをDLさせようとするわけですね)。
    そういう意味では、ヒューマンエラーこそが最大のセキュリティホールと言えると思うのですが、だからこそ転ばぬ前の杖で、考え得る安全策はとっておくべきと考えています。

    I used to check how many times there was unauthorized access from the WAN from router logs, but I was very surprised that there was access far beyond my imagination. (At the same time, I was relieved that all of them were hit.)
    If you use it normally, I don't think it will allow unauthorized access, but even enemies, and they use every kind of handpipe to set up a backdoor. (That is, they try to let us do something DL).
    In that sense, I think human error is the biggest security hole, but that's why I think that we should take possible safety measures with a cane before it falls.

  • @Cresson さま
    無理なリクエスト、快く対応頂き誠にありがとうございます。
    (意図としては「ここにログとして残れば最終的にはfaqにも纏められる」というところを期待してまして...)
    ご提示の通り動作確認いたしましたが、正常にログイン出来たことを確認しております。

    なお、Windows環境でTeratermやPutty使用時にキー生成を含めてやってみるというところでは、
    コチラに記載の方法で出来ますね。