前準備

Linuxサーバが貴方の所有物であればLinuxサーバに直接ログインして作業しても問題ありません。
貴方が、作業用PCとしてLinuxサーバを保持している場合には、sshクライアントの学習のために Linuxサーバにopensshパッケージを利用して、sshクライアント(teraterm)から作業して下さい。

opensshのインストールと起動

ubuntuをインストールしているサーバに作業用PCからリモートアクセスできるようにopensshサービスをインストールします。
管理者アカウント(ubuntuインストール時に作成したアカウント)でubuntuにログインして下さい。

インストール
$sudo apt-get install openssh-server
						
IPアドレスの確認
$ifconfig
Link encap:イーサネット  ハードウェアアドレス ff:ff:ff:ff:ff:ff
inetアドレス:192.168.109.4  ブロードキャスト:192.168.109.255  マスク:255.255.255.0
inet6アドレス: fe80::1ba4:3334:6564:bc7e/64
						
sshプロセスの起動確認
$sudo ps ax | grep sshd
  911 ?        Ss     0:00 /usr/sbin/sshd -D
						

sshクライアントの利用

TeraTermの説明のようにTeratermを起動し、 ubuntuにssh経由でアクセスします。
このときのアカウントは管理者アカウントを利用します。

ユーザとグループ

サーバにLinuxのディストリビューションubuntuをインストールした時には、最低2つのアカウント(ユーザ)が作成されます。 貴方が開発チームのリーダになったり、インラフチームになったときにインストールする作法を理解するために nginxなどのインストールするユーザーとグループをインストール前に作成します。

ユーザ名 ユーザID グループ名 グループID 説明
root 0 root 0 Linuxの最上位権限アカウント
Linuxインストール時に必ず作成される
OSに対する全操作が可能(OSの削除さえも!)
パッケージのインストール作業ではroot権限を直接利用しない。
hogefuga 1000 hogefuga 1000 Linux管理者のアカウント
Linuxインストール時に最初に作成した管理者アカウント
アカウント名は、管理者らしい名前であれば良い
例)admin,administrator,managerなど
デフォルトでsudo権限を付与されている。 個人のPCであればこのアカウントで作業しても良い。
infra01 1001 infrateam 1001 仮想インフラチームグループ
本サイトでは、このアカウントを作業者のアカウントとして作成します。

グループとユーザの作成

開発現場では、Linuxでrootアカウントと管理者アカウントを直接利用することは、まずありません。
インフラチームやネットワークチーム、共通チーム、開発チームなどのグループとグループ配下のアカウントを作成し、
それぞれの作業内容に応じた権限を付与して作業します。

インストール作業は、多くの場合にはインフラチームが作業をするケースが多いため、
インフラチームを想定したグループとアカウントを作成します。

管理者アカウントでログインした状態で以下の作業を実施します。

  1. グループ及びグループIDの確認
    これから作成するグループ名「infrateam」グループID「1001」のどちらかに重複した行が存在しないことを確認します。
    
    $ cat /etc/group | grep infra
    								
  2. 「インフラチーム」グループの作成
    ubuntuでは、グループID1000番台からアカウントに紐づいたグループが作成されます。
    インストール時に作成された管理者アカウントと管理者アカウントのグループは1000番に作成されます。
    新しくグループを作成する場合には、1001番からグループIDを生成します。
    グループの作成
    $ sudo groupadd -g 1001 infrateam
    								
    確認作業
    $ cat /etc/group | grep infra
    infrateam:x:1001:
    								
  3. 「インフラチーム」のアカウント作成
    作成した「infrateam」グループに所属するアカウントを新規に作成します。
    Linuxでは、useraddコマンドがアカウントを作成するコマンドです。
    useraddコマンドは、初期ディレクトリ及びそのシェルなどを手動で対応する必要があります。
    ubuntuでは、その手間を省略するためにadduserコマンドが存在します。
    アカウントの作成
    raita@raita-Inspiron-1525:~$ sudo adduser infra01 -gid 1001
    ユーザー `infra01' を追加しています...
    新しいユーザー `infra01' (1001) をグループ `infrateam' に追加しています...
    ホームディレクトリ `/home/infra01' を作成しています...
    `/etc/skel' からファイルをコピーしています...
    新しい UNIX パスワードを入力してください:*******
    新しい UNIX パスワードを再入力してください:*******
    passwd: パスワードは正しく更新されました
    infra01 のユーザ情報を変更中
    新しい値を入力してください。標準設定値を使うならリターンを押してください
            フルネーム []: infra work account01
            部屋番号 []:
            職場電話番号 []:
            自宅電話番号 []:
            その他 []:
    以上で正しいですか? [Y/n] y
    								途中のパスワード「******」は貴方が決めたパスワードです、忘れないようにして下さい。
    確認作業
    $ su infra01
    パスワード:
    $ id
    uid=1001(infra01) gid=1001(infrateam) groups=1001(infrateam)
    $ exit
    								
  4. アカウントにグループ追加
    新規に作成した「infra01」アカウントは、グループ「infrateam」に所属しただけの最低限の権限です。
    sudo(rootアカウントによるコマンドの実行)グループとadm(各種ログの閲覧)グループを付与します。
    管理者アカウントで以下のコマンドを実施します。
    グループの追加
    $  sudo gpasswd -a infra01 sudo
    $  sudo gpasswd -a infra01 adm
    								
    確認作業
    $ su infra01
    $ id
      uid=1001(infra01) gid=1001(infrateam) groups=1001(infrateam),4(adm),27(sudo)
    								
  5. sshクライアントの接続確認
    管理者アカウントでリモートログインしていたTeratermをexitコマンドでログアウトします。
    Teratermを起動し、新しく作成した「infra01」アカウントでubuntuサーバのssh経由でアクセスできるか確認します。

次頁以降では、本頁で作成した「infrateam」グループの「infra01」アカウントで作業をします。