番外:マキノ式Linux編

目的

WhiteBoxEnterpriseLinux4がインストールされているマシンに対して、ssh2、SAMBA、CVS、Javaの設定を行い基本的な開発環境を構築することを目的とする。
基本的には多くの部分でWBEL3やRHEL3、RHEL4、FC3、FC4でも利用できる設定である。

表記について

  • コンソール
    特に注意書きがない限り#はroot、$は一般ユーザによる実行を表す。

yum(Yellow dog Updater, Modified)の設定

  • yumのインストール
    インストール直後の状態ではyumはインストールされていないため、Disc4から手動でインストールする。
    #rpm -ivh /media/cdrom/WhiteBox/RPMS/yum-2.2.0-0.fc3.noarch.rpm
  • RPM-GPG-KEYのインポート
    #rpm -import /usr/share/rhn/RPM-GPG-KEY
  • yumリポジトリの設定
    #cp /etc/yum.repos.d/wbelmirrors.rpm /etc/yum.repos.d/riken.repo
    #vi /etc/yum.repos.d/riken.repo
    下記のように記述する。
    [base]
    name=White Box Enterprise Linux 4 - $basearch - Base
    baseurl=ftp://ftp.riken.jp/Linux/whitebox/4/en/os/$basearch/
    
    [updates-released]
    name=White Box Enterprise Linux 4 - $basearch - Released Updates
    baseurl=ftp://ftp.riken.jp/Linux/whitebox/4/en/updates/
    
    [Extras]
    name=White Box Enterprise Linux 4 - $basearch - Extras
    baseurl=ftp://ftp.riken.jp/Linux/whitebox/4/en/extras/
    
    [Debuginfo]
    name=White Box Enterprise Linux 4 - $basearch - Debuginfo
    baseurl=ftp://ftp.riken.jp/Linux/whitebox/4/en/debuginfo/
    • baseurl=「rikenのサーバ」とする。
    • $releasever4に置き換える。
  • yumの実行
    下記コマンドで、現在インストールされているものをupdateする。
    #yum update
  • yumの利用
    • パッケージを探すとき
      #yum search ソフト名
    • パッケージをインストールするとき
      #yum install ソフト名
    • パッケージを削除するとき
      #yum remove ソフト名

SSHの設定

  • sshd-configの設定
    #vi /etc/ssh/sshd_config
    下記の設定値とする。
    Protocol 2
    RSAAutentication yes
    PubkeyAuthentication yes
    PasswordAuthentication no
    UsePAM yes
    AllowTcpForwarding yes
  • PAMの設定
    PAM(Pluggable Authentication Modules)とは認証を統合的に行うためのモジュールであり、これを利用することにより個別のサービスごとに独自の認証を設定する必要がなくなる。http://www.itmedia.co.jp/help/tips/linux/l0230.html
    • sshdのPAM設定
      #vi /etc/pam.d/sshd
      最下行に下記を追加
      account required pam_access.so
    • PAMのaccessモジュールの設定
      #vi /etc/security/access.conf
      下記の行を記述
      -:ALL EXCEPT staff:ALL
      これはstaffグループに属するユーザ以外はすべて拒否するという設定である。詳しくはhttp://www.itmedia.co.jp/help/tips/linux/l0412.htmlを参照されたい
  • sshdの再起動
    #/etc/init.d/sshd restart
  • ssh2による接続
    SSH2を利用し、PasswordAuthentication?を不許可としているのでRSAによる公開鍵方式を利用する。
    このとき、すでにユーザは追加されているものとする。以降はユーザIDyamadaを例とする。
    • ユーザにグループを付加
      #usermod -G staff yamada
    • ユーザのRSA鍵を生成
      yamadaでログインする。
      $ssh-keygen -t rsa
      • keyファイルの生成先はデフォルト
      • Passphraseはパスワード以外の任意の文字列を入力
    • 公開鍵のコピー
      $cp -p .ssh/id_rsa.pub .ssh/authorized_keys
    • ローカルからの接続
      $ssh -l yamada -i .ssh/id_rsa localhost
      Passphraseの入力が促されるのでRSA鍵の生成時に入力したPassphraseを入力する。
    • RSA鍵の保存
      外部から接続するために.sshディレクトリをUSBメモリなどに保存しておく
    • 外部からの接続
      Puttyなどを利用して外部から接続する。詳しくは下記を参照のこと
    • ファイルのコピーなど
      sftpやscpにより行う。WindowsからであればWinSCPなどがある
    • 外部から接続できないとき
      • ファイアウォールでSSHポートを許可しているか?
        ルーターなどでポートを塞いでいるのであれば、WBELのファイアウォールを無効にしても構わない。

SAMBAの設定

  • swatのインストール
    #yum install samba-swat.i386
  • smbの起動設定
    RunLevel3と5で自動起動するように設定
    #chkconfig --level 35 smb on
    確認
    #chkconfig --list | grep smb
    3と5がonになっていれば問題ない
    smb             0:off   1:off   2:off   3:on    4:off   5:on    6:off
  • smbデーモンの起動
    #/etc/init.d/smb start
  • swat用のxinetdの設定
    • 設定の変更
      #vi /etc/xinetd.d/swat
      下記のように記述する。
      service swat
      {
              port            = 901
              socket_type     = stream
              wait            = no
              only_from       = 127.0.0.1 192.168.1.0
              user            = root
              server          = /usr/sbin/swat
              log_on_failure  += USERID
              disable         = no
      }
    • xinetdの再起動
      #/etc/init.d/xinetd restart
  • swatによるsambaの設定
    • ブラウザからswatを開きrootでログイン
      http://192.168.1.***:901
    • GLOBALSの設定
      swatの画面からGLOBALSを開き、詳細表示モードにする。下記項目に関してそれぞれ値を設定する。
      項目
      dos charsetCP943
      unix charsetUTF-8
      workgroup任意のワークグループ名
  • smb用のユーザ追加
    当該Linuxにユーザが存在することを前提とする。(例:yamada)
    • smbpasswdにユーザを追加
      #cat /etc/passwd | mksmbpasswd.sh | grep yamada >> /etc/samba/smbpasswd
    • 追加したユーザを有効化
      #smbpasswd -e yamada
      • yamadaのsambaパスワードを入力
  • Windowsからの接続
    \\192.168.1.***
    ユーザはyamada、パスワードは上記で入力したsambaパスワード

CVSの設定

  • cvsユーザの作成
    #adduser cvs
  • CVSリポジトリの初期化
    #su - cvs
    $chmod 770 /home/cvs
    $cvs -d /home/cvs init
  • xinetdにcvspserverを追加
    #vi /etc/xinetd.d/cvspserver
    下記のように記述する。
    service cvspserver
    {
            disable         = no
            socket_type     = stream
            wait            = no
            user            = root
            log_type        = FILE /var/log/cvspserver
            protocol        = tcp
            env             = '$HOME=/home/cvs'
            log_on_failure  += USERID
            port            = 2401
            server          = /usr/bin/cvs
            server_args     = -f --allow-root=/home/cvs pserver
    }
  • xinetdの再起動
    #/etc/init.d/xinetd restart
  • 外部ネットワークから接続する方法
    基本的にポート2401をオープンにすることは望ましくないので、Putty等によるsshポート転送を行うことによって実現する。
  • eclipseからのsshext接続に関して
    現状ではecipseのssh接続はssh1にしか対応していないため当該構成では利用できない。ただしeclipse3.1からはssh2の鍵ペア方式にも対応している。

Java開発環境のインストール

JDK、ANT、MAVENのインストール作業自体は完了したものとする。

  • インストール先
    J2SDK 1.4.2_08/usr/local/j2sdk1.4.2_08
    JDK 1.5.0_04/usr/local/jdk1.5.0_04
    maven 1.0.2/usr/local/maven
    ant 1.6.5/usr/local/apache-ant
  • PATHの設定
    • .bash_profileに追加
      スケルトンに追加することにより、useradd時に新規ユーザの.bash_profileに自動的に追加される。
      #vi /etc/skel/.bash_profile
      (なお、すでに存在するユーザの場合はホームディレクトリの.bash_profileを編集)
      $vi ~/.bash_profile
      下記を最下部に追加
      #J2SE 1.4
      export JAVA_HOME=/usr/local/j2sdk1.4.2_08
      
      #J2SE 5.0
      #5.0を利用する場合は下記コメントアウトをはずす
      #export JAVA_HOME=/usr/local/jdk1.5.0_04
      
      #MAVEN
      export MAVEN_HOME=/usr/local/maven
      
      #ANT
      export ANT_HOME=/usr/local/apache-ant
      
      export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$ANT_HOME/bin

リロード   新規 編集 凍結 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Last-modified: 2010-03-14 (日) 07:00:31 (2718d)