LinuxServer?

自分用(wiki.jsが飛んだ時用)のメモです。ちゃんとし内容はこちらから

OSのInstall

  • 今回はProxMox上のコンテナから。
    	- コンテナ絡みは[ProxMoxVE](/310-Linux/313-LinuxServer/LinuxServerSoft/ProxMoxVE#%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8Alxc)から。
     

設定

一般ユーザを追加

sudo adduser userName

sudo権限付与

sudo visudo
  • sudo htop でファンクションキーが効かないので以下も追加
    Defaults    env_keep += "TERM"

vim だけ先にインストール

sudo apt -y install vim
  • 右クリックで貼り付けられない対応
    	1. 以下を開く(もしくは作成)
    		 vi ~/.vimrc
    	1. 以下を追加(右クリックでは貼り付けできないので、<kbd>Shift</kbd> + <kbd>Insert</kbd>で貼り付け)
    		```
    		set clipboard=unnamed,autoselect
    		```

ネットワークの設定

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 ```

その他のネットワーク設定の場所

  • proxmox の lxc は、proxmox のコンソールから変更すること。じゃないと設定が戻ります。 1. NetworkManager(管理コマンド**無し**)
    	- ディレクトリ
    		```
    		/etc/NetworkManager/system-connections
    		```
    	- networkデーモンの再起動
    		```
    		sudo systemctl restart networkd-dispatcher.service
    		```
    1. NetworkManager(管理コマンド**有り**)
    	```
    	sudo nmtui
    	```
    1. netplan
    	```
    	/etc/netplan
    		```
    	- 適用
    		```
    		sudo netplan apply
    		```
    1. systemd, networkd,
    	```
    	/etc/network/interfaces
    		```
    	- リゾルバ(resolv)
    		```
    		/etc/resolv.conf
    		```

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

  • [NtpServer](/310-Linux/313-LinuxServer/LinuxServerSoft/NtpServer)

インストール

  • Ubuntu
    	```
    	sudo apt install ntp
    	```

設定

  • sudo vi /etc/ntp.conf
    	```
    	# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
    	# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
    	# more information.
    	#pool 0.ubuntu.pool.ntp.org iburst
    	#pool 1.ubuntu.pool.ntp.org iburst
    	#pool 2.ubuntu.pool.ntp.org iburst
    	#pool 3.ubuntu.pool.ntp.org iburst
    	
    	# Use Ubuntu's ntp server as a fallback.
    	#pool ntp.ubuntu.com
    	pool ntp.nict.jp iburst
    	
    	# Clients from this (example!) subnet have unlimited access, but only if
    	# cryptographically authenticated.
    	restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
    	```

設定反映(ntp再起動), 確認

  • ntp再起動
    	```
    	sudo systemctl restart ntp
    	```
  • 確認
    	```
    	ntpq -p
    	```

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

  • [Ldap](/310-Linux/313-LinuxServer/LinuxServerSoft/Ldap)

参考

Server

Install (以下 su - 権限)

``` yum install openldap openldap-servers openldap-clients ```

パスワードの準備

``` slappasswd ```

  • 入力内容
    	```
    	New password:[パスワード入力]
    	Re-enter new password:[パスワード入力]
    	{SSHA}3pVTGxVxrS7tFJXrp+sAA6EdSgO8y1NE
    	```

``` vi /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif ```

  • 下記を変更
    	```
    	olcRootPW: {SSHA}3pVTGxVxrS7tFJXrp+sAA6EdSgO8y1NE
    	```

DB 環境構築

  • バークレーDB、設定ファイルのコピー
    	```
    	cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
    	```

Service の起動

``` /etc/init.d/slapd start ```

loglevel の設定

LDAP の基本設定

``` ldapsearch -x -LLL -b 'olcDatabase={2}bdb,cn=config' -D cn=config -W ```

  • 上記で設定したディレクトリパスワードを入力 ``` Enter LDAP Password: dn: olcDatabase={2}bdb,cn=config objectClass: olcDatabaseConfig objectClass: olcBdbConfig olcDatabase: {2}bdb olcDbDirectory: /var/lib/ldap olcSuffix: dc=my-domain,dc=com olcAddContentAcl: FALSE olcLastMod: TRUE olcMaxDerefDepth: 15 olcReadOnly: FALSE olcRootDN: cn=Manager,dc=my-domain,dc=net ```

データ用ディレクトリの管理情報の変更

  • LDIF ファイルを準備し適用する方法
    	```
    	vi bdb-init.ldif -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
	```
  • GUI ツール、Apache Directory Studio
    	- これ、すごく便利です。
    		- [Apache Directory Studio](http://directory.apache.org/studio/)

初期データの登録(以下は CUI)

``` vi init.ldif ```

  • 入力内容
    	```
    	dn: dc=unix-power,dc=net
    	objectclass: dcObject
    	objectclass: organization
    	o: VIRTUAL CORPORATION
    	dc: unix-power
	dn: cn=Manager,dc=unix-power,dc=net
	objectclass: organizationalRole
	cn: Manager
	```
  • 登録は ldapadd コマンド
    	```
    	ldapadd -x -W -D "cn=Manager,dc=unix-power,dc=net" -f init.ldif
    	```
  • vi add.ldif
    	```
    	vi add.ldif
    	```
	```
	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
	```
  • vi groupadd.ldif
    	```
    	vi groupadd.ldif
    	```
	```
	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"
	```
  • vi useradd.ldif
    	```
    	vi useradd.ldif
    	```
	```
	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 対応

前提

  • CentOS6 でやります。
  • Client は AlmaLinux 8。
    	- 理由は RHEL8 相当はクライアントでldap情報を参照する際、SSL以上が必須なため。~
    	(SSL無しでできないか相当調べましたが無理でした。)

証明書の作成(ldap サーバー側)

  • 参考サイト
    	- 証明書の作成とコピー。少し読み変えて CentOS6 で動かします。
    		- [Simple steps to configure LDAPS with TLS certificates CentOS 7 Linux](https://www.golinuxcloud.com/configure-openldap-with-tls-certificates/)
  • 以下は全て root 権限で行う。 1. openssl のインストール
    	```
    	yum -y install openssl
    	```
    1. ディレクトリへ移動
    	```
    	cd /etc/pki/CA/
    	```
    1. index.txt の作成。(既にあったら消して作り直す)
    	```
    	touch index.txt
    	```
    1. serial file の初期化
    	```
    	echo 01 > serial
    	```
    1. ca.key の作成
    	```
    	openssl genrsa -out ca.key 4096
    	```
    1. ca.cert.pem の作成
    	```
    	openssl req -new -x509 -days 365 -key ca.key -out ca.cert.pem
    	```
    	- 最初は国。例: JP
    	- 県。例: Saitama
    	- 市。例: Sakado
    	- 会社名。例: Home
    	- 組織。例: Home
    	- Common name。host名など。例: hoge.domain.jp
    	- Mail address。例: (空白)Enter
    1. サーバー証明書の作成
    	- ディレクトリ移動
    	```
    	cd private/
    	```
    	- key の作成
    	```
    	openssl genrsa -out ldap.domain.jp.key 4096
    	```
    	- csr の作成
    	```
    	req -new -key ldap.domain.jp.key -out ldap.domain.jp.csr
    	```
    	- 1つ上のディレクトリへ移動
    	```
    	cd ..
    	```
    	- crt ファイルの作成
    		y を2回押す。
    		「Data Base Updated」と表示されれば完了。
    	``ca -keyfile ca.key -cert ca.cert.pem -in private/ldap.domain.jp.csr -out private/ldap.domain.jp.crt -extensions v3_ca``
    1. index.txt の確認
    	```
    	cat index.txt
    	```
    	- 例
    		```
    		V       220407123403Z           01      unknown /C=IN/ST=Karnataka/O=GoLinuxCloud/OU=Database/CN=server.example.com/emailAddress=admin@golinuxcloud.com
    		```
    1. 確認
    	1. 1
    		```
    		openssl verify -CAfile ca.cert.pem private/ldap.domain.jp.crt
    		```
    	1. 2
    		```
    		openssl x509  -noout -text -in private/ldap.domain.jp.crt  | grep -A 1 "Subject Alternative Name"
    		```
    1. openldap ディレクトリへコピー
    	1. 1
    		```
    		cp -v private/ldap.domain.jp.crt private/ldap.domain.jp.key /etc/openldap/certs/              
    		```
    	1. 2
    		```
    		cp -v ca.cert.pem /etc/openldap/cacerts/
    		```
    1. 現在のldap設定を確認
    	```
    	slapcat -b "cn=config" | egrep "olcTLSCertificateFile|olcTLSCertificateKeyFile"
    	```
    	- 例)
    		```
    		olcTLSCertificateFile: "OpenLDAP Server"
    		olcTLSCertificateKeyFile: /etc/openldap/certs/password
    		```
    1. openldap の設定を変更する ldif ファイルの作成
    	```
    	cd
    	```
    	
    	```
    	vim tls.ldif
    	```
    
    	```
    	dn: cn=config
    	changetype: modify
    	replace: olcTLSCertificateFile
    	olcTLSCertificateFile: /etc/openldap/certs/ldap.domain.jp.crt
    	
    	replace: olcTLSCertificateKeyFile
    	olcTLSCertificateKeyFile: /etc/openldap/certs/ldap.domain.jp.key
    	```
	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
	```

クライアント側の設定

  • 参考サイト
    	- openldap と SSL の設定
    		- [8 simple steps to configure ldap client RHEL/CentOS 8](https://www.golinuxcloud.com/ldap-client-rhel-centos-8/)
  • AlmaLinux8 で行いました。
  • 以下は全て root 権限で行うこと。 1. (クライアント) 関連ソフトのインストール
    	```
    	dnf -y install openldap-clients sssd sssd-ldap oddjob-mkhomedir openssl-perl
    	```
    1. (クライアント) openldap に証明書を入れるディクトリを作成する。
    	```
    	mkdir /etc/openldap/cacerts
    	```
    1. (サーバー側) 関連ファイルをクライアントにコピーする。
    	```
    	scp /etc/openldap/cacerts/ca.cert.pem ldap-client:/etc/openldap/cacerts/ca.cert.pem
    	```
    1. sssd.conf の設定
    	(SSLなので以下)
    	- (クライアント) vi /etc/sssd/sssd.conf
    		```
    		[sssd]
    		config_file_version = 2
    		services = nss, pam,autofs
    		domains = default
		[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 ```

  • 以下の行をコメント・アウトしたら直った。
    	```
    	SLAPD_URLS="ldapi:/// ldap:/// ldaps:///"
    	```

Client

common

  • ldap に loginshell を設定

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
	```
  • sudo vi /etc/pam.d/sshd
    	```
    	sudo vi /etc/pam.d/sshd  
    	```
	```
	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系

  • ubuntu
    	```
    	sudo apt-get install libpam-ldap libnss-ldap nss-updatedb libnss-db
    	```
  • debian
    	```
    	sudo apt install libnss-ldapd libpam-ldapd ldap-utils 
    	```
    	- 失敗した時の再設定
    		```
    		sudo dpkg-reconfigure ldap-auth-config
    		```
    1. Should debconf manage LDAP configuration?
    	```
    	<はい>
    	```
    1. LDAP server Uniform Resource Identifier:
    	```
    	ldap://123.456.789.012/
    	```
    1. Distinguished name of the search base:
    	```
    	dc=tar3,dc=net
    	```
    1. LDAP version to use:
    	```
    	3
    	```
    1. Make local root Database admin:
    	```
    	<はい>
    	```
    1. Does the LDAP database require login?
    	```
    	<いいえ>
    	```
    1. LDAP account for root:
    	```
    	cn=Manager,dc=tar3,dc=net
    	```
    1. LDAP root account password:
    	```
    	[LDAP root account password]
    	```
    1. The meanings for selections are:
    	```
    	<了解>
    	```
    1. Local crypt to use when changing passwords:
    	```
    	exop
    	```
    1. 以下を追加
    	```
    	sudo vi /etc/pam.d/sshd
    	```
	```
	# 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

  • [zabbix](/310-Linux/313-LinuxServer/LinuxServerSoft/zabbix)

postfix

  • [Mail-PostFIx-Dovecot-Rainloop](/310-Linux/313-LinuxServer/LinuxServerSoft/Mail-PostFIx-Dovecot-Rainloop)

logwatch

``` sudo apt install logwatch ```

ufw

  • まだwikiページ無しですが、基本的な機能だけ。
  • sudo ufw allow ssh
  • sudo ufw allow 10050
  • sudo ufw allow 10050/tcp

moose file system(mfs) のインストールと設定

  • [mooseFileSystem](/310-Linux/311-LinuxCommon/510-LinuxOsusumeSoft/mooseFileSystem) 1. ユーザーとグループを作ります
    	```
    	sudo groupadd -g 1001 mfs
    	sudo useradd -u 1001 -g 1001 mfs
    	```
    1. apt-get へ key のインポート
    	1. debian
    		```
    		sudo wget -O - https://ppa.moosefs.com/moosefs.key | sudo apt-key add -
    		```
  • client
    	```
    	sudo apt-get install moosefs-cli moosefs-client fuse
    	```

ProxMoxの場合は以下の手順でfuseを有効化

(これ、はまりました。。。3時間以上。。。) 1. コンテナー(仮想マシン) -> 「オプション」->「機能」をダブルクリック -> 「FUSE」をチェックオン -> 「OK」 1. 仮想サーバ(コンテナ)の再起動

ユーザーとグループの作成

``` sudo groupadd -g 1001 mfs sudo useradd -u 1001 -g 1001 mfs ```

Install

  • apt-get へ key のインポート
    	1. gnupgとcurlのインストール
    		(debianでは色々あるので、fuseは個別に入れておいた方が良いかも。。。)
    		```
    		sudo apt install gnupg curl fuse
    		```
    	1. キーの追加
    		```
    		sudo curl https://repository.moosefs.com/moosefs.key | sudo gpg -o /etc/apt/keyrings/moosefs.gpg --dearmor
    		```
    	1. apt-get の souce list へソースを追加
    		sudo で動かない場合は、「sudo su -」を実行してから。
    		```
    		sudo echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/moosefs.gpg] http://repository.moosefs.com/moosefs-3/apt/ubuntu/noble noble main" > /etc/apt/sources.list.d/moosefs.list
    		```
    	1. aptのupdate
    		```
    		sudo apt update
    		```
    	1. mfs clientのインストール
    		```
    		sudo apt install moosefs-client
    		```

mfs マウント先の作成

``` sudo mkdir /mnt/mfs ```

mfs のマウント

``` sudo mfsmount /mnt/mount -H master.tar3.net ```

fstabへ追記

  • sudo vi /etc/fstab
    	```
    	mfsmount     /mnt/mfs     fuse     defaults,mfsdelayedinit,mfsmaster=mfsmaster.tar3.net,mfsport=9421     0     0
    	```

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2025-07-07 (月) 18:39:43 (335d)