teematsu @ ウィキ
Debian
最終更新:
teematsu
バージョン
-
リリースについての説明
http://www.debian.org/releases/index.ja.html
-
バージョンの確認
/etc/debian_version を参照する。
ユーザ管理
http://www015.upp.so-net.ne.jp/unixlife/linux/de-user.html
シェルの変更
foobarのログインシェルを /bin/rbashに変更
chsh -s /bin/rbash foobar
または
usermod -s /bin/rbash foobar
sudo 設定
visudoを使う
http://homepage2.nifty.com/BASH/sol/tool/sudo_config.html
コンソールで日本語表示
modprobe vga16fb jfbterm
サーバ起動制御
起動しないようにする(/etc/rc?.d/からのリンクを削除)
update-rc.d -f foo remote
起動するようにする(/etc/rc?.d/からのリンクを作成)
update-rc.d foo default
gdmを自動起動させない
update-rc.d -f gdm remove
aptitude
リスト更新
aptitude update
インストール
aptitude install package-name
特定のバージョンをインストール
aptitude install package-name=version-number
情報表示
aptitude show package-name
もっとくわしく
aptitude -vv show package-name
変更履歴
aptitude changelog package-name
パッケージの検索
aptitude search pattern
aptitude search php- など
pattern
http://algebraicthunk.net/~dburrows/projects/aptitude/doc/ja/ch02s03s05.html#searchTermName
aptitude search '?name(^lib)' ⇒libで始まるもの
aptituce search ?installed ⇒インストール済みのもの
インストール済みのパッケージのインストールサイズを一覧で表示
.aptitude/configに以下の行を追加 aptitude::CmdLine::Package-Display-Format "%c%a%M %p# - %I - %d#";
以下のコマンドを実行 aptitude search ?installed --sort installsize
ダウンロード元の設定
/etc/apt/sources.listを書き換え。
deb http://ftp.jp.debian.org/debian/ lenny main deb-src http://ftp.jp.debian.org/debian/ lenny main deb http://security.debian.org/ lenny/updates main deb-src http://security.debian.org/ lenny/updates main deb http://volatile.debian.org/debian-volatile lenny/volatile main deb-src http://volatile.debian.org/debian-volatile lenny/volatile main
- lennyがEOLになったことの対応 http://mojavy.com/blog/archive/2012/06/1/
-
今は公開されなくなった昔のパッケージを取得したい
以下を参照してsources.listを書き換え
http://snapshot.debian.org/
削除
aptitude purge postfix
再設定
dpkg-reconfigure postfix
パッケージに含まれるファイル一覧
dpkg -L package
ファイルが所属するパッケージを見つける
dpkg -S /path/to/file
その他もろもろ
http://qref.sourceforge.net/Debian/quick-reference/ch-package.ja.html
パッケージの自動更新関連
- auto-apt
- puppet
ネットワーク設定
IPアドレスを固定的に指定する
/etc/network/interfaces
# The primary network interface auto eth0 iface eth0 inet static address 192.168.1.123 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-nameservers 192.168.1.2
インタフェース再起動
/etc/init.d/networking restart
参照
ファイアーウォール(iptables)
/etc/network/if-pre-up.d/iptables-up (ファイル名(iptables-up)は任意)
#!/bin/bash iptables -F # remove all rules iptables -Z # reset byte counters iptables -X # remove empty chains iptables -P INPUT DROP # Drop all input packets iptables -P OUTPUT ACCEPT # Allow all output packets iptables -P FORWARD DROP # Drop all forwarding packets iptables -A INPUT -i lo -j ACCEPT # Allow all packets from lo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # Allow packets belonging to established connections and # packets related to existing communication ssessoins iptables -A INPUT -p icmp -j ACCEPT # Allow ICMP (ping, etc) iptables -A INPUT -p tcp --dport 80 -j ACCEPT # Allow HTTP iptables -A INPUT -f -j ACCEPT # Allow fragment packets (excep first fragment)
実行権限の付与を忘れずに。
スクリプトの確認
/etc/init.d/networking restart
→ネットワークインタフェース再起動 このタイミングで上記スクリプトが実行される。
設定内容の確認
sudo iptables -L
または
sudo iptables-save
参照
- http://ktarn.www.linux.or.jp/JF/JFdocs/packet-filtering-HOWTO-7.html
- http://ore.saizensen.net/archives/275
外部からポートスキャンして確認
nmapを使う。Windows用GUI(Zenmap)付きもある
Zenmapの画面でProfileから以下を選択してそれぞれScanを実行
- Intense scan, all TCP ports (→TCP全ポート)
- Intense scan plus UDP (→TCP/UDP 1024番?までスキャン)
参照
- http://www.atmarkit.co.jp/fsecurity/rensai/view06/view01.html
- ポート状態の説明 https://nmap.org/man/jp/man-port-scanning-basics.html
- UDPスキャンの難しさや内容について
PPTP
サーバー
aptitude install pptpd
参照
※ サーバからクライアントにDNSサーバーアドレスを通知する必要が無ければ pptpd-options の ms-dns の行は不要と思われる。ms-winsも同様
クライアント
aptitude install pptp-linux
参照
- http://pptpclient.sourceforge.net/howto-debian.phtml
- http://www.tagus.org/pukiwiki/index.php?Debian#je51911c
ntp
手動の場合、ntpdate
自動の場合、ntp
ntpのサーバとしては、以下を利用するとよい。
便利コマンド
findコマンド
find 検索場所 検索条件 実行内容
例:
find ./ -name '.svn' -exec mv {} {}.bak \;
実行内容に -exec を指定した場合は、コマンドの最後に ; を書く。シェルで特別な文字のため、\; とする。 {}は検索されたファイルのパスに置換される。
シンボリックリンクを検索する
find . -type l
watch
定期的に画面消去・時刻表示しコマンドを実行。
screenコマンド
screen
^ac 新しいウィンドウ ^an 次 ^a数字 指定したウィンドウ ^aw 一覧 ^ad デタッチ
screen -ls 今動いているscreen一覧
screen -r 回復
SSH
自動切断されないようにする
ホームの .ssh/config
ServerAliveInterval 120
トンネル
ssh -N -g -L 201:192.168.32.12:80 user@host
ローカルのポート201をリモートの192.168.32.12:80に転送する。
- -L 転送する (逆向きの転送として -R もある)
- -g localhost以外からの接続も受け付ける
- -N SSHでリモートに接続後にシェルを起動しない。 ^C されるまで動作する。
- -f バックグラウンドで動く。この場合はkillで停止させる。
locale/lang
利用可能なもの一覧
locale -a
追加
dpkg-reconfigure locales