Ubuntu

コマンド

date

# オプションなし。出力フォーマットはロケールの設定に依存。 $ date 2022年 8月 15日 月曜日 04:27:31 JST # rfc3339準拠フォーマット $ date --rfc-3339=date 2022-08-15 $ date --rfc-3339=second 2022-08-15 04:32:30+09:00 $ date --rfc-3339=ns 2022-08-15 04:32:43.192421485+09:00 # 任意のフォーマット $ date +"%Y/%m/%d %H:%M:%S.%3N" 2022/08/15 04:35:12.078 # XX年前の日付 $date -d "10 years ago" 2012年 8月 15日 水曜日 05:09:04 JST # XX月前後の日付 $ date -d "1 month" 2022年 9月 15日 木曜日 05:10:45 JST $ date -d "-1 month" 2022年 7月 15日 金曜日 05:14:54 JST # XX日前後の日付 $ date -d "1 day" 2022年 8月 16日 火曜日 05:11:22 JST $ date -d "tomorrow" 2022年 8月 16日 火曜日 05:13:44 JST # エポック時間から時刻を算出 $ date -d "@1660507944" 2022年 8月 15日 月曜日 05:12:24 JST
書式説明出力例
%y年(2桁)。22
%Y年(4桁)。2022
%m月(01~12)。08
%b月の略称。8月
※ロケールが英語圏ならAug
%B月の名称。8月
※ロケールが英語圏ならAugust
%d日付(01~31)。15
%H時(00~23)。04
%I時(01~12)。04
%p午前/午後。午前
※英語圏ならAM
%M分(00~59)。12
%S秒(00~59)。10
%sエポック時間。
※1970/1/1 00:00:00 UTCからの秒数
1660506114
%Nナノ秒(000000000~999999999)804346056
%w曜日。※0:日曜日~6:土曜日1
%a曜日の略称。
※ロケールが英語圏ならMon
%A曜日名称。月曜日
※ロケールが英語圏ならMonday
※数値の場合、-:パディングなし、_:空白でパディング、0:0でパディング
(例:%_m)

Tip

ディストリビューションやバージョンの確認

$ cat /etc/os-release NAME="Ubuntu" VERSION="20.04.5 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.5 LTS" VERSION_ID="20.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=focal UBUNTU_CODENAME=focal

※Linux共通

ユーザ追加

sudo adduser ユーザ名

※useraddコマンドもあるが、こちらはユーザ追加のみで/home配下にユーザディレクトリを作成してくれないので注意。

グループにユーザを追加

usermod -aG グループ ユーザ

※複数グループに追加する場合、カンマで区切る。

ユーザにsudo権限付与

# 下記のどちらかを実行 sudo gpasswd -a ユーザ名 sudo sudo usermod -aG sudo ユーザ名

※複数グループに追加する場合、カンマで区切る。

リモートデスクトップの設定(※Ubuntu24.10で確認)

初期機能のデスクトップの共有はユーザがログイン済みでないと不可。またリモートデスクトップは何故か画面が真っ黒で解消できなかったのでxrdpを導入する。

パッケージのインストール

$ sudo apt update $ sudo apt install xrdp xorgxrdp

xrdpの設定ファイル編集

$ sudo vi /etc/xrdp/startvm.sh
startvm.sh
+ export GNOME_SHELL_SESSION_MODE=ubuntu + export XDG_CURRENT_DESKTOP=ubuntu:GNOME

XRDPユーザをssl-certグループに追加

$ sudo gpasswd -a xrdp ssl-cert

ポート開放

任意の方法で3389ポートを開放する。

xrdpの再起動

$ sudo systemctl restart xrdp

firewalld(ファイアウォール)

Ubuntu xx.xxぐらいから入ってるファイアウォール。

ufw(ファイアウォール)

Ubuntu 22.xxぐらいから入ってるファイアウォール。

状態確認

$ sudo ufw status 状態: アクティブ

有効化/無効化

# 有効化 $ sudo ufw enable # 無効化 $ sudo ufw disable

初期設定

基本はデフォルトdenyに設定する。

$ sudo ufw default deny

設定内容の一覧表示

$ sudo ufw status numbered 状態: アクティブ To Action From -- ------ ---- [ 1] 8080 ALLOW IN Anywhere [ 2] 22 ALLOW IN Anywhere [ 3] 137/udp ALLOW IN Anywhere

アプリケーションプロファイルの一覧表示

$ sudo ufw app list 設定可能なアプリケーション: CUPS OpenSSH

ポート番号許可ルール追加

# 22番ポートからのtcp/udp両方許可 $ sudo ufw allow 22 # 22番ポートからのtcpのみ有効 $ sudo ufw allow 22/tcp # 22番ポートからのudpのみ有効 $ sudo ufw allow 22/udp # 192.168.1.11アドレスから22番ポートへのtcpのみ有効 $ sudo ufw allow from 192.168.1.11 to any port 22 proto tcp # 1000~1020番ポートからのudpのみ有効 $ sudo ufw allow 1000:1020/udp # プロファイル名から追加 $ sudo ufw allow OpenSSH

ポート番号許可ルール削除

一覧で表示した番号で削除ルールを指定する。

# 1番目のルールを削除 $ sudo ufw delete 1 #### 設定のリロード 変更した設定内容は、リロードして適用する。 ``` Shell Session $ sudo ufw reload

SSHの設定

パッケージのインストール

$ sudo apt install openssh-server

ポート開放

任意の方法で22番ポートを開放する。

鍵を生成

$ ssh-keygen -t rsa

サーバに鍵を配置

$ ssh-copy-id ユーザ名@サーバのIPアドレス

直接ファイルを転送などしてもOK

sshディレクトリ、鍵ファイルの確認

sshディレクトリはパーミッションが700となっていること。

$ ls -ld .ssh drwx------ 2 xxxxxx xxxxxx 4096 Sep 16 14:49 .ssh $ ls -l .ssh/ total 16 -rw------- 1 xxxxxx xxxxxx 2655 Sep 16 14:56 id_rsa -rw-r--r-- 1 xxxxxx xxxxxx 576 Sep 16 14:56 id_rsa.pub $ mv id_rsa.pub authorized_keys

秘密鍵はクライアント、公開鍵はサーバ側に配置する。
公開鍵はauthorized_keysというファイル名に変更する。

sshd_configの設定変更

/etc/ssh/sshd_configの最低限変更しておくところを記載する。

# Rootでのログインを禁止にする #PermitRootLogin yes PermitRootLogin no # パスワード認証を禁止にする。 #PasswordAuthentication yes PasswordAuthentication no

ポート番号も変えたほうがいいかもしれない。

ノートPCのディスプレイを閉じてもスリープさせたくない場合

/etc/systemd/logind.confを下記のように変更する。

logind.conf
- #HandleLidSwitch=suspend + HandleLidSwitch=suspend - #HandleLidSwitchExternalPower=suspend + HandleLidSwitchExternalPower=ignore - #HandleLidSwitchDocked=ignore + HandleLidSwitchDocked=ignore

設定ファイル修正後は下記のようにサービスを再起動する。

$ sudo systemctl restart systemd-logind

sambaの設定

$ sudo apt install samba

/etc/samba/smb.confを編集し、共有ディレクトリの設定を追記。

smb.conf
[share] comment = Shared Files path = /mnt/share guest ok = no read only = no writable = yes browseable = yes create mask = 0644 directory mask = 0755

設定をリロードする。

$ sudo systemctl reload smbd nmbd

※任意の方法でポート番号445にアクセスできるようにしてること。

ユーザ/パスワードを設定する。

$ sudo smbpasswd -a ユーザ名 New SMB password:       ★パスワードを入力 Retype new SMB password:    ★再度パスワードを入力

wifiオン/オフ

$ nmcli radio wifi on $ nmcli radio wifi off