|
LinuxServer? 自分用(wiki.jsが飛んだ時用)のメモです。ちゃんとし内容はこちらから †OSのInstall †
設定 †一般ユーザを追加 †sudo adduser userName sudo権限付与 †sudo visudo
vim だけ先にインストール †sudo apt -y install vim
ネットワークの設定 †1. proxyの設定 - [参考サイト(プロキシクライアントの設定 : Ubuntu)](https://www.server-world.info/query?os=Ubuntu_24.04&p=squid&f=2) 1. proxy.shの作成 ``` sudo vim /etc/profile.d/proxy.sh ``` 1. 内容 ``` MY_PROXY_URL="http://prox.srv.world:3128" HTTP_PROXY=$MY_PROXY_URL HTTPS_PROXY=$MY_PROXY_URL FTP_PROXY=$MY_PROXY_URL http_proxy=$MY_PROXY_URL https_proxy=$MY_PROXY_URL ftp_proxy=$MY_PROXY_URL export HTTP_PROXY HTTPS_PROXY FTP_PROXY http_proxy https_proxy ftp_proxy ``` 1. 反映 ``` source /etc/profile.d/proxy.sh ``` 1. ipv6無効化 とりあえず無効化 †1. 編集 ``` sudo vi /etc/sysctl.conf ``` 1. 以下の内容を追加 ``` net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 ``` 1. 反映 ``` sudo sysctl -p ``` 再起動後も無効化 †準備 †1. ファイルを作成、編集 ``` sudo vi /etc/sysctl.d/60-ipv6-disable.conf ``` 1. 以下を追加 ``` net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1 net.ipv6.conf.lo.disable_ipv6=1 ``` 1. 反映確認 ``` sudo sysctl --system ``` 自動起動設定 †1. rc.localの末尾へ追記記載 ``` sudo vi /etc/rc.local ``` 1. 以下を末尾or新規に追加 ``` sudo sysctl --system ``` 1. 再起動して確認 sudo shutdown -r now 無効化されているか、確認するコマンド †``` ip addr ``` その他のネットワーク設定の場所 †
timezoneの変更 †``` sudo timedatectl set-timezone Asia/Tokyo ``` インストール続き †1. Ubuntu パッケージ情報のアップデート ``` sudo apt update ``` 1. 初期アップデートプログラムの適用 ``` sudo apt upgrade ``` 自分が必要なソフトのインストール1 †1. ntp : Network Time Protocol(時計合わせ機能のインストール) 1. ssh : ssh 接続プログラム 1. net-tools : ifconfig など基本的なコマンドをインストール 1. iftop : top コマンドのネットワーク版 1. iotop : top のディスク版 1. tmux : 1つの接続で複数画面にしたり、途中でsshが切断されてもセッションが保持されたり。。。 1. htop : 高機能top 1. glances : htop のさらに高機能版 ``` sudo apt -y install ntp ssh net-tools iftop iotop sysstat tmux htop glances ``` - tmux の時ファンクションキーが効かないので、以下も追加 ``` vi ~/.bashrc ``` ``` export TERM=xterm-256color ``` ntp †
インストール †
設定 †
設定反映(ntp再起動), 確認 †
ntp serverを指定して手動同期 †1. sudo systemctl stop ntpd 1. sudo ntpdate ntp.nict.jp 1. sudo systemctl start ntpd 1. sudo ntpq -p ntpdig: no eligible servers †
ldap †
参考 †
Server †Install (以下 su - 権限) †``` yum install openldap openldap-servers openldap-clients ``` パスワードの準備 †``` slappasswd ```
``` vi /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif ```
DB 環境構築 †
Service の起動 †``` /etc/init.d/slapd start ``` loglevel の設定 †
LDAP の基本設定 †``` ldapsearch -x -LLL -b 'olcDatabase={2}bdb,cn=config' -D cn=config -W ```
データ用ディレクトリの管理情報の変更 †
```
# 設定を行うDNを指定
dn: olcDatabase={2}bdb,cn=config
# このLDIFファイルで修正を行うことを宣言します
changetype: modify
# olcRootDNを書き換えることを指定し値を指定する
replace: olcRootDN
olcRootDN: cn=Manager,dc=unix-power,dc=net
# olcSuffixを書き換えることを指定し値を指定する replace: olcSuffix olcSuffix: dc=unix-power,dc=net # olcRootPWを追加することを指定し値を指定する
add: olcRootPW
olcRootPW: {SSHA}en/K3sLikQDCWk/lMmWLNh8svNQ+ggf0
```
初期データの登録(以下は CUI) †``` vi init.ldif ```
dn: cn=Manager,dc=unix-power,dc=net objectclass: organizationalRole cn: Manager ```
``` dn: ou=Users,dc=unix-power,dc=net objectclass: organizationalUnit ou: Users dn: ou=Groups,dc=unix-power,dc=net objectclass: organizationalUnit ou: Groups dn: ou=Computers,dc=unix-power,dc=net objectclass: organizationalUnit ou: Computers # ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f add.ldif Enter LDAP Password: adding new entry "ou=Users,dc=unix-power,dc=net" adding new entry "ou=Groups,dc=unix-power,dc=net" adding new entry "ou=Computers,dc=unix-power,dc=net ```
``` dn: cn=develop,ou=Groups,dc=unix-power,dc=net objectClass: posixGroup cn: develop gidNumber: 1000 dn: cn=sales,ou=Groups,dc=unix-power,dc=net objectClass: posixGroup cn: sales gidNumber: 1001 dn: cn=market,ou=Groups,dc=unix-power,dc=net objectClass: posixGroup cn: market gidNumber: 1002 # ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f groupadd.ldif Enter LDAP Password: adding new entry "cn=develop,ou=Groups,dc=unix-power,dc=net" adding new entry "cn=sales,ou=Groups,dc=unix-power,dc=net" adding new entry "cn=market,ou=Groups,dc=unix-power,dc=net" ```
```
dn: uid=takeda,ou=Users,dc=unix-power,dc=net
objectclass: posixAccount
objectclass: inetOrgPerson
sn: takeda
cn: kazuma
displayName: Takeda Kazuma
uid: takeda
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/takeda
loginShell: /bin/bash
userPassword: {CRYPT}B5fKzlwfatuy2
mail: takeda@unix-power.net
dn: uid=suzuki,ou=Users,dc=unix-power,dc=net
objectclass: posixAccount
objectclass: inetOrgPerson
sn: suzuki
cn: hajime
displayName: Suzuki Hajime
uid: suzuki
uidNumber: 1001
gidNumber: 1000
homeDirectory: /home/suzuki
loginShell: /bin/bash
userPassword: {CRYPT}B5fKzlwfatuy2
mail: suzuki@unix-power.net
dn: uid=tanaka,ou=Users,dc=unix-power,dc=net
objectclass: posixAccount
objectclass: inetOrgPerson
sn: tanaka
cn: takuya
displayName: Tanaka Takuya
uid: tanaka
uidNumber: 1002
gidNumber: 1000
homeDirectory: /home/tanaka
loginShell: /bin/bash
userPassword: {CRYPT}B5fKzlwfatuy2
mail: tanaka@unix-power.net
# ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f useradd.ldif Enter LDAP Password: adding new entry "uid=takeda,ou=Users,dc=unix-power,dc=net" adding new entry "uid=suzuki,ou=Users,dc=unix-power,dc=net" adding new entry "uid=tanaka,ou=Users,dc=unix-power,dc=net" ``` ssl 対応 †前提 †
証明書の作成(ldap サーバー側) †
1. ファイルの owner の変更 (CentOS6 だとユーザー名などは 「ldap」) ``` chown -R ldap:ldap /etc/openldap/certs chown -R ldap:ldap /etc/openldap/cacerts ``` 1. tls.ldif の適用 ``` ldapmodify -Y EXTERNAL -H ldapi:// -f tls.ldif ``` 1. もう1つの設定変更ファイルの作成 ``` vim tls-1.ldif ``` ``` dn: cn=config changetype: modify add: olcTLSCACertificateFile olcTLSCACertificateFile: /etc/openldap/cacerts/ca.cert.pem ``` 1. 適用 ``` ldapmodify -Y EXTERNAL -H ldapi:// -f tls-1.ldif ``` 1. 再度設定の確認 ``` slapcat -b "cn=config" | egrep "olcTLSCertificateFile|olcTLSCertificateKeyFile|olcTLSCACertificateFile" ``` 1. ldap config file の変更 (CentOS6 ではここの手順が違くてはまりました。。。 CentOS6 では、SLAPD_URLS を空白にしておく必要があります。 以下のSLAPD_LDAPS を yes に変更すれば、自動的に ldaps:/// が追加されます) ``` vi /etc/sysconfig/ldap ``` - 変更前 ``` SLAPD_LDAPS=no ``` - 変更後 ``` SLAPD_LDAPS=yes ``` 1. ldap.conf の変更 ``` vim /etc/openldap/ldap.conf ``` - 以下を追加。 ``` TLS_CACERTDIR /etc/openldap/certs TLS_CACERT /etc/openldap/cacerts/ca.cert.pem TLS_REQCERT allow ``` 1. slapd の再起動 ``` service slapd restart ``` クライアント側の設定 †
[nss] homedir_substring = /home [pam] [domain/default] id_provider = ldap autofs_provider = ldap auth_provider = ldap chpass_provider = ldap ldap_uri = ldaps://ldap.domain.jp:636 ldap_chpass_uri = ldaps://ldap.domain.jp:636 ldap_search_base = dc=domain,dc=jp ldap_id_use_start_tls = False ldap_tls_cacertdir = /etc/openldap/certs cache_credentials = True ldap_tls_reqcert = never entry_cache_timeout = 600 ldap_network_timeout = 3 ldap_connection_expire_timeout = 60 ``` 1. 権限の変更 ``` chmod 600 /etc/sssd/sssd.conf chown root:root /etc/sssd/sssd.conf ``` 1. (クライアント) ldap.conf の変更 - 「TLS_REQCERT never」 はオレオレ証明書なので必要。 ``` vi /etc/openldap/ldap.conf ``` ``` BASE dc=domain,dc=jp URI ldap://10.0.2.20 TLS_CACERT /etc/openldap/cacerts/ca.cert.pem TLS_CACERTDIR /etc/openldap/cacerts TLS_REQCERT never ``` 1. (クライアント) 証明書のリフレッシュ ``` openssl rehash /etc/openldap/cacerts ``` 1. (クライアント) sssd の設定を関連設定ファイルへ設定。 ``` authselect select sssd with-mkhomedir --force ``` 1. (クライアント) 関連サービスの実行 - sssd ``` systemctl enable sssd.service --now ``` - oddjobd ``` systemctl enable oddjobd.service --now ``` 1. (クライアント) ldap の user 名が引けるか確認 ``` id testUser ``` 1. (他のPCから) ログインできるか確認 ``` ssh testUser@clientComputer ``` error, daemon: listen(ldap:///, 5) failed errno=98 (Address already in use) †``` vim /etc/sysconfig/ldap ```
Client †common †
Redhat系 †``` sudo yum install openldap-clients nss-pam-ldapd ``` ``` sudo authconfig-tui ``` 1. ユーザー情報 ``` ユーザー情報 認証 │ [ ] キャッシュ情報 [ ] MD5 パスワードを使用 │ [*] LDAP を使用 [*] シャドウパスワードを使用 │ [ ] NIS を使用 [*] LDAP 認証を使用 │ [ ] IPAv2 の使用 [ ] Kerberos 5 を使用 │ [ ] Winbind を使用 [ ] 指紋読み取りを使用 │ [ ] Winbind 認証を使用 │ [*] ローカル認証は十分です │ [ ] TLS を使用 サーバー: ''ldap://123.456.789.012/'' ベース DN: ''dc=tar3,dc=net'' ``` 1. sudo vi /etc/pam.d/system-auth (もし中身にsssがあれば) ``` sudo vi /etc/pam.d/system-auth (もし中身にsssがあれば) ``` ``` #auth sufficient pam_sss.so use_first_pass auth sufficient pam_ldap.so use_first_pass #account [default=bad success=ok user_unknown=ignore] pam_sss.so account [default=bad success=ok user_unknown=ignore] pam_ldap.so #password sufficient pam_sss.so use_authtok password sufficient pam_ldap.so use_authtok #session optional pam_sss.so session optional pam_ldap.so ``` 1. sudo vi /etc/pam.d/password-auth (もし中身にsssがあれば) ``` sudo vi /etc/pam.d/password-auth (もし中身にsssがあれば) ``` ``` #auth sufficient pam_sss.so use_first_pass auth sufficient pam_ldap.so use_first_pass #account [default=bad success=ok user_unknown=ignore] pam_sss.so account [default=bad success=ok user_unknown=ignore] pam_ldap.so #password sufficient pam_sss.so use_authtok password sufficient pam_ldap.so use_authtok #session optional pam_sss.so session optional pam_ldap.so ``` 1. sudo vi /etc/nsswitch.conf ``` sudo vi /etc/nsswitch.conf ``` ``` #passwd: files sss passwd: files ldap #shadow: files sss shadow: files ldap #group: files sss group: files ldap #services: files sss services: files ldap #netgroup: files sss netgroup: files ldap #automount: files sss automount: files ldap ```
``` session required pam_mkhomedir.so skel=/etc/skel/ umask=0007 ``` 1. service の restart ``` sudo service nslcd restart ``` 1. 確認 ``` getent passwd ``` 1. ssh 経由でログインしてホームディレクトリが作られる事を確認 1. ホームディレクトリが作成されない時 ``` mkdir /home/userName ``` ``` sudo chown -R userName:GroupName /home/userName ``` - 必要に応じて ``` sudo visudo ``` Debian系 †
``` # Create home directory automatically. session required pam_mkhomedir.so skel=/etc/skel/ umask=0007 ``` 1. vim でクリップボードが効かない場合の設定を追記 ``` sudo vi /etc/skel/.vimrc ``` ``` set clipboard=unnamed,autoselect ``` 1. 変更 ``` sudo vi /etc/nsswitch.conf ``` ``` passwd: files ldap group: files ldap shadow: files ldap netgroup: ldap ``` 1. 確認 ``` getent passwd ``` 1. サービスの再起動 ``` systemctl restart nscd ``` 1. ssh 経由でログインしてホームディレクトリが作られる事を確認 1. ホームディレクトリが作成されない時 ``` mkdir /home/userName ``` ``` sudo chown -R userName:GroupName /home/userName ``` - 必要に応じて ``` sudo visudo ``` 1. sudo 時、password を2回聞かれる問題(useとtryの違い) ``` sudo vi /etc/pam.d/common-auth ``` 1. before ``` auth [success=1 default=ignore] pam_ldap.so use_first_pass ``` 1. after ``` auth [success=1 default=ignore] pam_ldap.so try_first_pass ``` 1. x ログイン時にユーザー名が表示されない - ctrl + alt + F1 を押してコンソールへ。一度、ldap ユーザーでログインする。 ApacheDirectoryStudio †setButton(GtkWidget*): アサーション `!_button._widget' に失敗しました。 †
トラブル †config_back_db_open: line 0: warning: cannot assess the validity of the ACL scope within backend naming context †1. ログの確認 ``` sudo less /var/log/ldap.log ``` 1. 以下のフォルダをバックアップから戻す - /var/lib/ldap ``` sudo cp -fr /mnt/backup/var/lib/ldap/# /var/lib/ldap/ ``` 1. ldapの再起動 ``` sudo service slapd restart ``` zabbix †
postfix †
logwatch †``` sudo apt install logwatch ``` ufw †
moose file system(mfs) のインストールと設定 †
ProxMoxの場合は以下の手順でfuseを有効化 †(これ、はまりました。。。3時間以上。。。) 1. コンテナー(仮想マシン) -> 「オプション」->「機能」をダブルクリック -> 「FUSE」をチェックオン -> 「OK」 1. 仮想サーバ(コンテナ)の再起動 ユーザーとグループの作成 †``` sudo groupadd -g 1001 mfs sudo useradd -u 1001 -g 1001 mfs ``` Install †
mfs マウント先の作成 †``` sudo mkdir /mnt/mfs ``` mfs のマウント †``` sudo mfsmount /mnt/mount -H master.tar3.net ``` fstabへ追記 †
|