映像制作 eラーニングのことならビズバレー
文字サイズの変更 標準 
大きい
ホーム > スタッフブログ
スタッフブログ
k.takahashi
k.taguchi
j.hashimoto
j.katou
y.hotate
m.kawai
s_inomata
m_muraoka
ビズバレーは、東京都 千代田区で活動する、映像制作、DVD、eラーニングを扱う会社です。

今回は、Debian Linux7.2を使い、一般ユーザーでroot権限の操作をできるように設定をしてみましょう。通常、CentOSでは、suでrootユーザーに変更して操作したり、Ubuntuでは、そのままsudoコマンドが使えたりしますが、Debianでは動作しません。

試しに、sudoでコマンドを実行してみると。下記のようになります。

taguchi@debian:/$ sudo apt-get update
[sudo] password for taguchi:
taguchi は sudoers ファイル内にありません。この事象は記録・報告されます。
taguchi@debian:/$

Debian では、sudoを実行できるユーザーは、既定では、rootと、sudoグループに限られています。つまり、sudoグループに所属させれば、利用することが簡単にできます。

このような感じですね。
root@debian:/etc# gpasswd -a taguchi sudo
ユーザ taguchi をグループ sudo に追加

ログオフ・ログインをし直して、もう一度、同じようにsudoでコマンドを実行してみましょう。
taguchi@debian:/etc$ sudo apt-get update
[sudo] password for taguchi:
ヒット http://ftp.jp.debian.org wheezy Release.gpg
ヒット http://ftp.jp.debian.org wheezy-updates Release.gpg
ヒット http://ftp.jp.debian.org wheezy Release
ヒット http://ftp.jp.debian.org wheezy-updates Release
ヒット http://ftp.jp.debian.org wheezy/main Sources
ヒット http://ftp.jp.debian.org wheezy/main amd64 Packages
ヒット http://ftp.jp.debian.org wheezy/main Translation-ja
ヒット http://ftp.jp.debian.org wheezy/main Translation-en
ヒット http://ftp.jp.debian.org wheezy-updates/main Sources
ヒット http://ftp.jp.debian.org wheezy-updates/main amd64 Packages/DiffIndex
ヒット http://ftp.jp.debian.org wheezy-updates/main Translation-en/DiffIndex
ヒット http://security.debian.org wheezy/updates Release.gpg
ヒット http://security.debian.org wheezy/updates Release
ヒット http://security.debian.org wheezy/updates/main Sources
ヒット http://security.debian.org wheezy/updates/main amd64 Packages
ヒット http://security.debian.org wheezy/updates/main Translation-en
パッケージリストを読み込んでいます... 完了
taguchi@debian:/etc$

このように動作するようになりました。Ubuntuでは、rootユーザを使わせないように、sudoで代用?していますが、元々の目的は、rootコマンドの一部を一般ユーザーに委譲したりすることで、リスクを軽減させることです。また、sudoでのコマンド処理は、ログに残るので何をしたかが分かるというメリットがあります。

ログファイルは、 /var/log/auth.log に溜まります。例えばこのような感じで見ることができます。一部抜粋。
Dec 10 13:50:33 debian sudo: taguchi : ユーザーが sudoers 内にありません ; TTY=pts/0 ; PWD=/home/taguchi ; USER=root ; COMMAND=/usr/bin/apt-get update
Dec 10 13:52:43 debian su[7106]: pam_unix(su:auth): authentication failure; logname=taguchi uid=1000 euid=0 tty=/dev/pts/1 ruser=taguchi rhost= user=root
Dec 10 13:52:45 debian su[7106]: pam_authenticate: Authentication failure
Dec 10 13:52:45 debian su[7106]: FAILED su for root by taguchi
Dec 10 13:57:53 debian su[7133]: + /dev/pts/1 root:taguchi
Dec 10 13:57:53 debian su[7133]: pam_unix(su:session): session opened for user taguchi by taguchi(uid=0)
Dec 10 13:58:02 debian sudo: taguchi : TTY=pts/1 ; PWD=/etc ; USER=root ; COMMAND=/usr/bin/apt-get update

さらに、このユーザーに、このコマンドだけ実行できるようにしたい、パスワードなしで実行したいなどを指定したい場合は、visudoというコマンドを使い編集を行います。

Debian7.1でファイヤーウォールの設定をしてみようと思います。外部からの接続を遮断する方法は、いくつかの方法がありますが、今回は、GUIで設定できるFirestarterを使ってみようと思います。似たようなものには、gufw というものもあります。

20130830-1
※ このデスクトップ環境は、xfce です。

インストール方法
Debianのデスクトップ環境で、「Synapticパッケージマネージャ」から、firestarterを検索します。パッケージが表示されるので、選択してインストールを行います。
コマンドラインからインストールする場合は、apt-get install firestarterと入力すればいいでしょう。

20130830-2

そうすると、「アプリケーションメニュー」の中に、Firestarterが登録されるので、選択して起動します。

20130830-3

起動ウィザードが立ち上がるため、進めていきます。

20130830-7

20130830-4

20130830-5

20130830-6

この画面がFirestarterの画面になります、ポリシーのタブから、許可するポートを設定します。

20130830-8

たとえば、SSHを許可する場合、プルダウンからSSHを選択するとポート番号22が自動的に入力されます。手動でポート番号を登録することもでき、特定のIPアドレスのみ許可をすることもできます。

20130830-9

SSHとHTTPをどこからでもアクセスできるように設定

20130830-10

稼働中は、アクセス拒否を行ったイベントも確認できるのでちょっと便利です。Firestarterは、開発が終了しているようで、gufwのほうがいいかも?しれませんがシンプルなので使いやすいと思います。