ユーザ用ツール

サイト用ツール


サイドバー

vps:vps_06

prisoner desktop設定

prisonerのdesktopでssh経由のデスクトップサービスを提供する。

jail起動前の設定

jailerから各設定ファイルを直接編集する。各設定ファイルのプレフィックスは/usr/jail/desktopとなる。

  • etc/syslog.confでconsole出力をコメント化する。
    # *.err;kern.warning;auth.notice;mail.crit              /dev/console
  • etc/crontabで不要なcronをコメント化する。
    # 1,31  0-5     *       *       *       root    adjkerntz -a
  • etc/pw.confを新規作成する。prisoner内のuid, gidとjailerのuid, gidが同じになるとセキュリティ上の問題が発生するため、uid, gidの範囲を設定する。
    minuid 2201
    maxuid 2300
    mingid 2201
    maxgid 2300
  • etc/fstabをtouchで作成する。
  • etc/resolv.confを作成する。
    domain example.com
    nameserver aaa.bbb.ccc.ddd
    nameserver aaa.bbb.ccc.eee
  • etc/hostsにweb自身を登録する。
    127.0.0.1             localhost localhost.example.com
    192.168.100.2           desktop desktop.example.com
    192.168.100.2           desktop.example.com.
  • etc/rc.confを新規作成する。
    hostname="desktop.example.com"
    ifconfig_epair2b="inet 192.168.1.2 netmask 255.255.255.0"
    defaultrouter="192.168.1.254"
    sshd_enable="YES"
    firewall_enable="YES"
    firewall_type="open"
    dbus_enable="YES"
    hald_enable="YES"
    keymap="us.iso"
    • ifcofig_epair2b
      jailerで作成したepair2の一端。jailerからprisonerであるdesktopに割り当てる。
    • defaultrouter
      prisoner:fwをデフォルトルートとする。
    • firewall_type
      ipfwが有効になってしまうので、“open”を指定する。
  • etc/ssh/sshd_configを編集する。
    ChallengeResponseAuthentication no
    PermitUserEnvironment yes
    • PermitUserEnviroment
      XMODIFIERSを通すために設定する。
  • $HOME/.ssh/authorized_keysを設定する。
  • etc/make.confを編集する。
    WRKDIRPREFIX = /tmp
    DISTDIR      = /var/ports/distfiles
    PACKAGES     = /var/ports/packages
    INDEXDIR     = /var/ports
  • prisoner:desktopのports用ディレクトリを作成する。
    # mkdir /usr/jail/desktop/var/ports
    # mkdir /usr/jail/desktop/var/ports/distfiles
    # mkdir /usr/jail/desktop/var/ports/packages

jail起動スクリプト

prisoner:desktopを起動するスクリプトを用意する。

  • /home/<username>/Tools/04_desktop.sh
    #!/bin/sh
    
    jail -c vnet name="desktop" host.hostname="desktop.example.com" path=/usr/jail/desktop persist
    mount -t devfs devfs /usr/jail/desktop/dev
    mount -t procfs proc /usr/jail/desktop/proc
    
    ifconfig epair2b vnet desktop
    
    jexec desktop /bin/sh /etc/rc
    jexec desktop service netif start
    jexec desktop service routing start
    jexec desktop service syslogd start
    jexec desktop service newsyslog start
    jexec desktop service ipfw start
    jexec desktop service sshd start
    jexec desktop service sendmail stop
    jexec desktop service sendmail start

jail起動後の設定

04_desktop.shでprisoner:desktopを起動後、以下の設定を行う。

  • prisoner:desktopへ移動
    # jexec desktop /bin/sh
  • newaliasesの実行
    # newaliases
    /etc/mail/aliases: 27 aliases, longest 10byte, 275 bytes total
  • sysinstallでそれぞれ設定。
    • Root Password
    • User Management
    • Time Zone

デスクトップ環境

アプリ導入

通常使用するアプリを導入する。

  • ports-mgmt/portupgrade
  • x11/xorg
  • x11-wm/xfce4
  • net/tightvnc
  • finance/gnucash
  • japanese/ibus-anthy
  • japanese/font-ipa

vncserver設定

  • $HOME/.vnc/xstartupを作成する。
    #!/bin/sh
    vncconfig -nowin &
    startxfce4
    vncserver -kill ${DISPLAY}
  • 起動例
    $ vncserver -geometry 1280x800
  • スクリプト例 startvnc
    #!/bin/sh
    
    DISP=${1}
    
    if [ $# -ne 0 ]
    then
              case ${DISP} in
                      "0") GEO="800x600";;
                      "1") GEO="1024x768";;
                      "2") GEO="1280x800";;
              esac
    
              vncserver -geometry ${GEO}
    else
              echo "No ARG"
    fi

gnucash

  • 外部からのssh接続でgnucashを利用するため、$HOME/gnucash_x11.shを作成する。
    #!/bin/sh
    
    export LANG=ja_JP.UTF-8
    export LC_ALL=ja_JP.UTF-8
    export GTK_IM_MODULE=ibus
    export GTK_IM_MODULE=xim
    export XMODIFIERS=@im=ibus
     
    /usr/local/bin/gnucash
  • リモートのX11環境より以下の様に実行する。
    $ ssh -f -Y -i <秘密鍵> -p <ポート番号> <ユーザ名>@<接続先> <path>gnucash_x11.sh
vps/vps_06.txt · 最終更新: 2012/05/04 12:08 by dummy@dummy