Mac からリモートで Linux を操る:
リモートデスクトップと ssh 設定

UB3/informatics/linux/usr

このページの最終更新日: 2024/09/30

  1. 概要
  2. 自宅の Linux に接続する
    • Ubuntu 18.04 open SSL の設定
    • コマンドラインでの接続
    • リモートデスクトップでの接続
    • オートログインの設定
  3. 職場の Linux に接続する

広告

概要

Linux に Mac から接続する場合、ssh による接続 (ターミナルを使用) と、デスクトップをシェアできるリモートデスクトップという少なくとも 2 つの方法がある。

また、私の場合は Linux が職場にある場合と自宅にある場合で状況が違ったので、それぞれの場合についてまとめた。

自宅の Linux に接続する

Ubuntu 18.04 open SSL の設定

まずは、このページ に従い Ubuntu 側で以下のコマンドを実行。ssh 接続を受け入れるため に必要な設定である。

sudo apt-get install openssh-server

sudo ssh -V で openSSH のバージョン情報が表示されれば、インストールは正常に行われている。


コマンドラインでの接続

その後、ifconfig で IP アドレスをチェックし、Mac から以下のように ssh で接続を試みる。

ssh -l username IP

username には、Ubuntu での実際のユーザー名を、IP には ifconfig で出てきた Ubuntu マシンの IP アドレスを 01.02.03.04 のように入れる。username@IP という入力もあるようで、よくわからないので両方試す。

自宅に置いた Linux に、同じネットワーク上にある Mac から接続を試みた場合、どちらのコマンドを使っても一発で接続できた。Linux の IP アドレスは、ルーターから自動で割り振られた 192.168... というよくある動的アドレスである。


Ubuntu 18.04 での静的 IP アドレス設定はとりあえず諦める

現状では、とりあえず自宅で同じネットワークに繋がっている Mac からアクセスできればよかったので、静的アドレスの設定は見送る。

ただし、ルーターによって自動で割り振られるアドレスが変わったときに備えて、ルーターにログインして Ubuntu のアドレスを見る方法をチェックした。


リモートデスクトップ

どのように設定したのか覚えていないが、Command + K からサーバーに接続する画面を開き、vnc://192.168.0.1:5900 のようにポート 5900 をつける。パスワードを入力すれば接続できる。


オートログインの設定

アップデートの際、Linux を再起動しなければならないことがある。コマンドは sudo reboot でよい。

再起動後、パスワードを入力してログインすることになるが、コマンドライン、リモートデスクトップともにこれができない。再起動の時点で接続が切れてしまい、ログインしていないと再接続できないのである。

こうなってしまうと、結局モニターとキーボードを繋いでログインしなければならない。これが不便なので、オートログインを設定する。

  • Activities - Users で、ユーザーパネルへ。
  • 設定するアカウントを選び、Automatic Login を ON にする。

さらに、ディスク暗号化のパスワードも自動になるように設定したかったが、これは難しそうなので今後の課題にする。とりあえず確認したのは、Disk を起動してパーティションをチェックすると、このように二段になっている。これが暗号化されているディスクのようだ。

職場に置いた Linux

2018 年 5 月、Ubuntu 16.04 を使用。ただし、結局 Mac からの接続はできなかったという失敗談。おそらく、職場のネットワークのセキュリティではじかれていた。

まず、watarisein の日記の 該当ページ に従ってUbuntu 側の設定を行う。途中で vi エディタを使う場面が出てくるので、シェルスクリプトと vi エディタ のページを参考に。

すると、以下のようなエラーが。

ssh: connect to host 01.02.03.04 port 22: Connection refused

とりあえず、Ubuntu 側でファイアウォールの設定を確認。

sudo ufw status
sudo ufw enable
sudo ufw allow 22

などのコマンドを使用。

Firewall がアクセスを跳ね返しているのがこのエラーの原因の一つなのだが、これはちゃんとポート 22 が開いていることがわかった。

Mac から ping でシグナルを送ってみる。

ping IPaddress

止まらなくなり焦ったが、これは Control + C で止まる。信号が届いていないようで、365 packets transmitted, 0 packets received, 100.0% packet loss というメッセージが出た。

ps -A | grep sshd で 1272? 00:00:00 sshd というメッセージ。これは ssh デーモンが Ubuntu 側で起動しており、アクセスを待っている状態を示している (3)。

ping や traceroute も使ってみたが、たぶん大学内のサーバーがリモートアクセスを跳ね返しているような気がする。とりあえずはここで諦めることに。


広告

References

  1. Ubuntuでユーザーの確認・追加・削除・sudoに追加. Link: Last access 2018/04/02.
  2. コマンド「useradd」と「adduser」の違い. Link: Last access 2018/04/02.
  3. Ubuntu 日本語フォーラム、ssh. Link: Last access 2018/05/24.
  4. 【完全初心者向け】Linuxのrootユーザとは? Link: Last access 2019/07/30.

コメント欄

サーバー移転のため、コメント欄は一時閉鎖中です。サイドバーから「管理人への質問」へどうぞ。