2016年10月27日木曜日

Raspberry PiのIPアドレスを通知させてリモートする

ラズパイのIPアドレスを知る

ラズパイを弄っていると、いちいちhdmiケーブルを繋ぎマウスとキーボードを別途接続して。。。
というのが億劫になってきました。
そこで"xrdp"をラズパイにインストールしてリモートしようと思いつきました。(sshはなんか嫌なので

大抵のラズパイをいじっている人も直接触るのではなくリモートするなりして操作していると思いますが、
そのためにはいくつか必要なものがありますので健忘録も兼ねて残しておこうと思います。

Pythonを使ってIPアドレスを調べる

とりあえずipアドレスは"ifconfig"で見れます。
commands.getoutput('ifconfig')

IPアドレスを送信するプログラム

Pythonを使って指定のメールアドレスにラズパイのipアドレスをお知らせするプログラムを置いておきます。
Gmailをお使いの方はhost,port,smtpの変更は要りませんがyahooとかだと変更が必要です。

#!/Usr/bin/env python                                                                                 
# -*- coding: utf-8 -*-                                                                               

import smtplib
from email.mime.text import MIMEText
from email.Utils import formatdate
import commands

class sendGmail:
    username, password = 'your_email', 'your_password'

    def __init__(self, to, sub, body):
        host, port = 'smtp.gmail.com', 465
        msg = MIMEText(body)
        msg['Subject'] = sub
        msg['From'] = self.username
        msg['To'] = to

        smtp = smtplib.SMTP_SSL(host, port)
        smtp.ehlo()
        smtp.login(self.username, self.password)
        smtp.mail(self.username)
        smtp.rcpt(to)
        smtp.data(msg.as_string())
        smtp.quit()

if __name__ == '__main__':
    to = 'your_email'
    sub = 'Raspberry Pi Notification'
    body = commands.getoutput('ifconfig')
    sendGmail(to, sub, body)

xrdpのインストール

apt-getでxrdpをインストールします。
sudo apt-get install xrdp

その後はWindowsからリモートするなら"リモートデスクトップ"からログインします。
"コンピューター"の欄はホスト名(NetBIOS?)かIPアドレスを打ち込んでやればいいです。

あとはラズパイのユーザー名とパスワードを入力してエンター。
以上でラズパイをリモートする方法でした。

0 件のコメント:

コメントを投稿