<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wiki.ipnp.su/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Andy</id>
		<title>pNp Wiki - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.ipnp.su/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Andy"/>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/w/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Andy"/>
		<updated>2026-04-15T03:33:55Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.27.4</generator>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2460</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2460"/>
				<updated>2020-04-28T08:10:32Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Конвертация p11 в pem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p12 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CertUtil ==&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2459</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2459"/>
				<updated>2020-04-28T08:01:01Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p11 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CertUtil ==&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2458</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2458"/>
				<updated>2020-04-28T07:59:54Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p11 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CertUtil ==&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2457</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2457"/>
				<updated>2020-04-28T07:59:04Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Получение SPKI pin для DNS-over-TLS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p11 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CertUtil ==&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighligh&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2456</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2456"/>
				<updated>2020-04-28T07:58:44Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p11 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CertUtil ==&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighligh&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Файл:Https://www.tutorialsteacher.com/Content/images/https/ssl-certificate-format.png|мини|Форматы сертификатов и их расширения]]&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2455</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2455"/>
				<updated>2020-04-28T07:55:54Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* CertUtil */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p11 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CertUtil ==&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[https://www.tutorialsteacher.com/Content/images/https/ssl-certificate-format.png]]&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2454</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2454"/>
				<updated>2020-04-28T07:54:57Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p11 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== CertUtil ===&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[https://www.tutorialsteacher.com/Content/images/https/ssl-certificate-format.png]]&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2453</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2453"/>
				<updated>2020-04-28T07:52:39Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Получение SPKI pin для DNS-over-TLS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Получение SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -showcerts -connect ipa-01.example.com:636 &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -outform PEM &amp;gt; /home/andy/ipa-01.example.com.pem&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Конвертация p11 в pem ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.key.pem -nocerts -nodes&lt;br /&gt;
# openssl pkcs12 -in mycert.p12 -out file.crt.pem -clcerts -nokeys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение отпечатка SSL сертификата с сервера ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -noout -md5 -fingerprint&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl x509 -in /home/andy/example.pem -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение crt и key из pfx ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -nocerts -nodes -out /home/andy/example.key&lt;br /&gt;
# openssl pkcs12 -in /home/andy/test.pfx -clcerts -nokeys -out /home/andy/example.crt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== CertUtil ===&lt;br /&gt;
==== Добавление сертификата в базу NSS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -A -n win.example.com -t CTcu -d /etc/openldap/certs/ -a -i /root/win2012.win.example.com.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение информации о SSL сертификате в человекочитаемом формате ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# certutil -L -n win.example.com -d /etc/openldap/certs/ -a | openssl x509  -text -noout&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Получение SPKI pin для DNS-over-TLS ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[https://www.tutorialsteacher.com/Content/images/https/ssl-certificate-format.png]]&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
[[https://www.tutorialsteacher.com/https/ssl-certificate-format О сертификатах]]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2452</id>
		<title>OpenSSL</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=OpenSSL&amp;diff=2452"/>
				<updated>2020-04-28T05:53:31Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: Новая страница: «== Получение SPKI pin для DNS-over-TLS == &amp;lt;code&amp;gt; openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Получение SPKI pin для DNS-over-TLS ==&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
openssl s_client -connect '145.100.185.16:853' &amp;lt; /dev/null 2&amp;gt; /dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Tftpd&amp;diff=2404</id>
		<title>Tftpd</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Tftpd&amp;diff=2404"/>
				<updated>2019-01-24T09:34:44Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Необходимость ==&lt;br /&gt;
Иногда, требуется некое программное обеспечение, отсуствующее&lt;br /&gt;
в репозитории, либо собранное не так, как требуется в данном, &lt;br /&gt;
конкретном, случае. Исходя из этого, для поддержания системы&lt;br /&gt;
в работоспособном состоянии и простоты сопровождения, &lt;br /&gt;
[http://computerlib.narod.ru/html/rpm.htm '''ВСЕГДА'''] небходимо собирать пакет&lt;br /&gt;
&lt;br /&gt;
== Specfile ==&lt;br /&gt;
 %define tftp tftpd&lt;br /&gt;
 &lt;br /&gt;
 Summary: The client for the Trivial File Transfer Protocol (TFTP)&lt;br /&gt;
 Name: tftp&lt;br /&gt;
 Version: 5.2&lt;br /&gt;
 Release: 7%{?dist}&lt;br /&gt;
 License: BSD&lt;br /&gt;
 Group: Applications/Internet&lt;br /&gt;
 URL: http://www.kernel.org/pub/software/network/tftp/&lt;br /&gt;
 Source0: http://www.kernel.org/pub/software/network/tftp/tftp-hpa/tftp-hpa-%{version}.tar.bz2&lt;br /&gt;
 Source1: tftpd.sh&lt;br /&gt;
 Source2: tftpd&lt;br /&gt;
 &lt;br /&gt;
 Patch0: tftp-0.40-remap.patch&lt;br /&gt;
 Patch2: tftp-hpa-0.39-tzfix.patch&lt;br /&gt;
 Patch3: tftp-0.42-tftpboot.patch&lt;br /&gt;
 Patch4: tftp-0.49-chk_retcodes.patch&lt;br /&gt;
 Patch5: tftp-hpa-0.49-fortify-strcpy-crash.patch&lt;br /&gt;
 Patch6: tftp-0.49-cmd_arg.patch&lt;br /&gt;
 Patch7: tftp-hpa-0.49-stats.patch&lt;br /&gt;
 Patch8: tftp-hpa-5.2-pktinfo.patch &lt;br /&gt;
 &lt;br /&gt;
 BuildRequires: tcp_wrappers-devel readline-devel autoconf&lt;br /&gt;
 &lt;br /&gt;
 %description&lt;br /&gt;
 The Trivial File Transfer Protocol (TFTP) is normally used only for&lt;br /&gt;
 booting diskless workstations.  The tftp package provides the user&lt;br /&gt;
 interface for TFTP, which allows users to transfer files to and from a&lt;br /&gt;
 remote machine.  This program and TFTP provide very little security,&lt;br /&gt;
 and should not be enabled unless it is expressly needed. &lt;br /&gt;
 &lt;br /&gt;
 %package server&lt;br /&gt;
 Group: System Environment/Daemons&lt;br /&gt;
 Summary: The server for the Trivial File Transfer Protocol (TFTP)&lt;br /&gt;
 Requires(post): chkconfig&lt;br /&gt;
 Requires(preun): chkconfig&lt;br /&gt;
 # This is for /sbin/service&lt;br /&gt;
 Requires(preun): initscripts&lt;br /&gt;
 Requires(postun): initscripts&lt;br /&gt;
 &lt;br /&gt;
 %description server&lt;br /&gt;
 The Trivial File Transfer Protocol (TFTP) is normally used only for&lt;br /&gt;
 booting diskless workstations.  The tftp-server package provides the&lt;br /&gt;
 server for TFTP, which allows users to transfer files to and from a&lt;br /&gt;
 remote machine. TFTP provides very little security, and should not be&lt;br /&gt;
 enabled unless it is expressly needed. &lt;br /&gt;
 &lt;br /&gt;
 %prep&lt;br /&gt;
 %setup -q -n tftp-hpa-%{version}&lt;br /&gt;
 %patch0 -p1 -b .zero&lt;br /&gt;
 %patch2 -p1 -b .tzfix&lt;br /&gt;
 %patch3 -p1 -b .tftpboot&lt;br /&gt;
 %patch4 -p1 -b .chk_retcodes&lt;br /&gt;
 %patch5 -p1 -b .fortify-strcpy-crash&lt;br /&gt;
 %patch6 -p1 -b .cmd_arg&lt;br /&gt;
 %patch7 -p1 -b .stats&lt;br /&gt;
 %patch8 -p1 -b .pktinfo&lt;br /&gt;
 &lt;br /&gt;
 %build&lt;br /&gt;
 autoreconf -fisv&lt;br /&gt;
 %configure&lt;br /&gt;
 make %{?_smp_mflags}&lt;br /&gt;
 &lt;br /&gt;
 %install&lt;br /&gt;
 rm -rf ${RPM_BUILD_ROOT}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_bindir}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man{1,8}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_initrddir}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tftpboot&lt;br /&gt;
 &lt;br /&gt;
 make INSTALLROOT=${RPM_BUILD_ROOT} SBINDIR=%{_sbindir} MANDIR=%{_mandir} INSTALL='install -p' install&lt;br /&gt;
 &lt;br /&gt;
 install -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/tftpd&lt;br /&gt;
 mv ${RPM_BUILD_ROOT}%{_sbindir}/in.tftpd ${RPM_BUILD_ROOT}%{_sbindir}/tftpd&lt;br /&gt;
 install -p -m 755 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/tftpd&lt;br /&gt;
 &lt;br /&gt;
 %post server&lt;br /&gt;
 # This adds the proper /etc/rc*.d links for the script&lt;br /&gt;
 /sbin/chkconfig --add %{tftp}&lt;br /&gt;
 &lt;br /&gt;
 %preun server&lt;br /&gt;
 if [ $1 -eq 0 ] ; then&lt;br /&gt;
     /sbin/service %{tftp} stop &amp;gt;/dev/null 2&amp;gt;&amp;amp;1&lt;br /&gt;
     /sbin/chkconfig --del %{tftp}&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 %postun server&lt;br /&gt;
 if [ &amp;quot;$1&amp;quot; -ge &amp;quot;1&amp;quot; ] ; then&lt;br /&gt;
     /sbin/service %{tftp} condrestart &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 || :&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 %clean&lt;br /&gt;
 rm -rf ${RPM_BUILD_ROOT} &lt;br /&gt;
 &lt;br /&gt;
 %files&lt;br /&gt;
 %doc README README.security CHANGES&lt;br /&gt;
 %{_bindir}/tftp&lt;br /&gt;
 %{_mandir}/man1/*&lt;br /&gt;
 &lt;br /&gt;
 %files server&lt;br /&gt;
 %doc README README.security CHANGES&lt;br /&gt;
 %config(noreplace) %{_sysconfdir}/sysconfig/tftpd&lt;br /&gt;
 %{_sbindir}/tftpd&lt;br /&gt;
 %{_mandir}/man8/*&lt;br /&gt;
 %attr(700,nobody,nobody) %dir %{_localstatedir}/lib/tftpboot&lt;br /&gt;
 %{_initrddir}/tftpd &lt;br /&gt;
 &lt;br /&gt;
 %changelog&lt;br /&gt;
 * Mon Feb 18 2013 Andrew Vedischev &amp;lt;andrey.vidischev@orange.com&amp;gt; - 5.2-7&lt;br /&gt;
 - repacked for RHEL 6.X, or CentOS 6.X&lt;br /&gt;
 - startup script added&lt;br /&gt;
 - removed xinet from buildreq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Startup script ==&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 #&lt;br /&gt;
 # tftpd        Startup script for tftp&lt;br /&gt;
 #&lt;br /&gt;
 # chkconfig:   2345 50 60&lt;br /&gt;
 # description: Starts, stops tftp server daemon&lt;br /&gt;
 # &lt;br /&gt;
 &lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides: tftpd&lt;br /&gt;
 # Required-Start: $local_fs $network $remote_fs&lt;br /&gt;
 # Required-Stop: $local_fs $network $remote_fs&lt;br /&gt;
 # Should-Start:&lt;br /&gt;
 # Should-Stop:&lt;br /&gt;
 # Default-Start: 2 3 4 5&lt;br /&gt;
 # Default-Stop: 0 1 6&lt;br /&gt;
 # Short-Description: IPv4 Trivial File Transfer Protocol server&lt;br /&gt;
 # Description: tftpd is a server for the Trivial File Transfer Protocol. \&lt;br /&gt;
 #              The TFTP protocol is extensively used to support remote booting \&lt;br /&gt;
 #              of diskless devices. The server is normally started by inetd, \&lt;br /&gt;
 #              but can also run standalone.&lt;br /&gt;
 #&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &lt;br /&gt;
 # Source function library.&lt;br /&gt;
 . /etc/rc.d/init.d/functions&lt;br /&gt;
 &lt;br /&gt;
 exec=&amp;quot;/usr/sbin/tftpd&amp;quot;&lt;br /&gt;
 prog=&amp;quot;tftpd&amp;quot;&lt;br /&gt;
 pidfile=&amp;quot;/var/run/tftpd&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [ -e /etc/sysconfig/$prog ] &amp;amp;&amp;amp; . /etc/sysconfig/$prog&lt;br /&gt;
 &lt;br /&gt;
 lockfile=/var/lock/subsys/$prog &lt;br /&gt;
 &lt;br /&gt;
 start() {&lt;br /&gt;
     [ -x $exec ] || exit 5&lt;br /&gt;
     [ -f $config ] || exit 6&lt;br /&gt;
     echo -n $&amp;quot;Starting $prog: &amp;quot;&lt;br /&gt;
     # if not running, start it up here, usually something like &amp;quot;daemon $exec&amp;quot;&lt;br /&gt;
     daemon --pidfile=&amp;quot;$pidfile&amp;quot; $exec -l -P &amp;quot;$pidfile&amp;quot; $TFTPD_OPTIONS&lt;br /&gt;
     retval=$?&lt;br /&gt;
     echo&lt;br /&gt;
     [ $retval -eq 0 ] &amp;amp;&amp;amp; touch $lockfile&lt;br /&gt;
     return $retval&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 stop() {&lt;br /&gt;
     echo -n $&amp;quot;Stopping $prog: &amp;quot;&lt;br /&gt;
     # stop it here, often &amp;quot;killproc $prog&amp;quot;&lt;br /&gt;
     killproc -p &amp;quot;$pidfile&amp;quot; $exec&lt;br /&gt;
     retval=$?&lt;br /&gt;
     echo&lt;br /&gt;
     [ $retval -eq 0 ] &amp;amp;&amp;amp; rm -f $lockfile&lt;br /&gt;
     return $retval&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 restart() {&lt;br /&gt;
     stop&lt;br /&gt;
     start&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 reload() {&lt;br /&gt;
     restart&lt;br /&gt;
 } &lt;br /&gt;
 &lt;br /&gt;
 force_reload() {&lt;br /&gt;
     restart&lt;br /&gt;
 } &lt;br /&gt;
 &lt;br /&gt;
 rh_status() {&lt;br /&gt;
     # run checks to determine if the service is running or use generic status&lt;br /&gt;
     status $prog&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 rh_status_q() {&lt;br /&gt;
     rh_status &amp;gt;/dev/null 2&amp;gt;&amp;amp;1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 case &amp;quot;$1&amp;quot; in&lt;br /&gt;
     start)&lt;br /&gt;
         rh_status_q &amp;amp;&amp;amp; exit 0&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     stop)&lt;br /&gt;
         rh_status_q || exit 0&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     restart)&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     reload)&lt;br /&gt;
         rh_status_q || exit 7&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     force-reload)&lt;br /&gt;
         force_reload&lt;br /&gt;
         ;;&lt;br /&gt;
     status)&lt;br /&gt;
         rh_status&lt;br /&gt;
         ;;&lt;br /&gt;
     condrestart|try-restart)&lt;br /&gt;
         rh_status_q || exit 0&lt;br /&gt;
         restart&lt;br /&gt;
         ;;&lt;br /&gt;
     *)&lt;br /&gt;
         echo $&amp;quot;Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}&amp;quot;&lt;br /&gt;
         exit 2&lt;br /&gt;
 esac&lt;br /&gt;
 exit $?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
[https://docs.fedoraproject.org/en-US/quick-docs/creating-rpm-packages/index.html Основы сборки и шаблоны для спеков и стартовых скриптов]&lt;br /&gt;
&lt;br /&gt;
[https://fedoraproject.org/wiki/EPEL:SysVInitScripts?rd=Packaging:SysVInitScript Шаблоны стартовых скриптов]&lt;br /&gt;
&lt;br /&gt;
[http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-creating-rpms.html RPM Guide]&lt;br /&gt;
&lt;br /&gt;
[https://src.fedoraproject.org/ Git репозиторий пакетов Fedora]&lt;br /&gt;
&lt;br /&gt;
[http://pkgs.org Один из источников SRPM'ов]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Tftpd&amp;diff=2403</id>
		<title>Tftpd</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Tftpd&amp;diff=2403"/>
				<updated>2019-01-24T09:31:07Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Необходимость ==&lt;br /&gt;
Иногда, требуется некое программное обеспечение, отсуствующее&lt;br /&gt;
в репозитории, либо собранное не так, как требуется в данном, &lt;br /&gt;
конкретном, случае. Исходя из этого, для поддержания системы&lt;br /&gt;
в работоспособном состоянии и простоты сопровождения, &lt;br /&gt;
[http://computerlib.narod.ru/html/rpm.htm '''ВСЕГДА'''] небходимо собирать пакет&lt;br /&gt;
&lt;br /&gt;
== Specfile ==&lt;br /&gt;
 %define tftp tftpd&lt;br /&gt;
 &lt;br /&gt;
 Summary: The client for the Trivial File Transfer Protocol (TFTP)&lt;br /&gt;
 Name: tftp&lt;br /&gt;
 Version: 5.2&lt;br /&gt;
 Release: 7%{?dist}&lt;br /&gt;
 License: BSD&lt;br /&gt;
 Group: Applications/Internet&lt;br /&gt;
 URL: http://www.kernel.org/pub/software/network/tftp/&lt;br /&gt;
 Source0: http://www.kernel.org/pub/software/network/tftp/tftp-hpa/tftp-hpa-%{version}.tar.bz2&lt;br /&gt;
 Source1: tftpd.sh&lt;br /&gt;
 Source2: tftpd&lt;br /&gt;
 &lt;br /&gt;
 Patch0: tftp-0.40-remap.patch&lt;br /&gt;
 Patch2: tftp-hpa-0.39-tzfix.patch&lt;br /&gt;
 Patch3: tftp-0.42-tftpboot.patch&lt;br /&gt;
 Patch4: tftp-0.49-chk_retcodes.patch&lt;br /&gt;
 Patch5: tftp-hpa-0.49-fortify-strcpy-crash.patch&lt;br /&gt;
 Patch6: tftp-0.49-cmd_arg.patch&lt;br /&gt;
 Patch7: tftp-hpa-0.49-stats.patch&lt;br /&gt;
 Patch8: tftp-hpa-5.2-pktinfo.patch &lt;br /&gt;
 &lt;br /&gt;
 BuildRequires: tcp_wrappers-devel readline-devel autoconf&lt;br /&gt;
 &lt;br /&gt;
 %description&lt;br /&gt;
 The Trivial File Transfer Protocol (TFTP) is normally used only for&lt;br /&gt;
 booting diskless workstations.  The tftp package provides the user&lt;br /&gt;
 interface for TFTP, which allows users to transfer files to and from a&lt;br /&gt;
 remote machine.  This program and TFTP provide very little security,&lt;br /&gt;
 and should not be enabled unless it is expressly needed. &lt;br /&gt;
 &lt;br /&gt;
 %package server&lt;br /&gt;
 Group: System Environment/Daemons&lt;br /&gt;
 Summary: The server for the Trivial File Transfer Protocol (TFTP)&lt;br /&gt;
 Requires(post): chkconfig&lt;br /&gt;
 Requires(preun): chkconfig&lt;br /&gt;
 # This is for /sbin/service&lt;br /&gt;
 Requires(preun): initscripts&lt;br /&gt;
 Requires(postun): initscripts&lt;br /&gt;
 &lt;br /&gt;
 %description server&lt;br /&gt;
 The Trivial File Transfer Protocol (TFTP) is normally used only for&lt;br /&gt;
 booting diskless workstations.  The tftp-server package provides the&lt;br /&gt;
 server for TFTP, which allows users to transfer files to and from a&lt;br /&gt;
 remote machine. TFTP provides very little security, and should not be&lt;br /&gt;
 enabled unless it is expressly needed. &lt;br /&gt;
 &lt;br /&gt;
 %prep&lt;br /&gt;
 %setup -q -n tftp-hpa-%{version}&lt;br /&gt;
 %patch0 -p1 -b .zero&lt;br /&gt;
 %patch2 -p1 -b .tzfix&lt;br /&gt;
 %patch3 -p1 -b .tftpboot&lt;br /&gt;
 %patch4 -p1 -b .chk_retcodes&lt;br /&gt;
 %patch5 -p1 -b .fortify-strcpy-crash&lt;br /&gt;
 %patch6 -p1 -b .cmd_arg&lt;br /&gt;
 %patch7 -p1 -b .stats&lt;br /&gt;
 %patch8 -p1 -b .pktinfo&lt;br /&gt;
 &lt;br /&gt;
 %build&lt;br /&gt;
 autoreconf -fisv&lt;br /&gt;
 %configure&lt;br /&gt;
 make %{?_smp_mflags}&lt;br /&gt;
 &lt;br /&gt;
 %install&lt;br /&gt;
 rm -rf ${RPM_BUILD_ROOT}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_bindir}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man{1,8}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_initrddir}&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/&lt;br /&gt;
 mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tftpboot&lt;br /&gt;
 &lt;br /&gt;
 make INSTALLROOT=${RPM_BUILD_ROOT} SBINDIR=%{_sbindir} MANDIR=%{_mandir} INSTALL='install -p' install&lt;br /&gt;
 &lt;br /&gt;
 install -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/tftpd&lt;br /&gt;
 mv ${RPM_BUILD_ROOT}%{_sbindir}/in.tftpd ${RPM_BUILD_ROOT}%{_sbindir}/tftpd&lt;br /&gt;
 install -p -m 755 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/tftpd&lt;br /&gt;
 &lt;br /&gt;
 %post server&lt;br /&gt;
 # This adds the proper /etc/rc*.d links for the script&lt;br /&gt;
 /sbin/chkconfig --add %{tftp}&lt;br /&gt;
 &lt;br /&gt;
 %preun server&lt;br /&gt;
 if [ $1 -eq 0 ] ; then&lt;br /&gt;
     /sbin/service %{tftp} stop &amp;gt;/dev/null 2&amp;gt;&amp;amp;1&lt;br /&gt;
     /sbin/chkconfig --del %{tftp}&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 %postun server&lt;br /&gt;
 if [ &amp;quot;$1&amp;quot; -ge &amp;quot;1&amp;quot; ] ; then&lt;br /&gt;
     /sbin/service %{tftp} condrestart &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 || :&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 %clean&lt;br /&gt;
 rm -rf ${RPM_BUILD_ROOT} &lt;br /&gt;
 &lt;br /&gt;
 %files&lt;br /&gt;
 %doc README README.security CHANGES&lt;br /&gt;
 %{_bindir}/tftp&lt;br /&gt;
 %{_mandir}/man1/*&lt;br /&gt;
 &lt;br /&gt;
 %files server&lt;br /&gt;
 %doc README README.security CHANGES&lt;br /&gt;
 %config(noreplace) %{_sysconfdir}/sysconfig/tftpd&lt;br /&gt;
 %{_sbindir}/tftpd&lt;br /&gt;
 %{_mandir}/man8/*&lt;br /&gt;
 %attr(700,nobody,nobody) %dir %{_localstatedir}/lib/tftpboot&lt;br /&gt;
 %{_initrddir}/tftpd &lt;br /&gt;
 &lt;br /&gt;
 %changelog&lt;br /&gt;
 * Mon Feb 18 2013 Andrew Vedischev &amp;lt;andrey.vidischev@orange.com&amp;gt; - 5.2-7&lt;br /&gt;
 - repacked for RHEL 6.X, or CentOS 6.X&lt;br /&gt;
 - startup script added&lt;br /&gt;
 - removed xinet from buildreq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Startup script ==&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 #&lt;br /&gt;
 # tftpd        Startup script for tftp&lt;br /&gt;
 #&lt;br /&gt;
 # chkconfig:   2345 50 60&lt;br /&gt;
 # description: Starts, stops tftp server daemon&lt;br /&gt;
 # &lt;br /&gt;
 &lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides: tftpd&lt;br /&gt;
 # Required-Start: $local_fs $network $remote_fs&lt;br /&gt;
 # Required-Stop: $local_fs $network $remote_fs&lt;br /&gt;
 # Should-Start:&lt;br /&gt;
 # Should-Stop:&lt;br /&gt;
 # Default-Start: 2 3 4 5&lt;br /&gt;
 # Default-Stop: 0 1 6&lt;br /&gt;
 # Short-Description: IPv4 Trivial File Transfer Protocol server&lt;br /&gt;
 # Description: tftpd is a server for the Trivial File Transfer Protocol. \&lt;br /&gt;
 #              The TFTP protocol is extensively used to support remote booting \&lt;br /&gt;
 #              of diskless devices. The server is normally started by inetd, \&lt;br /&gt;
 #              but can also run standalone.&lt;br /&gt;
 #&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &lt;br /&gt;
 # Source function library.&lt;br /&gt;
 . /etc/rc.d/init.d/functions&lt;br /&gt;
 &lt;br /&gt;
 exec=&amp;quot;/usr/sbin/tftpd&amp;quot;&lt;br /&gt;
 prog=&amp;quot;tftpd&amp;quot;&lt;br /&gt;
 pidfile=&amp;quot;/var/run/tftpd&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [ -e /etc/sysconfig/$prog ] &amp;amp;&amp;amp; . /etc/sysconfig/$prog&lt;br /&gt;
 &lt;br /&gt;
 lockfile=/var/lock/subsys/$prog &lt;br /&gt;
 &lt;br /&gt;
 start() {&lt;br /&gt;
     [ -x $exec ] || exit 5&lt;br /&gt;
     [ -f $config ] || exit 6&lt;br /&gt;
     echo -n $&amp;quot;Starting $prog: &amp;quot;&lt;br /&gt;
     # if not running, start it up here, usually something like &amp;quot;daemon $exec&amp;quot;&lt;br /&gt;
     daemon --pidfile=&amp;quot;$pidfile&amp;quot; $exec -l -P &amp;quot;$pidfile&amp;quot; $TFTPD_OPTIONS&lt;br /&gt;
     retval=$?&lt;br /&gt;
     echo&lt;br /&gt;
     [ $retval -eq 0 ] &amp;amp;&amp;amp; touch $lockfile&lt;br /&gt;
     return $retval&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 stop() {&lt;br /&gt;
     echo -n $&amp;quot;Stopping $prog: &amp;quot;&lt;br /&gt;
     # stop it here, often &amp;quot;killproc $prog&amp;quot;&lt;br /&gt;
     killproc -p &amp;quot;$pidfile&amp;quot; $exec&lt;br /&gt;
     retval=$?&lt;br /&gt;
     echo&lt;br /&gt;
     [ $retval -eq 0 ] &amp;amp;&amp;amp; rm -f $lockfile&lt;br /&gt;
     return $retval&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 restart() {&lt;br /&gt;
     stop&lt;br /&gt;
     start&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 reload() {&lt;br /&gt;
     restart&lt;br /&gt;
 } &lt;br /&gt;
 &lt;br /&gt;
 force_reload() {&lt;br /&gt;
     restart&lt;br /&gt;
 } &lt;br /&gt;
 &lt;br /&gt;
 rh_status() {&lt;br /&gt;
     # run checks to determine if the service is running or use generic status&lt;br /&gt;
     status $prog&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 rh_status_q() {&lt;br /&gt;
     rh_status &amp;gt;/dev/null 2&amp;gt;&amp;amp;1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 case &amp;quot;$1&amp;quot; in&lt;br /&gt;
     start)&lt;br /&gt;
         rh_status_q &amp;amp;&amp;amp; exit 0&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     stop)&lt;br /&gt;
         rh_status_q || exit 0&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     restart)&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     reload)&lt;br /&gt;
         rh_status_q || exit 7&lt;br /&gt;
         $1&lt;br /&gt;
         ;;&lt;br /&gt;
     force-reload)&lt;br /&gt;
         force_reload&lt;br /&gt;
         ;;&lt;br /&gt;
     status)&lt;br /&gt;
         rh_status&lt;br /&gt;
         ;;&lt;br /&gt;
     condrestart|try-restart)&lt;br /&gt;
         rh_status_q || exit 0&lt;br /&gt;
         restart&lt;br /&gt;
         ;;&lt;br /&gt;
     *)&lt;br /&gt;
         echo $&amp;quot;Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}&amp;quot;&lt;br /&gt;
         exit 2&lt;br /&gt;
 esac&lt;br /&gt;
 exit $?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
[http://fedoraproject.org/wiki/How_to_create_an_RPM_package#The_basics_of_building_RPM_packages| Основы сборки и шаблоны для спеков и стартовых скриптов]&lt;br /&gt;
&lt;br /&gt;
[http://fedoraproject.org/wiki/Packaging:SysVInitScript Шаблоны стартовых скриптов]&lt;br /&gt;
&lt;br /&gt;
[http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-creating-rpms.html RPM Guide]&lt;br /&gt;
&lt;br /&gt;
[http://pkgs.fedoraproject.org/cgit/ Git репозиторий пакетов Fedora]&lt;br /&gt;
&lt;br /&gt;
[http://pkgs.org Один из источников SRPM'ов]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Iscsi&amp;diff=2398</id>
		<title>Iscsi</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Iscsi&amp;diff=2398"/>
				<updated>2018-12-04T07:49:42Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование iscsi ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с сетевыми интерфейсами&lt;br /&gt;
* На виртуальную машину &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; необходимо подключить второй неразмеченный диск примерно на 5Gb. &lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Общая информация и терминология ====&lt;br /&gt;
iSCSI - протокол передачи SCSI команд поверх TCP/IP, для управления устройствами хранения данных. &lt;br /&gt;
&lt;br /&gt;
Терминология iSCSI во многом основывается на терминологии, использующейся в SCSI:&lt;br /&gt;
* '''initiator''' — тот, кто устанавливает соединение с целью(target). Чаще всего это узел (в общем случае) осуществляет ввод/вывод на блочные устройства.&lt;br /&gt;
* '''target''' — экспортируемый объект. В зависимости от контекста цель(target) называют или целиком экспортирующий узел, или только экспортируемый объект. Сам объект может делиться на lun’ы.&lt;br /&gt;
* '''Портал''' — группа целей(targets), которые анонсируются вместе. Чаще всего один узел хранения — один портал.&lt;br /&gt;
* '''IQN''' — полное имя участника взаимодействия. На практике существует iqn у инициатора и у цели(target).&lt;br /&gt;
* '''endpoint''' — уточнённое имя ресурса, чаще всего включает в себя iqn, номер LUN’а и указание на конкретный метод доступа к нему (например, номер соединения, [[LUN]] и IP-адрес, с которого следует получать доступ к устройству).&lt;br /&gt;
* '''LUN''' (Logical Unit Number) — номер объекта внутри цели(target). Ближайшим аналогом является раздел диска или отдельный том.&lt;br /&gt;
* '''ACL''' (Access Control List) — список доступа, основанный на iqn инициатора, позволяющий предоствить доступ к конкретной цели.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
По iscsi можно подключить как отдельный неразмеченный диск, так и том LVM или даже файл, который будет выполнять&lt;br /&gt;
роль хранилища информации. Поэтому алгоритм действий следующий:&lt;br /&gt;
* Создаем хранилище&lt;br /&gt;
* Присваеваем iqn хранилищу и создаем группу порталов&lt;br /&gt;
* Конфигурируем acl для группы порталов&lt;br /&gt;
* Создаем lun'ы, через которые будем предоставлять доступ к хранилищу&lt;br /&gt;
* Создаем сетевой интерфейс, через который инициатор(ы) будут получать доступ к хранилищу&lt;br /&gt;
&lt;br /&gt;
== Настройка target'а ==&lt;br /&gt;
Установим пакет &amp;lt;code&amp;gt;targetcli&amp;lt;/code&amp;gt; и запустим сервис:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# yum install -y targetcli &lt;br /&gt;
Loaded plugins: product-id, search-disabled-repos, subscription-manager&lt;br /&gt;
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.&lt;br /&gt;
Package targetcli-2.1.fb41-3.el7.noarch already installed and latest version&lt;br /&gt;
Nothing to do&lt;br /&gt;
[root@vm-01 ~]# systemctl enable target.service &lt;br /&gt;
Created symlink from /etc/systemd/system/multi-user.target.wants/target.service to /usr/lib/systemd/system/target.service.&lt;br /&gt;
[root@vm-01 ~]# systemctl start target.service &lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем наличие диска в системе:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# lsblk &lt;br /&gt;
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT&lt;br /&gt;
sr0            11:0    1  3.5G  0 rom  &lt;br /&gt;
vda           252:0    0   20G  0 disk &lt;br /&gt;
├─vda1        252:1    0  512M  0 part /boot&lt;br /&gt;
└─vda2        252:2    0 19.5G  0 part &lt;br /&gt;
  └─rhel-root 253:0    0 19.5G  0 lvm  /&lt;br /&gt;
vdb           252:16   0    5G  0 disk &lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;targetcli&amp;lt;/code&amp;gt; - это оболочка с иерархической системой, в каждом иерархическом элементе которой&lt;br /&gt;
существует собственный набор команд (по смыслу похожа на оболочку Mikrotik). Однако, можно вводить команды не в интерактивном режиме. &lt;br /&gt;
Итак, нашим хранилищем будет устройство &amp;lt;code&amp;gt;/dev/vdb&amp;lt;/code&amp;gt;, которое следует создать:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# targetcli --help&lt;br /&gt;
Usage: /usr/bin/targetcli [--version|--help|CMD]&lt;br /&gt;
  --version		Print version&lt;br /&gt;
  --help		Print this information&lt;br /&gt;
  CMD			Run targetcli shell command and exit&lt;br /&gt;
  &amp;lt;nothing&amp;gt;		Enter configuration shell&lt;br /&gt;
See man page for more information.&lt;br /&gt;
# targetcli 'backstores/block/ create vm-01-disk /dev/vdb'&lt;br /&gt;
Created block storage object vm-01-disk using /dev/vdb.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Присваеваем iqn хранилищу и создаем группу порталов:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# targetcli 'iscsi/ create iqn.2017-11.com.example:target1'&lt;br /&gt;
Created target iqn.2017-11.com.example:target1.&lt;br /&gt;
Created TPG 1.&lt;br /&gt;
Global pref auto_add_default_portal=true&lt;br /&gt;
Created default portal listening on all IPs (0.0.0.0), port 3260.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем acl. Указываем имя клиента (initiator) которому можно подключаться к нашему серверу (target):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# targetcli 'iscsi/iqn.2017-11.com.example:target1/tpg1/acls create iqn.2017-11.com.example:client1'&lt;br /&gt;
Created Node ACL for iqn.2017-11.com.example:client1&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем lun. acl ему присваивается автоматически:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# targetcli 'iscsi/iqn.2017-11.com.example:target1/tpg1/luns create storage_object=/backstores/block/vm-01-disk'&lt;br /&gt;
Created LUN 0.&lt;br /&gt;
Created LUN 0-&amp;gt;0 mapping in node ACL iqn.2017-11.com.example:client1&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Удалим прослушиваение всех адресов iSCSI сервисом, и разрешим принимать соединение только на определенном интерфейсе:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# targetcli 'iscsi/iqn.2017-11.com.example:target1/tpg1/portals delete ip_address=0.0.0.0 ip_port=3260'&lt;br /&gt;
Deleted network portal 0.0.0.0:3260&lt;br /&gt;
[root@vm-01 ~]# targetcli 'iscsi/iqn.2017-11.com.example:target1/tpg1/portals create ip_address=192.168.122.158 ip_port=3260'&lt;br /&gt;
Using default IP port 3260&lt;br /&gt;
Created network portal 192.168.122.158:3260.&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Откроем соедниения по протоколу ''tcp'' для порта ''3260'':&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-port=3260/tcp --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка initiator'а ==&lt;br /&gt;
Устанавливаем пакет &amp;lt;code&amp;gt;iscsi-initiator-utils&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# yum install -y iscsi-initiator-utils.x86_64&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Приводим файл &amp;lt;code&amp;gt;/etc/iscsi/initiatorname.iscsi&amp;lt;/code&amp;gt; к следующему виду:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# cat /etc/iscsi/initiatorname.iscsi &lt;br /&gt;
InitiatorName=iqn.2017-11.com.example:client1&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь поищем, есть ли доступные подключения к нашему таргету на виртуальной машине &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# iscsiadm -m discovery --type sendtargets --portal 192.168.122.158 --discover&lt;br /&gt;
192.168.122.158:3260,1 iqn.2017-11.com.example:target1&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Подключаемся к таргету:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# iscsiadm --mode node --targetname iqn.2017-11.com.example:target1 --portal 192.168.122.158:3260 --login&lt;br /&gt;
Logging in to [iface: default, target: iqn.2017-11.com.example:target1, portal: 192.168.122.158,3260] (multiple)&lt;br /&gt;
Login to [iface: default, target: iqn.2017-11.com.example:target1, portal: 192.168.122.158,3260] successful.&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Посмотрим информацию о соединении:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# iscsiadm --mode session -P 3&lt;br /&gt;
iSCSI Transport Class version 2.0-870&lt;br /&gt;
version 6.2.0.873-21&lt;br /&gt;
Target: iqn.2017-11.com.example:target1 (non-flash)&lt;br /&gt;
	Current Portal: 192.168.122.158:3260,1&lt;br /&gt;
	Persistent Portal: 192.168.122.158:3260,1&lt;br /&gt;
		**********&lt;br /&gt;
		Interface:&lt;br /&gt;
		**********&lt;br /&gt;
		Iface Name: default&lt;br /&gt;
		Iface Transport: tcp&lt;br /&gt;
		Iface Initiatorname: iqn.2017-11.com.example:client1&lt;br /&gt;
		Iface IPaddress: 192.168.122.179&lt;br /&gt;
		Iface HWaddress: &amp;lt;empty&amp;gt;&lt;br /&gt;
		Iface Netdev: &amp;lt;empty&amp;gt;&lt;br /&gt;
		SID: 1&lt;br /&gt;
		iSCSI Connection State: LOGGED IN&lt;br /&gt;
		iSCSI Session State: LOGGED_IN&lt;br /&gt;
		Internal iscsid Session State: NO CHANGE&lt;br /&gt;
		*********&lt;br /&gt;
		Timeouts:&lt;br /&gt;
		*********&lt;br /&gt;
		Recovery Timeout: 120&lt;br /&gt;
		Target Reset Timeout: 30&lt;br /&gt;
		LUN Reset Timeout: 30&lt;br /&gt;
		Abort Timeout: 15&lt;br /&gt;
		*****&lt;br /&gt;
		CHAP:&lt;br /&gt;
		*****&lt;br /&gt;
		username: &amp;lt;empty&amp;gt;&lt;br /&gt;
		password: ********&lt;br /&gt;
		username_in: &amp;lt;empty&amp;gt;&lt;br /&gt;
		password_in: ********&lt;br /&gt;
		************************&lt;br /&gt;
		Negotiated iSCSI params:&lt;br /&gt;
		************************&lt;br /&gt;
		HeaderDigest: None&lt;br /&gt;
		DataDigest: None&lt;br /&gt;
		MaxRecvDataSegmentLength: 262144&lt;br /&gt;
		MaxXmitDataSegmentLength: 262144&lt;br /&gt;
		FirstBurstLength: 65536&lt;br /&gt;
		MaxBurstLength: 262144&lt;br /&gt;
		ImmediateData: Yes&lt;br /&gt;
		InitialR2T: Yes&lt;br /&gt;
		MaxOutstandingR2T: 1&lt;br /&gt;
		************************&lt;br /&gt;
		Attached SCSI devices:&lt;br /&gt;
		************************&lt;br /&gt;
		Host Number: 8	State: running&lt;br /&gt;
		scsi8 Channel 00 Id 0 Lun: 0&lt;br /&gt;
			Attached scsi disk sda		State: running&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверим блочные устройства, доступные на нашей виртуальной машине:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# lsblk --scsi -m&lt;br /&gt;
NAME HCTL       TYPE VENDOR   MODEL             REV TRAN   NAME  SIZE OWNER GROUP MODE&lt;br /&gt;
sda  8:0:0:0    disk LIO-ORG  vm-01-disk       4.0  iscsi  sda     5G root  disk  brw-rw----&lt;br /&gt;
sr0  2:0:0:0    rom  QEMU     QEMU DVD-ROM     2.5+ sata   sr0   3.5G root  cdrom brw-rw----&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее отформатируем устройство и прописываем монтирование в &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# mkfs.xfs /dev/sda &lt;br /&gt;
meta-data=/dev/sda               isize=256    agcount=8, agsize=163840 blks&lt;br /&gt;
         =                       sectsz=512   attr=2, projid32bit=1&lt;br /&gt;
         =                       crc=0&lt;br /&gt;
data     =                       bsize=4096   blocks=1310720, imaxpct=25&lt;br /&gt;
         =                       sunit=0      swidth=0 blks&lt;br /&gt;
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0&lt;br /&gt;
log      =internal log           bsize=4096   blocks=2560, version=2&lt;br /&gt;
         =                       sectsz=512   sunit=0 blks, lazy-count=1&lt;br /&gt;
realtime =none                   extsz=4096   blocks=0, rtextents=0&lt;br /&gt;
[root@vm-02 ~]# lsblk --scsi -o NAME,HCTL,TYPE,VENDOR,MODEL,REV,TRAN,SIZE,OWNER,GROUP,MODE,UUID&lt;br /&gt;
NAME HCTL       TYPE VENDOR   MODEL             REV TRAN    SIZE OWNER GROUP MODE       UUID&lt;br /&gt;
sda  8:0:0:0    disk LIO-ORG  vm-01-disk       4.0  iscsi     5G root  disk  brw-rw---- 2740f870-02c3-42e6-a808-0b6227e92ca5&lt;br /&gt;
sr0  2:0:0:0    rom  QEMU     QEMU DVD-ROM     2.5+ sata    3.5G root  cdrom brw-rw---- 2014-05-07-03-58-46-00&lt;br /&gt;
[root@vm-02 ~]# cat /etc/fstab &lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# /etc/fstab&lt;br /&gt;
# Created by anaconda on Wed Nov 22 11:45:46 2017&lt;br /&gt;
#&lt;br /&gt;
# Accessible filesystems, by reference, are maintained under '/dev/disk'&lt;br /&gt;
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info&lt;br /&gt;
#&lt;br /&gt;
/dev/mapper/rhel-root				/                       xfs     defaults        1 1&lt;br /&gt;
UUID=cc10fe05-aa22-42d6-a18e-39d1eb5ad338	/boot                   xfs     defaults        1 2&lt;br /&gt;
UUID=2740f870-02c3-42e6-a808-0b6227e92ca5	/media			xfs	_netdev        0 2&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверим, правильно ли мы заполнили &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# mount -a&lt;br /&gt;
[root@vm-02 ~]# findmnt -A -t xfs&lt;br /&gt;
TARGET   SOURCE                FSTYPE OPTIONS&lt;br /&gt;
/        /dev/mapper/rhel-root xfs    rw,relatime,seclabel,attr2,inode64,noquota&lt;br /&gt;
├─/boot  /dev/vda1             xfs    rw,relatime,seclabel,attr2,inode64,noquota&lt;br /&gt;
└─/media /dev/sda              xfs    rw,relatime,seclabel,attr2,inode64,noquota&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/online-storage-management Управление онлайн хранилищами]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2397</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2397"/>
				<updated>2018-12-03T10:45:43Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Утилита &amp;lt;code&amp;gt;string2hex.pl&amp;lt;/code&amp;gt; служит для создания файла &amp;lt;code&amp;gt;service.keyfile&amp;lt;/code&amp;gt; и вызывается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ ./string2hex.pl -s cn=krbadmin,ou=users,dc=virtual,dc=lab -p test1234&lt;br /&gt;
cn=krbadmin,ou=users,dc=virtual,dc=lab#{HEX}7465737431323334&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Дальнейшие действия ===&lt;br /&gt;
После разворачивания виртуальных машин, необходимо информацию о них занести в DNS, на сервере &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/zone/virtual.lab &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
@               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
; Our services&lt;br /&gt;
_kerberos._tcp.virtual.lab.        IN	SRV	0	0	88	kdc1.virtual.lab.&lt;br /&gt;
_kerberos._udp.virtual.lab.        IN	SRV     0       0       88      kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._tcp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._udp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._udp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._tcp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._udp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._tcp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.         &lt;br /&gt;
_ldap._udp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
_ldap._tcp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
kdc1			IN      A       192.168.10.10&lt;br /&gt;
vm-03		IN	CNAME	kdc1&lt;br /&gt;
ns1			IN	CNAME	kdc1&lt;br /&gt;
&lt;br /&gt;
vm-01			IN	A	192.168.10.8&lt;br /&gt;
vm-01			IN	A	192.168.10.9&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/addr.arpa/10.168.192.in-addr.arpa &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
8      IN      PTR     vm-01.virtual.lab.&lt;br /&gt;
9      IN      PTR     vm-02.virtual.lab.&lt;br /&gt;
10      IN      PTR     kdc1.virtual.lab.&lt;br /&gt;
[root@vm-03 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
На виртуальных машинах нужно прописать адрес DNS из внутренней сети:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth1 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.ignore-auto-dns yes&lt;br /&gt;
[root@vm-02 ~]# systemctl restart NetworkManager&lt;br /&gt;
[root@vm-02 ~]# cat /etc/resolv.conf &lt;br /&gt;
# Generated by NetworkManager&lt;br /&gt;
search virtual.lab&lt;br /&gt;
nameserver 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://labs.opinsys.com/blog/2010/02/05/setting-up-openldap-kerberos-on-ubuntu-10-04-lucid/ Настройка OpenLDAP и Kerberos v5]&amp;lt;br /&amp;gt;&lt;br /&gt;
[http://www.rjsystems.nl/en/2100-d6-kerberos-openldap-provider.php Настройка OpenLDAP и Kerberos v5 на Debian Squeeze]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2396</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2396"/>
				<updated>2018-12-03T10:45:29Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Утилита &amp;lt;code&amp;gt;string2hex.pl&amp;lt;/code&amp;gt; служит для создания файла &amp;lt;code&amp;gt;service.keyfile&amp;lt;/code&amp;gt; и вызывается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ ./string2hex.pl -s cn=krbadmin,ou=users,dc=virtual,dc=lab -p test1234&lt;br /&gt;
cn=krbadmin,ou=users,dc=virtual,dc=lab#{HEX}7465737431323334&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Дальнейшие действия ===&lt;br /&gt;
После разворачивания виртуальных машин, необходимо информацию о них занести в DNS, на сервере &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/zone/virtual.lab &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
@               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
; Our services&lt;br /&gt;
_kerberos._tcp.virtual.lab.        IN	SRV	0	0	88	kdc1.virtual.lab.&lt;br /&gt;
_kerberos._udp.virtual.lab.        IN	SRV     0       0       88      kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._tcp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._udp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._udp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._tcp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._udp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._tcp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.         &lt;br /&gt;
_ldap._udp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
_ldap._tcp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
kdc1			IN      A       192.168.10.10&lt;br /&gt;
vm-03		IN	CNAME	kdc1&lt;br /&gt;
ns1			IN	CNAME	kdc1&lt;br /&gt;
&lt;br /&gt;
vm-01			IN	A	192.168.10.8&lt;br /&gt;
vm-01			IN	A	192.168.10.9&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/addr.arpa/10.168.192.in-addr.arpa &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
8      IN      PTR     vm-01.virtual.lab.&lt;br /&gt;
9      IN      PTR     vm-02.virtual.lab.&lt;br /&gt;
10      IN      PTR     kdc1.virtual.lab.&lt;br /&gt;
[root@vm-03 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
На виртуальных машинах нужно прописать адрес DNS из внутренней сети:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth1 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.ignore-auto-dns yes&lt;br /&gt;
[root@vm-02 ~]# systemctl restart NetworkManager&lt;br /&gt;
[root@vm-02 ~]# cat /etc/resolv.conf &lt;br /&gt;
# Generated by NetworkManager&lt;br /&gt;
search virtual.lab&lt;br /&gt;
nameserver 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&lt;br /&gt;
[http://labs.opinsys.com/blog/2010/02/05/setting-up-openldap-kerberos-on-ubuntu-10-04-lucid/ Настройка OpenLDAP и Kerberos v5]&lt;br /&gt;
[http://www.rjsystems.nl/en/2100-d6-kerberos-openldap-provider.php Настройка OpenLDAP и Kerberos v5 на Debian Squeeze]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2395</id>
		<title>Nfs krb5</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2395"/>
				<updated>2018-12-03T10:40:16Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Ссылки */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование Kerberos NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/krb-share&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/krb-share(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/krb-share/&lt;br /&gt;
restorecon reset /srv/nfs/krb-share context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:var_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:public_content_rw_t:s0 krb-share&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   public&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/krb-share.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/krb-share      192.168.10.0/24(sec=krb5p,rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Присвоим права на директорию пользователю &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt; и группе &amp;lt;code&amp;gt;unix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id randy&lt;br /&gt;
uid=10002(randy) gid=10000(virtuallab) groups=10000(virtuallab),10002(unix)&lt;br /&gt;
[root@vm-01 ~]# chown randy:unix /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# chmod 750 /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/krb-share/&lt;br /&gt;
drwxr-x---. randy unix unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root  root unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/krb-share&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Копируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-01.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; у &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файла:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для поддержки керберос аутентикации сетевых директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;, в RHEL 7.0 надо, кроме сервиса &amp;lt;code&amp;gt;nfs-server&amp;lt;/code&amp;gt; запустить сервис &amp;lt;code&amp;gt;nfs-secure-server&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable nfs-secure-server&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure-server.service' '/etc/systemd/system/nfs.target.wants/nfs-secure-server.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start nfs-secure-server&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l nfs-secure-server&lt;br /&gt;
nfs-secure-server.service - Secure NFS Server&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure-server.service; disabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:20:42 MSK; 7s ago&lt;br /&gt;
  Process: 32315 ExecStart=/usr/sbin/rpc.svcgssd $RPCSVCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 32316 (rpc.svcgssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure-server.service&lt;br /&gt;
           └─32316 /usr/sbin/rpc.svcgssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Starting Secure NFS Server...&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Started Secure NFS Server.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public    192.168.10.0/24&lt;br /&gt;
/srv/nfs/krb-share 192.168.10.0/24&lt;br /&gt;
/srv/nfs/account   192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public    192.168.10.0/24&lt;br /&gt;
/srv/nfs/krb-share 192.168.10.0/24&lt;br /&gt;
/srv/nfs/account   192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir /mnt/nfs/krb-share&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь скопируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-02.virtual.lab&amp;lt;/code&amp;gt; и сразу восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
The authenticity of host 'vm-03.virtual.lab (192.168.10.10)' can't be established.&lt;br /&gt;
ECDSA key fingerprint is ae:71:ab:e1:8a:33:77:68:c7:de:a3:16:14:14:4c:0b.&lt;br /&gt;
Are you sure you want to continue connecting (yes/no)? yes&lt;br /&gt;
Warning: Permanently added 'vm-03.virtual.lab,192.168.10.10' (ECDSA) to the list of known hosts.&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-02 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для работы керберезированных сетевых директорий, нам понадобиться включить сервис &amp;lt;code&amp;gt;nfs-secure.service&amp;lt;/code&amp;gt; на клиентской машине &amp;lt;code&amp;gt;vm-02.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# systemctl enable nfs-secure.service&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure.service' '/etc/systemd/system/nfs.target.wants/nfs-secure.service'&lt;br /&gt;
[root@vm-02 ~]# systemctl start nfs-secure.service&lt;br /&gt;
[root@vm-02 ~]# systemctl status -l nfs-secure.service&lt;br /&gt;
nfs-secure.service - Secure NFS&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:30:06 MSK; 4s ago&lt;br /&gt;
  Process: 25392 ExecStart=/usr/sbin/rpc.gssd $RPCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 25393 (rpc.gssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure.service&lt;br /&gt;
           └─25393 /usr/sbin/rpc.gssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:30:06 vm-02.virtual.lab systemd[1]: Started Secure NFS.&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо примонтировать сетевую директорию:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2,sec=krb5p vm-01.virtual.lab:/srv/nfs/krb-share /mnt/nfs/krb-share&lt;br /&gt;
mount.nfs4: timeout set for Mon Dec  3 14:34:10 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,sec=krb5p,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# findmnt -ADt nfs4&lt;br /&gt;
SOURCE                               FSTYPE  SIZE  USED AVAIL USE% TARGET&lt;br /&gt;
vm-01.virtual.lab:/srv/nfs/account   nfs4    4.5G  4.2G  345M  92% /mnt/nfs/account&lt;br /&gt;
vm-01.virtual.lab:/srv/nfs/krb-share nfs4    4.5G  4.2G  345M  92% /mnt/nfs/krb-share&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/krb-share&lt;br /&gt;
ls: cannot open directory /mnt/nfs/krb-share: Permission denied&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;, пробуем от пользователя &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# su - randy&lt;br /&gt;
Creating home directory for randy.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Получаем билет &amp;lt;code&amp;gt;kerberos&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[randy@vm-02 ~]$ kinit &lt;br /&gt;
Password for randy@VIRTUAL.LAB: &lt;br /&gt;
[randy@vm-02 ~]$ klist &lt;br /&gt;
Ticket cache: KEYRING:persistent:10002:10002&lt;br /&gt;
Default principal: randy@VIRTUAL.LAB&lt;br /&gt;
&lt;br /&gt;
Valid starting       Expires              Service principal&lt;br /&gt;
12/03/2018 14:33:13  12/04/2018 14:33:13  krbtgt/VIRTUAL.LAB@VIRTUAL.LAB&lt;br /&gt;
	renew until 12/03/2018 14:33:13&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пробуем записать файл в директорию:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[randy@vm-02 ~]$ printf &amp;quot;This is very important file.\n&amp;quot; &amp;gt; /mnt/nfs/krb-share/randy.txt&lt;br /&gt;
[randy@vm-02 ~]$ ls -lahiZ /mnt/nfs/krb-share/randy.txt &lt;br /&gt;
-rw-r--r--. randy virtuallab unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/krb-share/randy.txt&lt;br /&gt;
[randy@vm-02 ~]$ cat /mnt/nfs/krb-share/randy.txt &lt;br /&gt;
This is very important file.&lt;br /&gt;
[randy@vm-02 ~]$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/s1-nfs-security Securing NFS]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2394</id>
		<title>Nfs krb5</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2394"/>
				<updated>2018-12-03T10:37:34Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование Kerberos NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/krb-share&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/krb-share(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/krb-share/&lt;br /&gt;
restorecon reset /srv/nfs/krb-share context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:var_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:public_content_rw_t:s0 krb-share&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   public&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/krb-share.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/krb-share      192.168.10.0/24(sec=krb5p,rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Присвоим права на директорию пользователю &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt; и группе &amp;lt;code&amp;gt;unix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id randy&lt;br /&gt;
uid=10002(randy) gid=10000(virtuallab) groups=10000(virtuallab),10002(unix)&lt;br /&gt;
[root@vm-01 ~]# chown randy:unix /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# chmod 750 /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/krb-share/&lt;br /&gt;
drwxr-x---. randy unix unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root  root unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/krb-share&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Копируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-01.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; у &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файла:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для поддержки керберос аутентикации сетевых директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;, в RHEL 7.0 надо, кроме сервиса &amp;lt;code&amp;gt;nfs-server&amp;lt;/code&amp;gt; запустить сервис &amp;lt;code&amp;gt;nfs-secure-server&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable nfs-secure-server&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure-server.service' '/etc/systemd/system/nfs.target.wants/nfs-secure-server.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start nfs-secure-server&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l nfs-secure-server&lt;br /&gt;
nfs-secure-server.service - Secure NFS Server&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure-server.service; disabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:20:42 MSK; 7s ago&lt;br /&gt;
  Process: 32315 ExecStart=/usr/sbin/rpc.svcgssd $RPCSVCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 32316 (rpc.svcgssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure-server.service&lt;br /&gt;
           └─32316 /usr/sbin/rpc.svcgssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Starting Secure NFS Server...&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Started Secure NFS Server.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public    192.168.10.0/24&lt;br /&gt;
/srv/nfs/krb-share 192.168.10.0/24&lt;br /&gt;
/srv/nfs/account   192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public    192.168.10.0/24&lt;br /&gt;
/srv/nfs/krb-share 192.168.10.0/24&lt;br /&gt;
/srv/nfs/account   192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir /mnt/nfs/krb-share&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь скопируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-02.virtual.lab&amp;lt;/code&amp;gt; и сразу восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
The authenticity of host 'vm-03.virtual.lab (192.168.10.10)' can't be established.&lt;br /&gt;
ECDSA key fingerprint is ae:71:ab:e1:8a:33:77:68:c7:de:a3:16:14:14:4c:0b.&lt;br /&gt;
Are you sure you want to continue connecting (yes/no)? yes&lt;br /&gt;
Warning: Permanently added 'vm-03.virtual.lab,192.168.10.10' (ECDSA) to the list of known hosts.&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-02 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для работы керберезированных сетевых директорий, нам понадобиться включить сервис &amp;lt;code&amp;gt;nfs-secure.service&amp;lt;/code&amp;gt; на клиентской машине &amp;lt;code&amp;gt;vm-02.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# systemctl enable nfs-secure.service&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure.service' '/etc/systemd/system/nfs.target.wants/nfs-secure.service'&lt;br /&gt;
[root@vm-02 ~]# systemctl start nfs-secure.service&lt;br /&gt;
[root@vm-02 ~]# systemctl status -l nfs-secure.service&lt;br /&gt;
nfs-secure.service - Secure NFS&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:30:06 MSK; 4s ago&lt;br /&gt;
  Process: 25392 ExecStart=/usr/sbin/rpc.gssd $RPCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 25393 (rpc.gssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure.service&lt;br /&gt;
           └─25393 /usr/sbin/rpc.gssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:30:06 vm-02.virtual.lab systemd[1]: Started Secure NFS.&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо примонтировать сетевую директорию:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2,sec=krb5p vm-01.virtual.lab:/srv/nfs/krb-share /mnt/nfs/krb-share&lt;br /&gt;
mount.nfs4: timeout set for Mon Dec  3 14:34:10 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,sec=krb5p,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# findmnt -ADt nfs4&lt;br /&gt;
SOURCE                               FSTYPE  SIZE  USED AVAIL USE% TARGET&lt;br /&gt;
vm-01.virtual.lab:/srv/nfs/account   nfs4    4.5G  4.2G  345M  92% /mnt/nfs/account&lt;br /&gt;
vm-01.virtual.lab:/srv/nfs/krb-share nfs4    4.5G  4.2G  345M  92% /mnt/nfs/krb-share&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/krb-share&lt;br /&gt;
ls: cannot open directory /mnt/nfs/krb-share: Permission denied&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;, пробуем от пользователя &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# su - randy&lt;br /&gt;
Creating home directory for randy.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Получаем билет &amp;lt;code&amp;gt;kerberos&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[randy@vm-02 ~]$ kinit &lt;br /&gt;
Password for randy@VIRTUAL.LAB: &lt;br /&gt;
[randy@vm-02 ~]$ klist &lt;br /&gt;
Ticket cache: KEYRING:persistent:10002:10002&lt;br /&gt;
Default principal: randy@VIRTUAL.LAB&lt;br /&gt;
&lt;br /&gt;
Valid starting       Expires              Service principal&lt;br /&gt;
12/03/2018 14:33:13  12/04/2018 14:33:13  krbtgt/VIRTUAL.LAB@VIRTUAL.LAB&lt;br /&gt;
	renew until 12/03/2018 14:33:13&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пробуем записать файл в директорию:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[randy@vm-02 ~]$ printf &amp;quot;This is very important file.\n&amp;quot; &amp;gt; /mnt/nfs/krb-share/randy.txt&lt;br /&gt;
[randy@vm-02 ~]$ ls -lahiZ /mnt/nfs/krb-share/randy.txt &lt;br /&gt;
-rw-r--r--. randy virtuallab unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/krb-share/randy.txt&lt;br /&gt;
[randy@vm-02 ~]$ cat /mnt/nfs/krb-share/randy.txt &lt;br /&gt;
This is very important file.&lt;br /&gt;
[randy@vm-02 ~]$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2393</id>
		<title>Nfs krb5</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2393"/>
				<updated>2018-12-03T10:37:01Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Проверка */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование Kerberos NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/krb-share&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/krb-share(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/krb-share/&lt;br /&gt;
restorecon reset /srv/nfs/krb-share context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:var_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:public_content_rw_t:s0 krb-share&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   public&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/krb-share.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/krb-share      192.168.10.0/24(sec=krb5p,rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Присвоим права на директорию пользователю &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt; и группе &amp;lt;code&amp;gt;unix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id randy&lt;br /&gt;
uid=10002(randy) gid=10000(virtuallab) groups=10000(virtuallab),10002(unix)&lt;br /&gt;
[root@vm-01 ~]# chown randy:unix /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# chmod 750 /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/krb-share/&lt;br /&gt;
drwxr-x---. randy unix unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root  root unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/krb-share&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Копируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-01.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; у &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файла:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для поддержки керберос аутентикации сетевых директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;, в RHEL 7.0 надо, кроме сервиса &amp;lt;code&amp;gt;nfs-server&amp;lt;/code&amp;gt; запустить сервис &amp;lt;code&amp;gt;nfs-secure-server&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable nfs-secure-server&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure-server.service' '/etc/systemd/system/nfs.target.wants/nfs-secure-server.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start nfs-secure-server&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l nfs-secure-server&lt;br /&gt;
nfs-secure-server.service - Secure NFS Server&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure-server.service; disabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:20:42 MSK; 7s ago&lt;br /&gt;
  Process: 32315 ExecStart=/usr/sbin/rpc.svcgssd $RPCSVCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 32316 (rpc.svcgssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure-server.service&lt;br /&gt;
           └─32316 /usr/sbin/rpc.svcgssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Starting Secure NFS Server...&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Started Secure NFS Server.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public    192.168.10.0/24&lt;br /&gt;
/srv/nfs/krb-share 192.168.10.0/24&lt;br /&gt;
/srv/nfs/account   192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public    192.168.10.0/24&lt;br /&gt;
/srv/nfs/krb-share 192.168.10.0/24&lt;br /&gt;
/srv/nfs/account   192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir /mnt/nfs/krb-share&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь скопируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-02.virtual.lab&amp;lt;/code&amp;gt; и сразу восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
The authenticity of host 'vm-03.virtual.lab (192.168.10.10)' can't be established.&lt;br /&gt;
ECDSA key fingerprint is ae:71:ab:e1:8a:33:77:68:c7:de:a3:16:14:14:4c:0b.&lt;br /&gt;
Are you sure you want to continue connecting (yes/no)? yes&lt;br /&gt;
Warning: Permanently added 'vm-03.virtual.lab,192.168.10.10' (ECDSA) to the list of known hosts.&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-02 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для работы керберезированных сетевых директорий, нам понадобиться включить сервис &amp;lt;code&amp;gt;nfs-secure.service&amp;lt;/code&amp;gt; на клиентской машине &amp;lt;code&amp;gt;vm-02.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# systemctl enable nfs-secure.service&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure.service' '/etc/systemd/system/nfs.target.wants/nfs-secure.service'&lt;br /&gt;
[root@vm-02 ~]# systemctl start nfs-secure.service&lt;br /&gt;
[root@vm-02 ~]# systemctl status -l nfs-secure.service&lt;br /&gt;
nfs-secure.service - Secure NFS&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:30:06 MSK; 4s ago&lt;br /&gt;
  Process: 25392 ExecStart=/usr/sbin/rpc.gssd $RPCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 25393 (rpc.gssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure.service&lt;br /&gt;
           └─25393 /usr/sbin/rpc.gssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:30:06 vm-02.virtual.lab systemd[1]: Started Secure NFS.&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо примонтировать сетевую директорию:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2,sec=krb5p vm-01.virtual.lab:/srv/nfs/krb-share /mnt/nfs/krb-share&lt;br /&gt;
mount.nfs4: timeout set for Mon Dec  3 14:34:10 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,sec=krb5p,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# findmnt -ADt nfs4&lt;br /&gt;
SOURCE                               FSTYPE  SIZE  USED AVAIL USE% TARGET&lt;br /&gt;
vm-01.virtual.lab:/srv/nfs/account   nfs4    4.5G  4.2G  345M  92% /mnt/nfs/account&lt;br /&gt;
vm-01.virtual.lab:/srv/nfs/krb-share nfs4    4.5G  4.2G  345M  92% /mnt/nfs/krb-share&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/krb-share&lt;br /&gt;
ls: cannot open directory /mnt/nfs/krb-share: Permission denied&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;, пробуем от пользователя &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# su - randy&lt;br /&gt;
Creating home directory for randy.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Получаем билет &amp;lt;code&amp;gt;kerberos&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[randy@vm-02 ~]$ kinit &lt;br /&gt;
Password for randy@VIRTUAL.LAB: &lt;br /&gt;
[randy@vm-02 ~]$ klist &lt;br /&gt;
Ticket cache: KEYRING:persistent:10002:10002&lt;br /&gt;
Default principal: randy@VIRTUAL.LAB&lt;br /&gt;
&lt;br /&gt;
Valid starting       Expires              Service principal&lt;br /&gt;
12/03/2018 14:33:13  12/04/2018 14:33:13  krbtgt/VIRTUAL.LAB@VIRTUAL.LAB&lt;br /&gt;
	renew until 12/03/2018 14:33:13&lt;br /&gt;
&lt;br /&gt;
Пробуем записать файл в директорию:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[randy@vm-02 ~]$ printf &amp;quot;This is very important file.\n&amp;quot; &amp;gt; /mnt/nfs/krb-share/randy.txt&lt;br /&gt;
[randy@vm-02 ~]$ ls -lahiZ /mnt/nfs/krb-share/randy.txt &lt;br /&gt;
-rw-r--r--. randy virtuallab unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/krb-share/randy.txt&lt;br /&gt;
[randy@vm-02 ~]$ cat /mnt/nfs/krb-share/randy.txt &lt;br /&gt;
This is very important file.&lt;br /&gt;
[randy@vm-02 ~]$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2392</id>
		<title>Nfs krb5</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2392"/>
				<updated>2018-12-03T10:22:06Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование Kerberos NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/krb-share&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/krb-share(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/krb-share/&lt;br /&gt;
restorecon reset /srv/nfs/krb-share context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:var_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:public_content_rw_t:s0 krb-share&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   public&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/krb-share.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/krb-share      192.168.10.0/24(sec=krb5p,rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Присвоим права на директорию пользователю &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt; и группе &amp;lt;code&amp;gt;unix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id randy&lt;br /&gt;
uid=10002(randy) gid=10000(virtuallab) groups=10000(virtuallab),10002(unix)&lt;br /&gt;
[root@vm-01 ~]# chown randy:unix /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# chmod 750 /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/krb-share/&lt;br /&gt;
drwxr-x---. randy unix unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root  root unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/krb-share&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Копируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-01.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; у &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файла:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для поддержки керберос аутентикации сетевых директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;, в RHEL 7.0 надо, кроме сервиса &amp;lt;code&amp;gt;nfs-server&amp;lt;/code&amp;gt; запустить сервис &amp;lt;code&amp;gt;nfs-secure-server&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable nfs-secure-server&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure-server.service' '/etc/systemd/system/nfs.target.wants/nfs-secure-server.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start nfs-secure-server&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l nfs-secure-server&lt;br /&gt;
nfs-secure-server.service - Secure NFS Server&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure-server.service; disabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:20:42 MSK; 7s ago&lt;br /&gt;
  Process: 32315 ExecStart=/usr/sbin/rpc.svcgssd $RPCSVCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 32316 (rpc.svcgssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure-server.service&lt;br /&gt;
           └─32316 /usr/sbin/rpc.svcgssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Starting Secure NFS Server...&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Started Secure NFS Server.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/account&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir -p /mnt/nfs/account&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2 vm-01.virtual.lab:/srv/nfs/account /mnt/nfs/account/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 17:31:40 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:mnt_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   public&lt;br /&gt;
[lisa@vm-02 ~]$ printf &amp;quot;This is Lisa, and this is my file.\n&amp;quot; &amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ chmod 660 /mnt/nfs/account/account.txt &lt;br /&gt;
[lisa@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# su - mary&lt;br /&gt;
Last login: Fri Nov 30 17:32:49 MSK 2018 on pts/0&lt;br /&gt;
[mary@vm-02 ~]$ printf &amp;quot;This is Mary, and this is my contibution to Lisa's work.\n&amp;quot; &amp;gt;&amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ cat /mnt/nfs/account/account.txt &lt;br /&gt;
This is Lisa, and this is my file.&lt;br /&gt;
This is Mary, and this is my contibution to Lisa's work.&lt;br /&gt;
[mary@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# ls -lahi /mnt/nfs/account/&lt;br /&gt;
ls: cannot open directory /mnt/nfs/account/: Permission denied&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2391</id>
		<title>Nfs krb5</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2391"/>
				<updated>2018-12-03T10:21:29Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Запуск */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование Kerberos NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/krb-share&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/krb-share(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/krb-share/&lt;br /&gt;
restorecon reset /srv/nfs/krb-share context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:var_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:public_content_rw_t:s0 krb-share&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   public&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/krb-share.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/krb-share      192.168.10.0/24(sec=krb5p,rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Присвоим права на директорию пользователю &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt; и группе &amp;lt;code&amp;gt;unix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id randy&lt;br /&gt;
uid=10002(randy) gid=10000(virtuallab) groups=10000(virtuallab),10002(unix)&lt;br /&gt;
[root@vm-01 ~]# chown randy:unix /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# chmod 750 /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/krb-share/&lt;br /&gt;
drwxr-x---. randy unix unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root  root unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/krb-share&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Копируем &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файл с сервера &amp;lt;code&amp;gt;vm-03.virtual.lab&amp;lt;/code&amp;gt;, на сервер &amp;lt;code&amp;gt;vm-01.virtual.lab&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# scp -p root@vm-03.virtual.lab:/etc/krb5.keytab /etc/&lt;br /&gt;
root@vm-03.virtual.lab's password: &lt;br /&gt;
krb5.keytab                                                                                                                                                 100% 1818     1.8KB/s   00:00    &lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Восстановим контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; у &amp;lt;code&amp;gt;keytab&amp;lt;/code&amp;gt; файла:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /etc/krb5.keytab &lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /etc/krb5.keytab&lt;br /&gt;
-rw-------. root root unconfined_u:object_r:krb5_keytab_t:s0 /etc/krb5.keytab&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для поддержки керберос аутентикации сетевых директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;, в RHEL 7.0 надо, кроме сервиса &amp;lt;code&amp;gt;nfs-server&amp;lt;/code&amp;gt; запустить сервис &amp;lt;code&amp;gt;nfs-server-secure&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable nfs-secure-server&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-secure-server.service' '/etc/systemd/system/nfs.target.wants/nfs-secure-server.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start nfs-secure-server&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l nfs-secure-server&lt;br /&gt;
nfs-secure-server.service - Secure NFS Server&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/nfs-secure-server.service; disabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-12-03 14:20:42 MSK; 7s ago&lt;br /&gt;
  Process: 32315 ExecStart=/usr/sbin/rpc.svcgssd $RPCSVCGSSDARGS (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 32316 (rpc.svcgssd)&lt;br /&gt;
   CGroup: /system.slice/nfs-secure-server.service&lt;br /&gt;
           └─32316 /usr/sbin/rpc.svcgssd&lt;br /&gt;
&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Starting Secure NFS Server...&lt;br /&gt;
Dec 03 14:20:42 vm-01.virtual.lab systemd[1]: Started Secure NFS Server.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/account&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir -p /mnt/nfs/account&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2 vm-01.virtual.lab:/srv/nfs/account /mnt/nfs/account/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 17:31:40 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:mnt_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   public&lt;br /&gt;
[lisa@vm-02 ~]$ printf &amp;quot;This is Lisa, and this is my file.\n&amp;quot; &amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ chmod 660 /mnt/nfs/account/account.txt &lt;br /&gt;
[lisa@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# su - mary&lt;br /&gt;
Last login: Fri Nov 30 17:32:49 MSK 2018 on pts/0&lt;br /&gt;
[mary@vm-02 ~]$ printf &amp;quot;This is Mary, and this is my contibution to Lisa's work.\n&amp;quot; &amp;gt;&amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ cat /mnt/nfs/account/account.txt &lt;br /&gt;
This is Lisa, and this is my file.&lt;br /&gt;
This is Mary, and this is my contibution to Lisa's work.&lt;br /&gt;
[mary@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# ls -lahi /mnt/nfs/account/&lt;br /&gt;
ls: cannot open directory /mnt/nfs/account/: Permission denied&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2390</id>
		<title>Nfs share</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2390"/>
				<updated>2018-12-03T10:05:31Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Для развертывания &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; необходимые утилиты и демоны включены в пакет &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;. Файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; необходим для настроек параметров демона &amp;lt;code&amp;gt;rpc.nfsd&amp;lt;/code&amp;gt;. &lt;br /&gt;
В данном файле необходимо указать версию протокола &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; - 4.1. Приводим файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; к следующему виду:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sysconfig/nfs&lt;br /&gt;
#&lt;br /&gt;
# Optinal options passed to rquotad&lt;br /&gt;
RPCRQUOTADOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to in-kernel lockd&lt;br /&gt;
#LOCKDARG=&lt;br /&gt;
# TCP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_TCPPORT=32803&lt;br /&gt;
# UDP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_UDPPORT=32769&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)&lt;br /&gt;
RPCNFSDARGS=&amp;quot;-V 4.1&amp;quot;&lt;br /&gt;
# Number of nfs server processes to be started.&lt;br /&gt;
# The default is 8. &lt;br /&gt;
RPCNFSDCOUNT=8&lt;br /&gt;
# Set V4 grace period in seconds&lt;br /&gt;
#NFSD_V4_GRACE=90&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)&lt;br /&gt;
RPCMOUNTDOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.statd. See rpc.statd(8)&lt;br /&gt;
STATDARG=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)&lt;br /&gt;
RPCIDMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)&lt;br /&gt;
RPCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
# Enable usage of gssproxy. See gssproxy-mech(8).&lt;br /&gt;
GSS_USE_PROXY=&amp;quot;no&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)&lt;br /&gt;
RPCSVCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to blkmapd. See blkmapd(8)&lt;br /&gt;
BLKMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Настройки сетевых директорий располагаются в файле &amp;lt;code&amp;gt;/etc/exports&amp;lt;/code&amp;gt;, для удобства, можно класть файлы с расширением &amp;lt;code&amp;gt;.exports&amp;lt;/code&amp;gt; в директорию &amp;lt;code&amp;gt;/etc/exports.d&amp;lt;/code&amp;gt;.&lt;br /&gt;
Структура файла /etc/exports следующая: &lt;br /&gt;
# Путь к сетевой директории&lt;br /&gt;
# Хост или сеть, для который будет предоставляться общий доступ к директории&lt;br /&gt;
# Опции для хоста&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/public.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/public.exports &lt;br /&gt;
/srv/nfs/public		192.168.10.0/24(ro,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/public&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна только для чтения, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Создаем директорию и записываем в нее проверочный файл:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/public&lt;br /&gt;
[root@vm-01 ~]# printf &amp;quot;This is test file for NFSv4.1 for RHEL7.0\n&amp;quot; &amp;gt; /srv/nfs/public/nfs_test.txt&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /srv/nfs/public/nfs_test.txt &lt;br /&gt;
12948466 -rw-r--r--. 1 root root 42 Nov 30 14:30 /srv/nfs/public/nfs_test.txt&lt;br /&gt;
[root@vm-01 ~]# cat /srv/nfs/public/nfs_test.txt &lt;br /&gt;
This is test file for NFSv4.1 for RHEL7.0&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Запускаем сервис:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable nfs-server&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-server.service' '/etc/systemd/system/nfs.target.wants/nfs-server.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start nfs-server&lt;br /&gt;
[root@vm-01 ~]# systemctl is-active nfs-server&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь монитируем:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.1 vm-01.virtual.lab:/srv/nfs/public /mnt/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 14:52:53 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.1,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# cat /mnt/nfs_test.txt &lt;br /&gt;
This is test file for NFSv4.1 for RHEL7.0&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_share_group&amp;diff=2389</id>
		<title>Nfs share group</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_share_group&amp;diff=2389"/>
				<updated>2018-12-03T10:04:48Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование NFS для сетевых групп ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;, права и владельца:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/account(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# chmod 2770 /srv/nfs/account/ &lt;br /&gt;
[root@vm-01 ~]# id lisa&lt;br /&gt;
uid=10000(lisa) gid=10000(virtuallab) groups=10000(virtuallab),10001(account)&lt;br /&gt;
[root@vm-01 ~]# id mary&lt;br /&gt;
uid=10001(mary) gid=10000(virtuallab) groups=10000(virtuallab),10001(account)&lt;br /&gt;
[root@vm-01 ~]# chown root:account /srv/nfs/account/&lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/account/&lt;br /&gt;
restorecon reset /srv/nfs/account context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/account/&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Группа &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; существует на сервере LDAP, так же как и пользователи &amp;lt;code&amp;gt;lisa&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;mary&amp;lt;/code&amp;gt;, которые входят в группу &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt;.&lt;br /&gt;
Для того, что бы контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; необходимо исправить файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; и указать, что будет использоваться версия &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;4.2&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sysconfig/nfs&lt;br /&gt;
#&lt;br /&gt;
# Optinal options passed to rquotad&lt;br /&gt;
RPCRQUOTADOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to in-kernel lockd&lt;br /&gt;
#LOCKDARG=&lt;br /&gt;
# TCP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_TCPPORT=32803&lt;br /&gt;
# UDP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_UDPPORT=32769&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)&lt;br /&gt;
RPCNFSDARGS=&amp;quot;-V 4.2&amp;quot;&lt;br /&gt;
# Number of nfs server processes to be started.&lt;br /&gt;
# The default is 8. &lt;br /&gt;
RPCNFSDCOUNT=8&lt;br /&gt;
# Set V4 grace period in seconds&lt;br /&gt;
#NFSD_V4_GRACE=90&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)&lt;br /&gt;
RPCMOUNTDOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.statd. See rpc.statd(8)&lt;br /&gt;
STATDARG=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)&lt;br /&gt;
RPCIDMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)&lt;br /&gt;
RPCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
# Enable usage of gssproxy. See gssproxy-mech(8).&lt;br /&gt;
GSS_USE_PROXY=&amp;quot;no&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)&lt;br /&gt;
RPCSVCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to blkmapd. See blkmapd(8)&lt;br /&gt;
BLKMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/account.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/account	192.168.10.0/24(rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/public&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Перезапустим сервис, так как мы поменяли версию &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl restart nfs-server.service &lt;br /&gt;
[root@vm-01 ~]# systemctl is-active nfs-server.service&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 ~]# systemctl is-enabled nfs-server.service&lt;br /&gt;
enabled&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/account&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir -p /mnt/nfs/account&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2 vm-01.virtual.lab:/srv/nfs/account /mnt/nfs/account/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 17:31:40 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:mnt_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   public&lt;br /&gt;
[lisa@vm-02 ~]$ printf &amp;quot;This is Lisa, and this is my file.\n&amp;quot; &amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ chmod 660 /mnt/nfs/account/account.txt &lt;br /&gt;
[lisa@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# su - mary&lt;br /&gt;
Last login: Fri Nov 30 17:32:49 MSK 2018 on pts/0&lt;br /&gt;
[mary@vm-02 ~]$ printf &amp;quot;This is Mary, and this is my contibution to Lisa's work.\n&amp;quot; &amp;gt;&amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ cat /mnt/nfs/account/account.txt &lt;br /&gt;
This is Lisa, and this is my file.&lt;br /&gt;
This is Mary, and this is my contibution to Lisa's work.&lt;br /&gt;
[mary@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# ls -lahi /mnt/nfs/account/&lt;br /&gt;
ls: cannot open directory /mnt/nfs/account/: Permission denied&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2388</id>
		<title>Nfs krb5</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2388"/>
				<updated>2018-12-03T10:04:23Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Конфигурирование сетевой директории */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование Kerberos NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/krb-share&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/krb-share(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/krb-share/&lt;br /&gt;
restorecon reset /srv/nfs/krb-share context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:var_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:public_content_rw_t:s0 krb-share&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   public&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/krb-share.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/krb-share      192.168.10.0/24(sec=krb5p,rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Присвоим права на директорию пользователю &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt; и группе &amp;lt;code&amp;gt;unix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id randy&lt;br /&gt;
uid=10002(randy) gid=10000(virtuallab) groups=10000(virtuallab),10002(unix)&lt;br /&gt;
[root@vm-01 ~]# chown randy:unix /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# chmod 750 /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/krb-share/&lt;br /&gt;
drwxr-x---. randy unix unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root  root unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/krb-share&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Проверяем разрешения &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; на монтирование директорий &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# semanage boolean -l | grep nfs_export&lt;br /&gt;
nfs_export_all_rw              (on   ,   on)  Allow any files/directories to be exported read/write via NFS.&lt;br /&gt;
nfs_export_all_ro              (on   ,   on)  Allow any files/directories to be exported read/only via NFS.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Перезапустим сервис, так как мы поменяли версию &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl restart nfs-server.service &lt;br /&gt;
[root@vm-01 ~]# systemctl is-active nfs-server.service&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 ~]# systemctl is-enabled nfs-server.service&lt;br /&gt;
enabled&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/account&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir -p /mnt/nfs/account&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2 vm-01.virtual.lab:/srv/nfs/account /mnt/nfs/account/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 17:31:40 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:mnt_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   public&lt;br /&gt;
[lisa@vm-02 ~]$ printf &amp;quot;This is Lisa, and this is my file.\n&amp;quot; &amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ chmod 660 /mnt/nfs/account/account.txt &lt;br /&gt;
[lisa@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# su - mary&lt;br /&gt;
Last login: Fri Nov 30 17:32:49 MSK 2018 on pts/0&lt;br /&gt;
[mary@vm-02 ~]$ printf &amp;quot;This is Mary, and this is my contibution to Lisa's work.\n&amp;quot; &amp;gt;&amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ cat /mnt/nfs/account/account.txt &lt;br /&gt;
This is Lisa, and this is my file.&lt;br /&gt;
This is Mary, and this is my contibution to Lisa's work.&lt;br /&gt;
[mary@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# ls -lahi /mnt/nfs/account/&lt;br /&gt;
ls: cannot open directory /mnt/nfs/account/: Permission denied&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2387</id>
		<title>Nfs krb5</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_krb5&amp;diff=2387"/>
				<updated>2018-12-03T09:49:06Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: Новая страница: «== Конфигурирование Kerberos NFS ==  ==== Предварительные требования ==== * Виртуальная машина с дву…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование Kerberos NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;krb-share&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/krb-share&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/krb-share(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/krb-share/&lt;br /&gt;
restorecon reset /srv/nfs/krb-share context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:var_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:public_content_rw_t:s0 krb-share&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   public&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/krb-share.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/krb-share      192.168.10.0/24(sec=krb5p,rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/krb-share&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Присвоим права на директорию пользователю &amp;lt;code&amp;gt;randy&amp;lt;/code&amp;gt; и группе &amp;lt;code&amp;gt;unix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id randy&lt;br /&gt;
uid=10002(randy) gid=10000(virtuallab) groups=10000(virtuallab),10002(unix)&lt;br /&gt;
[root@vm-01 ~]# chown randy:unix /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# chmod 750 /srv/nfs/krb-share/&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/krb-share/&lt;br /&gt;
drwxr-x---. randy unix unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root  root unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/krb-share&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Перезапустим сервис, так как мы поменяли версию &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl restart nfs-server.service &lt;br /&gt;
[root@vm-01 ~]# systemctl is-active nfs-server.service&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 ~]# systemctl is-enabled nfs-server.service&lt;br /&gt;
enabled&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/account&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir -p /mnt/nfs/account&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2 vm-01.virtual.lab:/srv/nfs/account /mnt/nfs/account/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 17:31:40 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:mnt_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   public&lt;br /&gt;
[lisa@vm-02 ~]$ printf &amp;quot;This is Lisa, and this is my file.\n&amp;quot; &amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ chmod 660 /mnt/nfs/account/account.txt &lt;br /&gt;
[lisa@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# su - mary&lt;br /&gt;
Last login: Fri Nov 30 17:32:49 MSK 2018 on pts/0&lt;br /&gt;
[mary@vm-02 ~]$ printf &amp;quot;This is Mary, and this is my contibution to Lisa's work.\n&amp;quot; &amp;gt;&amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ cat /mnt/nfs/account/account.txt &lt;br /&gt;
This is Lisa, and this is my file.&lt;br /&gt;
This is Mary, and this is my contibution to Lisa's work.&lt;br /&gt;
[mary@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# ls -lahi /mnt/nfs/account/&lt;br /&gt;
ls: cannot open directory /mnt/nfs/account/: Permission denied&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_share_group&amp;diff=2386</id>
		<title>Nfs share group</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_share_group&amp;diff=2386"/>
				<updated>2018-11-30T13:38:18Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: Новая страница: «== Конфигурирование NFS для сетевых групп ==  ==== Предварительные требования ==== * Виртуальна…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование NFS для сетевых групп ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;&lt;br /&gt;
* На серверной и клиентской машине настроена аутентикация и авторизация через LDAP и Kerberos&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Создаем директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; и присваиваем соответствующий контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;, права и владельца:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]# semanage fcontext -at public_content_rw_t '/srv/nfs/account(/.*)?' &lt;br /&gt;
[root@vm-01 ~]# chmod 2770 /srv/nfs/account/ &lt;br /&gt;
[root@vm-01 ~]# id lisa&lt;br /&gt;
uid=10000(lisa) gid=10000(virtuallab) groups=10000(virtuallab),10001(account)&lt;br /&gt;
[root@vm-01 ~]# id mary&lt;br /&gt;
uid=10001(mary) gid=10000(virtuallab) groups=10000(virtuallab),10001(account)&lt;br /&gt;
[root@vm-01 ~]# chown root:account /srv/nfs/account/&lt;br /&gt;
[root@vm-01 ~]# restorecon -vR /srv/nfs/account/&lt;br /&gt;
restorecon reset /srv/nfs/account context unconfined_u:object_r:var_t:s0-&amp;gt;unconfined_u:object_r:public_content_rw_t:s0&lt;br /&gt;
[root@vm-01 ~]# ls -lahiZ /srv/nfs/account/&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 .&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:var_t:s0   ..&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Группа &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; существует на сервере LDAP, так же как и пользователи &amp;lt;code&amp;gt;lisa&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;mary&amp;lt;/code&amp;gt;, которые входят в группу &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt;.&lt;br /&gt;
Для того, что бы контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt; необходимо исправить файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; и указать, что будет использоваться версия &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;4.2&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sysconfig/nfs&lt;br /&gt;
#&lt;br /&gt;
# Optinal options passed to rquotad&lt;br /&gt;
RPCRQUOTADOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to in-kernel lockd&lt;br /&gt;
#LOCKDARG=&lt;br /&gt;
# TCP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_TCPPORT=32803&lt;br /&gt;
# UDP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_UDPPORT=32769&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)&lt;br /&gt;
RPCNFSDARGS=&amp;quot;-V 4.2&amp;quot;&lt;br /&gt;
# Number of nfs server processes to be started.&lt;br /&gt;
# The default is 8. &lt;br /&gt;
RPCNFSDCOUNT=8&lt;br /&gt;
# Set V4 grace period in seconds&lt;br /&gt;
#NFSD_V4_GRACE=90&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)&lt;br /&gt;
RPCMOUNTDOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.statd. See rpc.statd(8)&lt;br /&gt;
STATDARG=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)&lt;br /&gt;
RPCIDMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)&lt;br /&gt;
RPCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
# Enable usage of gssproxy. See gssproxy-mech(8).&lt;br /&gt;
GSS_USE_PROXY=&amp;quot;no&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)&lt;br /&gt;
RPCSVCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to blkmapd. See blkmapd(8)&lt;br /&gt;
BLKMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/account.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/account.exports &lt;br /&gt;
/srv/nfs/account	192.168.10.0/24(rw,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/public&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна для записи, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Перечитаем список сетевых директорий:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# exportfs -avr&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/public&lt;br /&gt;
exporting 192.168.10.0/24:/srv/nfs/account&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
На клиенте созд&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Перезапустим сервис, так как мы поменяли версию &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl restart nfs-server.service &lt;br /&gt;
[root@vm-01 ~]# systemctl is-active nfs-server.service&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 ~]# systemctl is-enabled nfs-server.service&lt;br /&gt;
enabled&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине. Создадим директорию &amp;lt;code&amp;gt;/srv/nfs/account&amp;lt;/code&amp;gt; и смонтируем сетевую директорию &amp;lt;code&amp;gt;account&amp;lt;/code&amp;gt; в нее:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public  192.168.10.0/24&lt;br /&gt;
/srv/nfs/account 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]# mkdir -p /mnt/nfs/account&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.2 vm-01.virtual.lab:/srv/nfs/account /mnt/nfs/account/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 17:31:40 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.2,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# ls -lahiZ /mnt/nfs/&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   .&lt;br /&gt;
drwxr-xr-x. root root    system_u:object_r:mnt_t:s0       ..&lt;br /&gt;
drwxrws---. root account unconfined_u:object_r:public_content_rw_t:s0 account&lt;br /&gt;
drwxr-xr-x. root root    unconfined_u:object_r:mnt_t:s0   public&lt;br /&gt;
[lisa@vm-02 ~]$ printf &amp;quot;This is Lisa, and this is my file.\n&amp;quot; &amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ chmod 660 /mnt/nfs/account/account.txt &lt;br /&gt;
[lisa@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[lisa@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# su - mary&lt;br /&gt;
Last login: Fri Nov 30 17:32:49 MSK 2018 on pts/0&lt;br /&gt;
[mary@vm-02 ~]$ printf &amp;quot;This is Mary, and this is my contibution to Lisa's work.\n&amp;quot; &amp;gt;&amp;gt; /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ ls -lahiZ /mnt/nfs/account/account.txt &lt;br /&gt;
-rw-rw----. lisa account unconfined_u:object_r:public_content_rw_t:s0 /mnt/nfs/account/account.txt&lt;br /&gt;
[mary@vm-02 ~]$ cat /mnt/nfs/account/account.txt &lt;br /&gt;
This is Lisa, and this is my file.&lt;br /&gt;
This is Mary, and this is my contibution to Lisa's work.&lt;br /&gt;
[mary@vm-02 ~]$ exit&lt;br /&gt;
logout&lt;br /&gt;
[root@vm-02 ~]# ls -lahi /mnt/nfs/account/&lt;br /&gt;
ls: cannot open directory /mnt/nfs/account/: Permission denied&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Пользователя &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; не пускает потому, что сетевая директория имеет опцию &amp;lt;code&amp;gt;root_squash&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2385</id>
		<title>Nfs share</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2385"/>
				<updated>2018-11-30T10:51:52Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Конфигурирование сетевой директории */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Для развертывания &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; необходимые утилиты и демоны включены в пакет &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;. Файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; необходим для настроек параметров демона &amp;lt;code&amp;gt;rpc.nfsd&amp;lt;/code&amp;gt;. &lt;br /&gt;
В данном файле необходимо указать версию протокола &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; - 4.1. Приводим файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; к следующему виду:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sysconfig/nfs&lt;br /&gt;
#&lt;br /&gt;
# Optinal options passed to rquotad&lt;br /&gt;
RPCRQUOTADOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to in-kernel lockd&lt;br /&gt;
#LOCKDARG=&lt;br /&gt;
# TCP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_TCPPORT=32803&lt;br /&gt;
# UDP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_UDPPORT=32769&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)&lt;br /&gt;
RPCNFSDARGS=&amp;quot;-V 4.1&amp;quot;&lt;br /&gt;
# Number of nfs server processes to be started.&lt;br /&gt;
# The default is 8. &lt;br /&gt;
RPCNFSDCOUNT=8&lt;br /&gt;
# Set V4 grace period in seconds&lt;br /&gt;
#NFSD_V4_GRACE=90&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)&lt;br /&gt;
RPCMOUNTDOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.statd. See rpc.statd(8)&lt;br /&gt;
STATDARG=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)&lt;br /&gt;
RPCIDMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)&lt;br /&gt;
RPCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
# Enable usage of gssproxy. See gssproxy-mech(8).&lt;br /&gt;
GSS_USE_PROXY=&amp;quot;no&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)&lt;br /&gt;
RPCSVCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to blkmapd. See blkmapd(8)&lt;br /&gt;
BLKMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Настройки сетевых директорий располагаются в файле &amp;lt;code&amp;gt;/etc/exports&amp;lt;/code&amp;gt;, для удобства, можно класть файлы с расширением &amp;lt;code&amp;gt;.exports&amp;lt;/code&amp;gt; в директорию &amp;lt;code&amp;gt;/etc/exports.d&amp;lt;/code&amp;gt;.&lt;br /&gt;
Структура файла /etc/exports следующая: &lt;br /&gt;
# Путь к сетевой директории&lt;br /&gt;
# Хост или сеть, для который будет предоставляться общий доступ к директории&lt;br /&gt;
# Опции для хоста&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/public.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/public.exports &lt;br /&gt;
/srv/nfs/public		192.168.10.0/24(ro,root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/public&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна только для чтения, пользователь &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; будет отображаться в&lt;br /&gt;
пользователя &amp;lt;code&amp;gt;nobody&amp;lt;/code&amp;gt; на сервере.&lt;br /&gt;
Создаем директорию и записываем в нее проверочный файл:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/public&lt;br /&gt;
[root@vm-01 ~]# printf &amp;quot;This is test file for NFSv4.1 for RHEL7.0\n&amp;quot; &amp;gt; /srv/nfs/public/nfs_test.txt&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /srv/nfs/public/nfs_test.txt &lt;br /&gt;
12948466 -rw-r--r--. 1 root root 42 Nov 30 14:30 /srv/nfs/public/nfs_test.txt&lt;br /&gt;
[root@vm-01 ~]# cat /srv/nfs/public/nfs_test.txt &lt;br /&gt;
This is test file for NFSv4.1 for RHEL7.0&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Запускаем сервис:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable nfs-server&lt;br /&gt;
ln -s '/usr/lib/systemd/system/nfs-server.service' '/etc/systemd/system/nfs.target.wants/nfs-server.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start nfs-server&lt;br /&gt;
[root@vm-01 ~]# systemctl is-active nfs-server&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для корректной работы nfs, необхомо включить несколько сервисов в файрволе. Добавляем разрешения:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={mountd,nfs,rpc-bind} --permanent&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload&lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services&lt;br /&gt;
dhcpv6-client http https mountd nfs rpc-bind ssh&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверим доступность сетевой директории на самом сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public 192.168.10.0/24&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь проверим на клиентской машине:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# showmount -e vm-01.virtual.lab&lt;br /&gt;
Export list for vm-01.virtual.lab:&lt;br /&gt;
/srv/nfs/public 192.168.10.0/24&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Теперь монитируем:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# mount.nfs4 -v -o nfsvers=4.1 vm-01.virtual.lab:/srv/nfs/public /mnt/&lt;br /&gt;
mount.nfs4: timeout set for Fri Nov 30 14:52:53 2018&lt;br /&gt;
mount.nfs4: trying text-based options 'nfsvers=4.1,addr=192.168.10.8,clientaddr=192.168.10.9'&lt;br /&gt;
[root@vm-02 ~]# cat /mnt/nfs_test.txt &lt;br /&gt;
This is test file for NFSv4.1 for RHEL7.0&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2384</id>
		<title>Nfs share</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2384"/>
				<updated>2018-11-30T10:31:32Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Для развертывания &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; необходимые утилиты и демоны включены в пакет &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;. Файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; необходим для настроек параметров демона &amp;lt;code&amp;gt;rpc.nfsd&amp;lt;/code&amp;gt;. &lt;br /&gt;
В данном файле необходимо указать версию протокола &amp;lt;code&amp;gt;NFS&amp;lt;/code&amp;gt; - 4.1. Приводим файл &amp;lt;code&amp;gt;/etc/sysconfig/nfs&amp;lt;/code&amp;gt; к следующему виду:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sysconfig/nfs&lt;br /&gt;
#&lt;br /&gt;
# Optinal options passed to rquotad&lt;br /&gt;
RPCRQUOTADOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to in-kernel lockd&lt;br /&gt;
#LOCKDARG=&lt;br /&gt;
# TCP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_TCPPORT=32803&lt;br /&gt;
# UDP port rpc.lockd should listen on.&lt;br /&gt;
#LOCKD_UDPPORT=32769&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)&lt;br /&gt;
RPCNFSDARGS=&amp;quot;-V 4.1&amp;quot;&lt;br /&gt;
# Number of nfs server processes to be started.&lt;br /&gt;
# The default is 8. &lt;br /&gt;
RPCNFSDCOUNT=8&lt;br /&gt;
# Set V4 grace period in seconds&lt;br /&gt;
#NFSD_V4_GRACE=90&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)&lt;br /&gt;
RPCMOUNTDOPTS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.statd. See rpc.statd(8)&lt;br /&gt;
STATDARG=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)&lt;br /&gt;
RPCIDMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)&lt;br /&gt;
RPCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
# Enable usage of gssproxy. See gssproxy-mech(8).&lt;br /&gt;
GSS_USE_PROXY=&amp;quot;no&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)&lt;br /&gt;
RPCSVCGSSDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
# Optional arguments passed to blkmapd. See blkmapd(8)&lt;br /&gt;
BLKMAPDARGS=&amp;quot;&amp;quot;&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Настройки сетевых директорий располагаются в файле &amp;lt;code&amp;gt;/etc/exports&amp;lt;/code&amp;gt;, для удобства, можно класть файлы с расширением &amp;lt;code&amp;gt;.exports&amp;lt;/code&amp;gt; в директорию &amp;lt;code&amp;gt;/etc/exports.d&amp;lt;/code&amp;gt;.&lt;br /&gt;
Структура файла /etc/exports следующая: &lt;br /&gt;
# Путь к сетевой директории&lt;br /&gt;
# Хост или сеть, для который будет предоставляться общий доступ к директории&lt;br /&gt;
# Опции для хоста&lt;br /&gt;
Создаем файл &amp;lt;code&amp;gt;/etc/exports.d/public.exports&amp;lt;/code&amp;gt; в котором будет указана сетевая директория, следующего содержания:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/exports.d/public.exports &lt;br /&gt;
/srv/nfs/public		192.168.10.0/24(ro,no_root_squash)&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Директория &amp;lt;code&amp;gt;/srv/nfs/public&amp;lt;/code&amp;gt; доступна машинам из сети 192.168.10.0/24, директория доступна только для чтения.&lt;br /&gt;
Создаем директорию и записываем в нее проверочный файл:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# mkdir -p /srv/nfs/public&lt;br /&gt;
[root@vm-01 ~]# printf &amp;quot;This is test file for NFSv4.1 for RHEL7.0\n&amp;quot; &amp;gt; /srv/nfs/public/nfs_test.txt&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /srv/nfs/public/nfs_test.txt &lt;br /&gt;
12948466 -rw-r--r--. 1 root root 42 Nov 30 14:30 /srv/nfs/public/nfs_test.txt&lt;br /&gt;
[root@vm-01 ~]# cat /srv/nfs/public/nfs_test.txt &lt;br /&gt;
This is test file for NFSv4.1 for RHEL7.0&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Запускаем сервис:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 logs]# systemctl start httpd&lt;br /&gt;
[root@vm-01 logs]# systemctl is-active httpd&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 logs]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Добавляем разрешение в файрволе:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={http,https} --permanent &lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload &lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services &lt;br /&gt;
dhcpv6-client https http ssh dns&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt; обратимся к странице при помощи утилиты &amp;lt;code&amp;gt;curl&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# curl &amp;quot;http://192.168.1.1&amp;quot;&lt;br /&gt;
Hello world.&lt;br /&gt;
Tue Jan 23 13:57:22 MSK 2018&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2383</id>
		<title>Nfs share</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Nfs_share&amp;diff=2383"/>
				<updated>2018-11-30T09:43:04Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: Новая страница: «== Конфигурирование NFS ==  ==== Предварительные требования ==== * Виртуальная машина с двумя се…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Конфигурирование NFS ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-python&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;policycoreutils-devel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;setroubleshoot-server&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Конфигурирование сетевой директории ==&lt;br /&gt;
Для включения &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/content&amp;lt;/code&amp;gt;. Скопируем пример из документации в качестве &amp;quot;рыбы&amp;quot; для нашего будущего виртуального хоста, затем создадим директорию и присвоем ей контекст &amp;lt;code&amp;gt;SELinux&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Запуск ====&lt;br /&gt;
Запускаем сервис:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 logs]# systemctl start httpd&lt;br /&gt;
[root@vm-01 logs]# systemctl is-active httpd&lt;br /&gt;
active&lt;br /&gt;
[root@vm-01 logs]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Добавляем разрешение в файрволе:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --add-service={http,https} --permanent &lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --reload &lt;br /&gt;
success&lt;br /&gt;
[root@vm-01 ~]# firewall-cmd --list-services &lt;br /&gt;
dhcpv6-client https http ssh dns&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt; обратимся к странице при помощи утилиты &amp;lt;code&amp;gt;curl&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# curl &amp;quot;http://192.168.1.1&amp;quot;&lt;br /&gt;
Hello world.&lt;br /&gt;
Tue Jan 23 13:57:22 MSK 2018&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig Configuring the NFS Server]&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=RHCE&amp;diff=2382</id>
		<title>RHCE</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=RHCE&amp;diff=2382"/>
				<updated>2018-11-30T09:36:25Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* NFS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Для подготовки к экзамену использовались следующие материалы:&lt;br /&gt;
&lt;br /&gt;
* [https://linuxacademy.com/cp/modules/view/id/50 Видеокурсы] Linux Academy&lt;br /&gt;
* Замечательная книга Сандера Ван Вогта: [http://www.sandervanvugt.com/book-red-hat-rhcsa-rhce-7-cert-guide/ Sander van Vugt - Red Hat RHCSA/RHCE7 Cert Guide: Red Hat Enterprise Linux 7(EX200 and EX300)]&lt;br /&gt;
* [https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/?version=7 Официальная документация] по Red Hat Enterprise Linux 7&lt;br /&gt;
* Официальная документация для подготовки к экзамену EX300&lt;br /&gt;
* Сайт с информацией для подготовки к экзамену [https://www.certdepot.net/rhel7-rhce-exam-objectives/ CertDepot]&lt;br /&gt;
* Сайт с информацией для подготовки к экзамену [https://www.lisenet.com/rhce/ Lisnet]&lt;br /&gt;
* [[rhcsa-rhce-playbook|ansible playbook]] для настройки окружения сервера&lt;br /&gt;
В данный момент, экзамен носит номер [https://www.redhat.com/en/services/training/ex300-red-hat-certified-engineer-rhce-exam EX300] и включает в себя следующие темы:&lt;br /&gt;
&lt;br /&gt;
==== System configuration and management ====&lt;br /&gt;
* [[network_teaming_or_bonding|Use network teaming or bonding to configure aggregated network links between two Red Hat Enterprise Linux systems]]&lt;br /&gt;
* [[ipv6|Configure IPv6 addresses and perform basic IPv6 troubleshooting]]&lt;br /&gt;
* [[static_routes|Route IP traffic and create static routes]]&lt;br /&gt;
* [[firewalld|Use firewalld and associated mechanisms such as rich rules, zones and custom rules, to implement packet filtering and configure network address translation (NAT)]]&lt;br /&gt;
* [[auth_krb|Configure a system to authenticate using Kerberos]]&lt;br /&gt;
* [[iscsi|Configure a system as either an iSCSI target or initiator that persistently mounts an iSCSI target]]&lt;br /&gt;
* [[system_reports|Produce and deliver reports on system utilization (processor, memory, disk, and network)]]&lt;br /&gt;
* [[shell_script|Use shell scripting to automate system maintenance tasks]]&lt;br /&gt;
&lt;br /&gt;
==== Network services ====&lt;br /&gt;
* [[Installpackages|Install the packages needed to provide the service]]&lt;br /&gt;
* [[SELinuxservice|Configure SELinux to support the service]]&lt;br /&gt;
* [[SELinuxports|Use SELinux port labeling to allow services to use non-standard ports]]&lt;br /&gt;
* [[Config_service|Configure the service to start when the system is booted]]&lt;br /&gt;
* [[Config_service|Configure the service for basic operation]]&lt;br /&gt;
* [[Configure host-based and user-based security for the service]]&lt;br /&gt;
&lt;br /&gt;
==== HTTP/HTTPS ====&lt;br /&gt;
* [[vhost|Configure a virtual host]]&lt;br /&gt;
* [[apache_restrictions|Configure access restrictions on directories]]&lt;br /&gt;
* [[cgi_app|Deploy a basic CGI application]]&lt;br /&gt;
* [[apache_group|Configure group-managed content]]&lt;br /&gt;
* [[apache_tls|Configure TLS security]]&lt;br /&gt;
&lt;br /&gt;
==== DNS ====&lt;br /&gt;
* [[cache_dns|Configure a caching-only name server]]&lt;br /&gt;
* [[tshoot_dns|Troubleshoot DNS client issues]]&lt;br /&gt;
==== NFS ====&lt;br /&gt;
* [[nfs_share|Provide network shares to specific clients]]&lt;br /&gt;
* [[nfs_share_group|Provide network shares suitable for group collaboration]]&lt;br /&gt;
* [[nfs_krb5|Use Kerberos to control access to NFS network shares]]&lt;br /&gt;
&lt;br /&gt;
==== SMB ====&lt;br /&gt;
* [[smb_client|Provide network shares to specific clients]]&lt;br /&gt;
* [[smb_group|Provide network shares suitable for group collaboration]]&lt;br /&gt;
&lt;br /&gt;
==== SMTP ====&lt;br /&gt;
* [[postfix_null_client | Configure a system to forward all email to a central mail server]]&lt;br /&gt;
&lt;br /&gt;
==== SSH ====&lt;br /&gt;
* [[configure_ssh_key|Configure key-based authentication]]&lt;br /&gt;
* [[configure_ssh_params|Configure additional options described in documentation]]&lt;br /&gt;
&lt;br /&gt;
==== NTP ====&lt;br /&gt;
* [[time_sync|Synchronize time using other NTP peers]]&lt;br /&gt;
&lt;br /&gt;
==== Database services ====&lt;br /&gt;
* [[install_db|Install and configure MariaDB]]&lt;br /&gt;
* [[backup_db|Backup and restore a database]]&lt;br /&gt;
* [[create_schema|Create a simple database schema]]&lt;br /&gt;
* [[query_db|Perform simple SQL queries against a database]]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2381</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2381"/>
				<updated>2018-11-26T14:12:11Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Проверка */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;, после чего проверить файл &amp;lt;code&amp;gt;/etc/nsswitch.conf&amp;lt;/code&amp;gt;, который будет иметь следующий вид:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# An example Name Service Switch config file. This file should be&lt;br /&gt;
# sorted with the most-used services at the beginning.&lt;br /&gt;
#&lt;br /&gt;
# The entry '[NOTFOUND=return]' means that the search for an&lt;br /&gt;
# entry should stop if the search in the previous entry turned&lt;br /&gt;
# up nothing. Note that if the search failed due to some other reason&lt;br /&gt;
# (like no NIS server responding) then the search continues with the&lt;br /&gt;
# next entry.&lt;br /&gt;
#&lt;br /&gt;
# Valid entries include:&lt;br /&gt;
#&lt;br /&gt;
#	nisplus			Use NIS+ (NIS version 3)&lt;br /&gt;
#	nis			Use NIS (NIS version 2), also called YP&lt;br /&gt;
#	dns			Use DNS (Domain Name Service)&lt;br /&gt;
#	files			Use the local files&lt;br /&gt;
#	db			Use the local database (.db) files&lt;br /&gt;
#	compat			Use NIS on compat mode&lt;br /&gt;
#	hesiod			Use Hesiod for user lookups&lt;br /&gt;
#	[NOTFOUND=return]	Stop searching if not found so far&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# To use db, put the &amp;quot;db&amp;quot; in front of &amp;quot;files&amp;quot; for entries you want to be&lt;br /&gt;
# looked up first in the databases&lt;br /&gt;
#&lt;br /&gt;
# Example:&lt;br /&gt;
#passwd:    db files nisplus nis&lt;br /&gt;
#shadow:    db files nisplus nis&lt;br /&gt;
#group:     db files nisplus nis&lt;br /&gt;
&lt;br /&gt;
passwd:     files sss ldap&lt;br /&gt;
shadow:     files sss ldap&lt;br /&gt;
group:      files sss ldap&lt;br /&gt;
#initgroups: files&lt;br /&gt;
&lt;br /&gt;
#hosts:     db files nisplus nis dns&lt;br /&gt;
hosts:      files dns&lt;br /&gt;
&lt;br /&gt;
# Example - obey only what nisplus tells us...&lt;br /&gt;
#services:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#networks:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#protocols:  nisplus [NOTFOUND=return] files&lt;br /&gt;
#rpc:        nisplus [NOTFOUND=return] files&lt;br /&gt;
#ethers:     nisplus [NOTFOUND=return] files&lt;br /&gt;
#netmasks:   nisplus [NOTFOUND=return] files     &lt;br /&gt;
&lt;br /&gt;
bootparams: nisplus [NOTFOUND=return] files&lt;br /&gt;
&lt;br /&gt;
ethers:     files&lt;br /&gt;
netmasks:   files&lt;br /&gt;
networks:   files&lt;br /&gt;
protocols:  files&lt;br /&gt;
rpc:        files&lt;br /&gt;
services:   files sss&lt;br /&gt;
&lt;br /&gt;
netgroup:   files sss ldap&lt;br /&gt;
&lt;br /&gt;
publickey:  nisplus&lt;br /&gt;
&lt;br /&gt;
automount:  files sss ldap&lt;br /&gt;
aliases:    files nisplus&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
А файл &amp;lt;code&amp;gt;/etc/krb5.conf&amp;lt;/code&amp;gt;, будет следующим:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/krb5.conf &lt;br /&gt;
[logging]&lt;br /&gt;
 default = FILE:/var/log/krb5libs.log&lt;br /&gt;
 kdc = FILE:/var/log/krb5kdc.log&lt;br /&gt;
 admin_server = FILE:/var/log/kadmind.log&lt;br /&gt;
&lt;br /&gt;
[libdefaults]&lt;br /&gt;
 dns_lookup_realm = false&lt;br /&gt;
 ticket_lifetime = 24h&lt;br /&gt;
 renew_lifetime = 7d&lt;br /&gt;
 forwardable = true&lt;br /&gt;
 rdns = false&lt;br /&gt;
# default_realm = EXAMPLE.COM&lt;br /&gt;
 default_ccache_name = KEYRING:persistent:%{uid}&lt;br /&gt;
&lt;br /&gt;
 default_realm = VIRTUAL.LAB&lt;br /&gt;
[realms]&lt;br /&gt;
# EXAMPLE.COM = {&lt;br /&gt;
#  kdc = kerberos.example.com&lt;br /&gt;
#  admin_server = kerberos.example.com&lt;br /&gt;
# }&lt;br /&gt;
&lt;br /&gt;
 VIRTUAL.LAB = {&lt;br /&gt;
  admin_server = kdc1.virtual.lab&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 VIRTUAL.LAB = {&lt;br /&gt;
  admin_server = kdc1.virtual.lab&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
[domain_realm]&lt;br /&gt;
# .example.com = EXAMPLE.COM&lt;br /&gt;
# example.com = EXAMPLE.COM&lt;br /&gt;
 virtual.lab = VIRTUAL.LAB&lt;br /&gt;
 .virtual.lab = VIRTUAL.LAB&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо включить сервис &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable sssd&lt;br /&gt;
ln -s '/usr/lib/systemd/system/sssd.service' '/etc/systemd/system/multi-user.target.wants/sssd.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start sssd&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l sssd&lt;br /&gt;
sssd.service - System Security Services Daemon&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/sssd.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-11-26 17:23:10 MSK; 5s ago&lt;br /&gt;
  Process: 1016 ExecStart=/usr/sbin/sssd -D -f (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 1017 (sssd)&lt;br /&gt;
   CGroup: /system.slice/sssd.service&lt;br /&gt;
           ├─1017 /usr/sbin/sssd -D -f&lt;br /&gt;
           ├─1018 /usr/libexec/sssd/sssd_be --domain LDAP --debug-to-files&lt;br /&gt;
           ├─1019 /usr/libexec/sssd/sssd_nss --debug-to-files&lt;br /&gt;
           └─1020 /usr/libexec/sssd/sssd_pam --debug-to-files&lt;br /&gt;
&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1017]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[be[1018]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1019]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1020]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab systemd[1]: Started System Security Services Daemon.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверяем пользователей LDAP/Kerberos:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id &lt;br /&gt;
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023&lt;br /&gt;
[root@vm-01 ~]# id lisa&lt;br /&gt;
uid=10000(lisa) gid=10000(virtuallab) groups=10000(virtuallab),10001(account)&lt;br /&gt;
[root@vm-01 ~]# su - lisa&lt;br /&gt;
Creating home directory for lisa.&lt;br /&gt;
[lisa@vm-01 ~]$ id&lt;br /&gt;
uid=10000(lisa) gid=10000(virtuallab) groups=10000(virtuallab),10001(account) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023&lt;br /&gt;
[lisa@vm-01 ~]$ kinit lisa&lt;br /&gt;
Password for lisa@VIRTUAL.LAB: &lt;br /&gt;
[lisa@vm-01 ~]$ klist &lt;br /&gt;
Ticket cache: KEYRING:persistent:10000:10000&lt;br /&gt;
Default principal: lisa@VIRTUAL.LAB&lt;br /&gt;
&lt;br /&gt;
Valid starting       Expires              Service principal&lt;br /&gt;
11/26/2018 18:10:50  11/27/2018 18:10:50  krbtgt/VIRTUAL.LAB@VIRTUAL.LAB&lt;br /&gt;
	renew until 11/26/2018 18:10:50&lt;br /&gt;
[lisa@vm-01 ~]$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system-level_authentication_guide Документация по системной аутентикации]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2380</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2380"/>
				<updated>2018-11-26T14:06:26Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;, после чего проверить файл &amp;lt;code&amp;gt;/etc/nsswitch.conf&amp;lt;/code&amp;gt;, который будет иметь следующий вид:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# An example Name Service Switch config file. This file should be&lt;br /&gt;
# sorted with the most-used services at the beginning.&lt;br /&gt;
#&lt;br /&gt;
# The entry '[NOTFOUND=return]' means that the search for an&lt;br /&gt;
# entry should stop if the search in the previous entry turned&lt;br /&gt;
# up nothing. Note that if the search failed due to some other reason&lt;br /&gt;
# (like no NIS server responding) then the search continues with the&lt;br /&gt;
# next entry.&lt;br /&gt;
#&lt;br /&gt;
# Valid entries include:&lt;br /&gt;
#&lt;br /&gt;
#	nisplus			Use NIS+ (NIS version 3)&lt;br /&gt;
#	nis			Use NIS (NIS version 2), also called YP&lt;br /&gt;
#	dns			Use DNS (Domain Name Service)&lt;br /&gt;
#	files			Use the local files&lt;br /&gt;
#	db			Use the local database (.db) files&lt;br /&gt;
#	compat			Use NIS on compat mode&lt;br /&gt;
#	hesiod			Use Hesiod for user lookups&lt;br /&gt;
#	[NOTFOUND=return]	Stop searching if not found so far&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# To use db, put the &amp;quot;db&amp;quot; in front of &amp;quot;files&amp;quot; for entries you want to be&lt;br /&gt;
# looked up first in the databases&lt;br /&gt;
#&lt;br /&gt;
# Example:&lt;br /&gt;
#passwd:    db files nisplus nis&lt;br /&gt;
#shadow:    db files nisplus nis&lt;br /&gt;
#group:     db files nisplus nis&lt;br /&gt;
&lt;br /&gt;
passwd:     files sss ldap&lt;br /&gt;
shadow:     files sss ldap&lt;br /&gt;
group:      files sss ldap&lt;br /&gt;
#initgroups: files&lt;br /&gt;
&lt;br /&gt;
#hosts:     db files nisplus nis dns&lt;br /&gt;
hosts:      files dns&lt;br /&gt;
&lt;br /&gt;
# Example - obey only what nisplus tells us...&lt;br /&gt;
#services:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#networks:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#protocols:  nisplus [NOTFOUND=return] files&lt;br /&gt;
#rpc:        nisplus [NOTFOUND=return] files&lt;br /&gt;
#ethers:     nisplus [NOTFOUND=return] files&lt;br /&gt;
#netmasks:   nisplus [NOTFOUND=return] files     &lt;br /&gt;
&lt;br /&gt;
bootparams: nisplus [NOTFOUND=return] files&lt;br /&gt;
&lt;br /&gt;
ethers:     files&lt;br /&gt;
netmasks:   files&lt;br /&gt;
networks:   files&lt;br /&gt;
protocols:  files&lt;br /&gt;
rpc:        files&lt;br /&gt;
services:   files sss&lt;br /&gt;
&lt;br /&gt;
netgroup:   files sss ldap&lt;br /&gt;
&lt;br /&gt;
publickey:  nisplus&lt;br /&gt;
&lt;br /&gt;
automount:  files sss ldap&lt;br /&gt;
aliases:    files nisplus&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
А файл &amp;lt;code&amp;gt;/etc/krb5.conf&amp;lt;/code&amp;gt;, будет следующим:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/krb5.conf &lt;br /&gt;
[logging]&lt;br /&gt;
 default = FILE:/var/log/krb5libs.log&lt;br /&gt;
 kdc = FILE:/var/log/krb5kdc.log&lt;br /&gt;
 admin_server = FILE:/var/log/kadmind.log&lt;br /&gt;
&lt;br /&gt;
[libdefaults]&lt;br /&gt;
 dns_lookup_realm = false&lt;br /&gt;
 ticket_lifetime = 24h&lt;br /&gt;
 renew_lifetime = 7d&lt;br /&gt;
 forwardable = true&lt;br /&gt;
 rdns = false&lt;br /&gt;
# default_realm = EXAMPLE.COM&lt;br /&gt;
 default_ccache_name = KEYRING:persistent:%{uid}&lt;br /&gt;
&lt;br /&gt;
 default_realm = VIRTUAL.LAB&lt;br /&gt;
[realms]&lt;br /&gt;
# EXAMPLE.COM = {&lt;br /&gt;
#  kdc = kerberos.example.com&lt;br /&gt;
#  admin_server = kerberos.example.com&lt;br /&gt;
# }&lt;br /&gt;
&lt;br /&gt;
 VIRTUAL.LAB = {&lt;br /&gt;
  admin_server = kdc1.virtual.lab&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 VIRTUAL.LAB = {&lt;br /&gt;
  admin_server = kdc1.virtual.lab&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
[domain_realm]&lt;br /&gt;
# .example.com = EXAMPLE.COM&lt;br /&gt;
# example.com = EXAMPLE.COM&lt;br /&gt;
 virtual.lab = VIRTUAL.LAB&lt;br /&gt;
 .virtual.lab = VIRTUAL.LAB&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо включить сервис &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable sssd&lt;br /&gt;
ln -s '/usr/lib/systemd/system/sssd.service' '/etc/systemd/system/multi-user.target.wants/sssd.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start sssd&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l sssd&lt;br /&gt;
sssd.service - System Security Services Daemon&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/sssd.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-11-26 17:23:10 MSK; 5s ago&lt;br /&gt;
  Process: 1016 ExecStart=/usr/sbin/sssd -D -f (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 1017 (sssd)&lt;br /&gt;
   CGroup: /system.slice/sssd.service&lt;br /&gt;
           ├─1017 /usr/sbin/sssd -D -f&lt;br /&gt;
           ├─1018 /usr/libexec/sssd/sssd_be --domain LDAP --debug-to-files&lt;br /&gt;
           ├─1019 /usr/libexec/sssd/sssd_nss --debug-to-files&lt;br /&gt;
           └─1020 /usr/libexec/sssd/sssd_pam --debug-to-files&lt;br /&gt;
&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1017]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[be[1018]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1019]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1020]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab systemd[1]: Started System Security Services Daemon.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Проверка ====&lt;br /&gt;
С виртуальной машины &amp;lt;code&amp;gt;vm-01&amp;lt;/code&amp;gt; проверяем пользователей LDAP/Kerberos:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# id &lt;br /&gt;
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023&lt;br /&gt;
[root@vm-01 ~]# id lisa&lt;br /&gt;
uid=10000(lisa) gid=10000(virtuallab) groups=10000(virtuallab),10001(account)&lt;br /&gt;
[root@vm-01 ~]# su - lisa&lt;br /&gt;
Creating home directory for lisa.&lt;br /&gt;
[lisa@vm-01 ~]$ id&lt;br /&gt;
uid=10000(lisa) gid=10000(virtuallab) groups=10000(virtuallab),10001(account) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023&lt;br /&gt;
[lisa@vm-01 ~]$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system-level_authentication_guide Документация по системной аутентикации]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2379</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2379"/>
				<updated>2018-11-26T13:31:11Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;, после чего проверить файл &amp;lt;code&amp;gt;/etc/nsswitch.conf&amp;lt;/code&amp;gt;, который будет иметь следующий вид:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# An example Name Service Switch config file. This file should be&lt;br /&gt;
# sorted with the most-used services at the beginning.&lt;br /&gt;
#&lt;br /&gt;
# The entry '[NOTFOUND=return]' means that the search for an&lt;br /&gt;
# entry should stop if the search in the previous entry turned&lt;br /&gt;
# up nothing. Note that if the search failed due to some other reason&lt;br /&gt;
# (like no NIS server responding) then the search continues with the&lt;br /&gt;
# next entry.&lt;br /&gt;
#&lt;br /&gt;
# Valid entries include:&lt;br /&gt;
#&lt;br /&gt;
#	nisplus			Use NIS+ (NIS version 3)&lt;br /&gt;
#	nis			Use NIS (NIS version 2), also called YP&lt;br /&gt;
#	dns			Use DNS (Domain Name Service)&lt;br /&gt;
#	files			Use the local files&lt;br /&gt;
#	db			Use the local database (.db) files&lt;br /&gt;
#	compat			Use NIS on compat mode&lt;br /&gt;
#	hesiod			Use Hesiod for user lookups&lt;br /&gt;
#	[NOTFOUND=return]	Stop searching if not found so far&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# To use db, put the &amp;quot;db&amp;quot; in front of &amp;quot;files&amp;quot; for entries you want to be&lt;br /&gt;
# looked up first in the databases&lt;br /&gt;
#&lt;br /&gt;
# Example:&lt;br /&gt;
#passwd:    db files nisplus nis&lt;br /&gt;
#shadow:    db files nisplus nis&lt;br /&gt;
#group:     db files nisplus nis&lt;br /&gt;
&lt;br /&gt;
passwd:     files sss ldap&lt;br /&gt;
shadow:     files sss ldap&lt;br /&gt;
group:      files sss ldap&lt;br /&gt;
#initgroups: files&lt;br /&gt;
&lt;br /&gt;
#hosts:     db files nisplus nis dns&lt;br /&gt;
hosts:      files dns&lt;br /&gt;
&lt;br /&gt;
# Example - obey only what nisplus tells us...&lt;br /&gt;
#services:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#networks:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#protocols:  nisplus [NOTFOUND=return] files&lt;br /&gt;
#rpc:        nisplus [NOTFOUND=return] files&lt;br /&gt;
#ethers:     nisplus [NOTFOUND=return] files&lt;br /&gt;
#netmasks:   nisplus [NOTFOUND=return] files     &lt;br /&gt;
&lt;br /&gt;
bootparams: nisplus [NOTFOUND=return] files&lt;br /&gt;
&lt;br /&gt;
ethers:     files&lt;br /&gt;
netmasks:   files&lt;br /&gt;
networks:   files&lt;br /&gt;
protocols:  files&lt;br /&gt;
rpc:        files&lt;br /&gt;
services:   files sss&lt;br /&gt;
&lt;br /&gt;
netgroup:   files sss ldap&lt;br /&gt;
&lt;br /&gt;
publickey:  nisplus&lt;br /&gt;
&lt;br /&gt;
automount:  files sss ldap&lt;br /&gt;
aliases:    files nisplus&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
А файл &amp;lt;code&amp;gt;/etc/krb5.conf&amp;lt;/code&amp;gt;, будет следующим:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/krb5.conf &lt;br /&gt;
[logging]&lt;br /&gt;
 default = FILE:/var/log/krb5libs.log&lt;br /&gt;
 kdc = FILE:/var/log/krb5kdc.log&lt;br /&gt;
 admin_server = FILE:/var/log/kadmind.log&lt;br /&gt;
&lt;br /&gt;
[libdefaults]&lt;br /&gt;
 dns_lookup_realm = false&lt;br /&gt;
 ticket_lifetime = 24h&lt;br /&gt;
 renew_lifetime = 7d&lt;br /&gt;
 forwardable = true&lt;br /&gt;
 rdns = false&lt;br /&gt;
# default_realm = EXAMPLE.COM&lt;br /&gt;
 default_ccache_name = KEYRING:persistent:%{uid}&lt;br /&gt;
&lt;br /&gt;
 default_realm = VIRTUAL.LAB&lt;br /&gt;
[realms]&lt;br /&gt;
# EXAMPLE.COM = {&lt;br /&gt;
#  kdc = kerberos.example.com&lt;br /&gt;
#  admin_server = kerberos.example.com&lt;br /&gt;
# }&lt;br /&gt;
&lt;br /&gt;
 VIRTUAL.LAB = {&lt;br /&gt;
  admin_server = kdc1.virtual.lab&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 VIRTUAL.LAB = {&lt;br /&gt;
  admin_server = kdc1.virtual.lab&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
[domain_realm]&lt;br /&gt;
# .example.com = EXAMPLE.COM&lt;br /&gt;
# example.com = EXAMPLE.COM&lt;br /&gt;
 virtual.lab = VIRTUAL.LAB&lt;br /&gt;
 .virtual.lab = VIRTUAL.LAB&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо включить сервис &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable sssd&lt;br /&gt;
ln -s '/usr/lib/systemd/system/sssd.service' '/etc/systemd/system/multi-user.target.wants/sssd.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start sssd&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l sssd&lt;br /&gt;
sssd.service - System Security Services Daemon&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/sssd.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-11-26 17:23:10 MSK; 5s ago&lt;br /&gt;
  Process: 1016 ExecStart=/usr/sbin/sssd -D -f (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 1017 (sssd)&lt;br /&gt;
   CGroup: /system.slice/sssd.service&lt;br /&gt;
           ├─1017 /usr/sbin/sssd -D -f&lt;br /&gt;
           ├─1018 /usr/libexec/sssd/sssd_be --domain LDAP --debug-to-files&lt;br /&gt;
           ├─1019 /usr/libexec/sssd/sssd_nss --debug-to-files&lt;br /&gt;
           └─1020 /usr/libexec/sssd/sssd_pam --debug-to-files&lt;br /&gt;
&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1017]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[be[1018]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1019]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1020]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab systemd[1]: Started System Security Services Daemon.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2378</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2378"/>
				<updated>2018-11-26T13:25:37Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Предварительные требования */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;, после чего проверить файл &amp;lt;code&amp;gt;/etc/nsswitch.conf&amp;lt;/code&amp;gt;, который будет иметь следующий вид:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# An example Name Service Switch config file. This file should be&lt;br /&gt;
# sorted with the most-used services at the beginning.&lt;br /&gt;
#&lt;br /&gt;
# The entry '[NOTFOUND=return]' means that the search for an&lt;br /&gt;
# entry should stop if the search in the previous entry turned&lt;br /&gt;
# up nothing. Note that if the search failed due to some other reason&lt;br /&gt;
# (like no NIS server responding) then the search continues with the&lt;br /&gt;
# next entry.&lt;br /&gt;
#&lt;br /&gt;
# Valid entries include:&lt;br /&gt;
#&lt;br /&gt;
#	nisplus			Use NIS+ (NIS version 3)&lt;br /&gt;
#	nis			Use NIS (NIS version 2), also called YP&lt;br /&gt;
#	dns			Use DNS (Domain Name Service)&lt;br /&gt;
#	files			Use the local files&lt;br /&gt;
#	db			Use the local database (.db) files&lt;br /&gt;
#	compat			Use NIS on compat mode&lt;br /&gt;
#	hesiod			Use Hesiod for user lookups&lt;br /&gt;
#	[NOTFOUND=return]	Stop searching if not found so far&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# To use db, put the &amp;quot;db&amp;quot; in front of &amp;quot;files&amp;quot; for entries you want to be&lt;br /&gt;
# looked up first in the databases&lt;br /&gt;
#&lt;br /&gt;
# Example:&lt;br /&gt;
#passwd:    db files nisplus nis&lt;br /&gt;
#shadow:    db files nisplus nis&lt;br /&gt;
#group:     db files nisplus nis&lt;br /&gt;
&lt;br /&gt;
passwd:     files sss ldap&lt;br /&gt;
shadow:     files sss ldap&lt;br /&gt;
group:      files sss ldap&lt;br /&gt;
#initgroups: files&lt;br /&gt;
&lt;br /&gt;
#hosts:     db files nisplus nis dns&lt;br /&gt;
hosts:      files dns&lt;br /&gt;
&lt;br /&gt;
# Example - obey only what nisplus tells us...&lt;br /&gt;
#services:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#networks:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#protocols:  nisplus [NOTFOUND=return] files&lt;br /&gt;
#rpc:        nisplus [NOTFOUND=return] files&lt;br /&gt;
#ethers:     nisplus [NOTFOUND=return] files&lt;br /&gt;
#netmasks:   nisplus [NOTFOUND=return] files     &lt;br /&gt;
&lt;br /&gt;
bootparams: nisplus [NOTFOUND=return] files&lt;br /&gt;
&lt;br /&gt;
ethers:     files&lt;br /&gt;
netmasks:   files&lt;br /&gt;
networks:   files&lt;br /&gt;
protocols:  files&lt;br /&gt;
rpc:        files&lt;br /&gt;
services:   files sss&lt;br /&gt;
&lt;br /&gt;
netgroup:   files sss ldap&lt;br /&gt;
&lt;br /&gt;
publickey:  nisplus&lt;br /&gt;
&lt;br /&gt;
automount:  files sss ldap&lt;br /&gt;
aliases:    files nisplus&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо включить сервис &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable sssd&lt;br /&gt;
ln -s '/usr/lib/systemd/system/sssd.service' '/etc/systemd/system/multi-user.target.wants/sssd.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start sssd&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l sssd&lt;br /&gt;
sssd.service - System Security Services Daemon&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/sssd.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-11-26 17:23:10 MSK; 5s ago&lt;br /&gt;
  Process: 1016 ExecStart=/usr/sbin/sssd -D -f (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 1017 (sssd)&lt;br /&gt;
   CGroup: /system.slice/sssd.service&lt;br /&gt;
           ├─1017 /usr/sbin/sssd -D -f&lt;br /&gt;
           ├─1018 /usr/libexec/sssd/sssd_be --domain LDAP --debug-to-files&lt;br /&gt;
           ├─1019 /usr/libexec/sssd/sssd_nss --debug-to-files&lt;br /&gt;
           └─1020 /usr/libexec/sssd/sssd_pam --debug-to-files&lt;br /&gt;
&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1017]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[be[1018]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1019]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1020]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab systemd[1]: Started System Security Services Daemon.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2377</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2377"/>
				<updated>2018-11-26T13:23:29Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Настройка аутентикации LDAP/Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;, после чего проверить файл &amp;lt;code&amp;gt;/etc/nsswitch.conf&amp;lt;/code&amp;gt;, который будет иметь следующий вид:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# /etc/nsswitch.conf&lt;br /&gt;
#&lt;br /&gt;
# An example Name Service Switch config file. This file should be&lt;br /&gt;
# sorted with the most-used services at the beginning.&lt;br /&gt;
#&lt;br /&gt;
# The entry '[NOTFOUND=return]' means that the search for an&lt;br /&gt;
# entry should stop if the search in the previous entry turned&lt;br /&gt;
# up nothing. Note that if the search failed due to some other reason&lt;br /&gt;
# (like no NIS server responding) then the search continues with the&lt;br /&gt;
# next entry.&lt;br /&gt;
#&lt;br /&gt;
# Valid entries include:&lt;br /&gt;
#&lt;br /&gt;
#	nisplus			Use NIS+ (NIS version 3)&lt;br /&gt;
#	nis			Use NIS (NIS version 2), also called YP&lt;br /&gt;
#	dns			Use DNS (Domain Name Service)&lt;br /&gt;
#	files			Use the local files&lt;br /&gt;
#	db			Use the local database (.db) files&lt;br /&gt;
#	compat			Use NIS on compat mode&lt;br /&gt;
#	hesiod			Use Hesiod for user lookups&lt;br /&gt;
#	[NOTFOUND=return]	Stop searching if not found so far&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# To use db, put the &amp;quot;db&amp;quot; in front of &amp;quot;files&amp;quot; for entries you want to be&lt;br /&gt;
# looked up first in the databases&lt;br /&gt;
#&lt;br /&gt;
# Example:&lt;br /&gt;
#passwd:    db files nisplus nis&lt;br /&gt;
#shadow:    db files nisplus nis&lt;br /&gt;
#group:     db files nisplus nis&lt;br /&gt;
&lt;br /&gt;
passwd:     files sss ldap&lt;br /&gt;
shadow:     files sss ldap&lt;br /&gt;
group:      files sss ldap&lt;br /&gt;
#initgroups: files&lt;br /&gt;
&lt;br /&gt;
#hosts:     db files nisplus nis dns&lt;br /&gt;
hosts:      files dns&lt;br /&gt;
&lt;br /&gt;
# Example - obey only what nisplus tells us...&lt;br /&gt;
#services:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#networks:   nisplus [NOTFOUND=return] files&lt;br /&gt;
#protocols:  nisplus [NOTFOUND=return] files&lt;br /&gt;
#rpc:        nisplus [NOTFOUND=return] files&lt;br /&gt;
#ethers:     nisplus [NOTFOUND=return] files&lt;br /&gt;
#netmasks:   nisplus [NOTFOUND=return] files     &lt;br /&gt;
&lt;br /&gt;
bootparams: nisplus [NOTFOUND=return] files&lt;br /&gt;
&lt;br /&gt;
ethers:     files&lt;br /&gt;
netmasks:   files&lt;br /&gt;
networks:   files&lt;br /&gt;
protocols:  files&lt;br /&gt;
rpc:        files&lt;br /&gt;
services:   files sss&lt;br /&gt;
&lt;br /&gt;
netgroup:   files sss ldap&lt;br /&gt;
&lt;br /&gt;
publickey:  nisplus&lt;br /&gt;
&lt;br /&gt;
automount:  files sss ldap&lt;br /&gt;
aliases:    files nisplus&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Далее, необходимо включить сервис &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# systemctl enable sssd&lt;br /&gt;
ln -s '/usr/lib/systemd/system/sssd.service' '/etc/systemd/system/multi-user.target.wants/sssd.service'&lt;br /&gt;
[root@vm-01 ~]# systemctl start sssd&lt;br /&gt;
[root@vm-01 ~]# systemctl status -l sssd&lt;br /&gt;
sssd.service - System Security Services Daemon&lt;br /&gt;
   Loaded: loaded (/usr/lib/systemd/system/sssd.service; enabled)&lt;br /&gt;
   Active: active (running) since Mon 2018-11-26 17:23:10 MSK; 5s ago&lt;br /&gt;
  Process: 1016 ExecStart=/usr/sbin/sssd -D -f (code=exited, status=0/SUCCESS)&lt;br /&gt;
 Main PID: 1017 (sssd)&lt;br /&gt;
   CGroup: /system.slice/sssd.service&lt;br /&gt;
           ├─1017 /usr/sbin/sssd -D -f&lt;br /&gt;
           ├─1018 /usr/libexec/sssd/sssd_be --domain LDAP --debug-to-files&lt;br /&gt;
           ├─1019 /usr/libexec/sssd/sssd_nss --debug-to-files&lt;br /&gt;
           └─1020 /usr/libexec/sssd/sssd_pam --debug-to-files&lt;br /&gt;
&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1017]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[be[1018]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1019]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab sssd[1020]: Starting up&lt;br /&gt;
Nov 26 17:23:10 vm-01.virtual.lab systemd[1]: Started System Security Services Daemon.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2376</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2376"/>
				<updated>2018-11-26T13:14:17Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Настройка аутентикации LDAP/Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;:&lt;br /&gt;
И за&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2375</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2375"/>
				<updated>2018-11-26T13:13:53Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Настройка аутентикации LDAP/Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;/code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;:&lt;br /&gt;
И за&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2374</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2374"/>
				<updated>2018-11-26T13:13:20Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Настройка аутентикации LDAP/Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;:&lt;br /&gt;
И за&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2373</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2373"/>
				<updated>2018-11-26T13:12:40Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Настройка аутентикации LDAP/Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;:&lt;br /&gt;
И за&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2372</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2372"/>
				<updated>2018-11-26T13:12:19Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Настройка аутентикации LDAP/Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;, однако, почему-то, после установки пакета &amp;lt;code&amp;gt;sssd-common&amp;lt;/code&amp;gt;, конфигурационный файл &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;code&amp;gt; сервиса &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt; отсутствует, поэтому&lt;br /&gt;
его надо сделать самостоятельно, по примерам из манов &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# cat /etc/sssd/sssd.conf &lt;br /&gt;
[sssd]&lt;br /&gt;
domains = LDAP&lt;br /&gt;
services = nss, pam&lt;br /&gt;
config_file_version = 2&lt;br /&gt;
&lt;br /&gt;
[nss]&lt;br /&gt;
filter_groups = root&lt;br /&gt;
filter_users = root&lt;br /&gt;
           &lt;br /&gt;
[pam]&lt;br /&gt;
           &lt;br /&gt;
[domain/LDAP]&lt;br /&gt;
id_provider = ldap&lt;br /&gt;
ldap_uri = ldap://kdc1.virtual.lab&lt;br /&gt;
ldap_search_base = dc=virtual,dc=lab&lt;br /&gt;
ldap_tls_reqcert = allow&lt;br /&gt;
&lt;br /&gt;
auth_provider = krb5&lt;br /&gt;
krb5_server = kdc1.virtual.lab&lt;br /&gt;
krb5_realm = VIRTUAL.LAB&lt;br /&gt;
cache_credentials = false&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
После создания файла &amp;lt;code&amp;gt;/etc/sssd/sssd.conf&amp;lt;code&amp;gt;, ему необходимо присвоить права:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# chmod 600 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]# ls -lahi /etc/sssd/sssd.conf&lt;br /&gt;
780266 -rw-------. 1 root root 379 Nov 26 17:04 /etc/sssd/sssd.conf&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;:&lt;br /&gt;
И за&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2371</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2371"/>
				<updated>2018-11-26T12:48:02Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Настройка аутентикации LDAP/Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;. Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты&lt;br /&gt;
с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# authconfig --enableldap --enableldapauth --ldapserver=kdc1.virtual.lab --ldapbasedn=&amp;quot;dc=virtual,dc=lab&amp;quot; --enableldaptls --enablekrb5 --krb5adminserver=kdc1.virtual.lab --krb5realm=VIRTUAL.LAB --enablesssd --enablesssdauth --disablecachecreds --enablemkhomedir --test&lt;br /&gt;
[root@vm-01 ~]# &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Вводим команду и получаем следующий вывод:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
caching is disabled&lt;br /&gt;
nss_files is always enabled&lt;br /&gt;
nss_compat is disabled&lt;br /&gt;
nss_db is disabled&lt;br /&gt;
nss_hesiod is disabled&lt;br /&gt;
 hesiod LHS = &amp;quot;&amp;quot;&lt;br /&gt;
 hesiod RHS = &amp;quot;&amp;quot;&lt;br /&gt;
nss_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
nss_nis is disabled&lt;br /&gt;
 NIS server = &amp;quot;&amp;quot;&lt;br /&gt;
 NIS domain = &amp;quot;&amp;quot;&lt;br /&gt;
nss_nisplus is disabled&lt;br /&gt;
nss_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
 Winbind template shell = &amp;quot;/bin/false&amp;quot;&lt;br /&gt;
 SMB idmap range = &amp;quot;16777216-33554431&amp;quot;&lt;br /&gt;
nss_sss is enabled by default&lt;br /&gt;
nss_wins is disabled&lt;br /&gt;
nss_mdns4_minimal is disabled&lt;br /&gt;
DNS preference over NSS or WINS is disabled&lt;br /&gt;
pam_unix is always enabled&lt;br /&gt;
 shadow passwords are enabled&lt;br /&gt;
 password hashing algorithm is sha512&lt;br /&gt;
pam_krb5 is enabled&lt;br /&gt;
 krb5 realm = &amp;quot;VIRTUAL.LAB&amp;quot;&lt;br /&gt;
 krb5 realm via dns is disabled&lt;br /&gt;
 krb5 kdc = &amp;quot;&amp;quot;&lt;br /&gt;
 krb5 kdc via dns is disabled&lt;br /&gt;
 krb5 admin server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
pam_ldap is enabled&lt;br /&gt;
 LDAP+TLS is enabled&lt;br /&gt;
 LDAP server = &amp;quot;kdc1.virtual.lab&amp;quot;&lt;br /&gt;
 LDAP base DN = &amp;quot;dc=virtual,dc=lab&amp;quot;&lt;br /&gt;
 LDAP schema = &amp;quot;rfc2307&amp;quot;&lt;br /&gt;
pam_pkcs11 is disabled&lt;br /&gt;
 use only smartcard for login is disabled&lt;br /&gt;
 smartcard module = &amp;quot;&amp;quot;&lt;br /&gt;
 smartcard removal action = &amp;quot;&amp;quot;&lt;br /&gt;
pam_fprintd is disabled&lt;br /&gt;
pam_ecryptfs is disabled&lt;br /&gt;
pam_winbind is disabled&lt;br /&gt;
 SMB workgroup = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB servers = &amp;quot;&amp;quot;&lt;br /&gt;
 SMB security = &amp;quot;user&amp;quot;&lt;br /&gt;
 SMB realm = &amp;quot;&amp;quot;&lt;br /&gt;
pam_sss is enabled by default&lt;br /&gt;
 credential caching in SSSD is disabled&lt;br /&gt;
 SSSD use instead of legacy services if possible is enabled&lt;br /&gt;
IPAv2 is disabled&lt;br /&gt;
IPAv2 domain was not joined&lt;br /&gt;
 IPAv2 server = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 realm = &amp;quot;&amp;quot;&lt;br /&gt;
 IPAv2 domain = &amp;quot;&amp;quot;&lt;br /&gt;
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)&lt;br /&gt;
pam_passwdqc is disabled ()&lt;br /&gt;
pam_access is disabled ()&lt;br /&gt;
pam_mkhomedir or pam_oddjob_mkhomedir is enabled (umask=0077)&lt;br /&gt;
Always authorize local users is enabled ()&lt;br /&gt;
Authenticate system accounts against network services is disabled&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Если введенная информация верна, то можно заменить ключ &amp;lt;code&amp;gt;--test&amp;lt;/code&amp;gt; на ключ &amp;lt;code&amp;gt;--update&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2370</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2370"/>
				<updated>2018-11-26T12:40:11Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Заодно проверим записи о нашем LDAP/Kerberos сервере:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# dig vm-03.virtual.lab +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-03.virtual.lab +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-03.virtual.lab.	3600	IN	CNAME	kdc1.virtual.lab.&lt;br /&gt;
kdc1.virtual.lab.	3600	IN	A	192.168.10.10&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Настройка аутентикации LDAP/Kerberos ==&lt;br /&gt;
Аутентикации будет происходит посредством демона &amp;lt;code&amp;gt;SSSD&amp;lt;/code&amp;gt;. Для конфигурации аутентикации в LDAP будем использовать утилиту &amp;lt;code&amp;gt;authconfig&amp;lt;/code&amp;gt;. Вывод утилиты&lt;br /&gt;
с ключом &amp;lt;code&amp;gt;--help&amp;lt;/code&amp;gt; обширный, поэтому ключи будем вводить сверху вниз:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2369</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2369"/>
				<updated>2018-11-26T12:33:30Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Предварительная настройка сетевых интерфейсов на виртуальных машинах */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная проверка настроек на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2368</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2368"/>
				<updated>2018-11-26T12:25:15Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;openldap-clients&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная настройка сетевых интерфейсов на виртуальных машинах ==&lt;br /&gt;
Сначала стоит проверить прямую и обратную записи нашего клиента:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# hostnamectl &lt;br /&gt;
   Static hostname: vm-01.virtual.lab&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
           Chassis: n/a&lt;br /&gt;
        Machine ID: dae7e96c98de7f40aeb335bcaf3e35c2&lt;br /&gt;
           Boot ID: 36ea0ee3d744490e897c7f595bb98978&lt;br /&gt;
    Virtualization: kvm&lt;br /&gt;
  Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo)&lt;br /&gt;
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server&lt;br /&gt;
            Kernel: Linux 3.10.0-123.el7.x86_64&lt;br /&gt;
      Architecture: x86_64&lt;br /&gt;
[root@vm-01 ~]# dig vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; vm-01.virtual.lab @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
vm-01.virtual.lab.	3600	IN	A	192.168.10.8&lt;br /&gt;
[root@vm-01 ~]# dig -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.9.4-RedHat-9.9.4-14.el7 &amp;lt;&amp;lt;&amp;gt;&amp;gt; -x 192.168.10.8 @192.168.10.10 +noall +answer&lt;br /&gt;
;; global options: +cmd&lt;br /&gt;
8.10.168.192.in-addr.arpa. 3600	IN	PTR	vm-01.virtual.lab.&lt;br /&gt;
[root@vm-01 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее, следует убедиться, что LDAP сервер настроен и отдает пользователей/группы:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# ldapsearch -LLL -H ldap://vm-03.virtual.lab -D &amp;quot;cn=admin,dc=virtual,dc=lab&amp;quot; -b &amp;quot;dc=virtual,dc=lab&amp;quot; -W &amp;quot;(uid=randy)&amp;quot;&lt;br /&gt;
Enter LDAP Password: &lt;br /&gt;
dn: uid=randy,ou=users,dc=virtual,dc=lab&lt;br /&gt;
displayName: Randall Clark&lt;br /&gt;
uid: randy&lt;br /&gt;
objectClass: inetOrgPerson&lt;br /&gt;
objectClass: organizationalPerson&lt;br /&gt;
objectClass: person&lt;br /&gt;
objectClass: posixAccount&lt;br /&gt;
objectClass: top&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
userPassword:: e1NTSEF9aGdmWlNsUTlUb3g1NHVpM3lrV3FVMEo1S1hUd0s4amg=&lt;br /&gt;
uidNumber: 10002&lt;br /&gt;
gidNumber: 10000&lt;br /&gt;
sn: Clark&lt;br /&gt;
homeDirectory: /home/randy&lt;br /&gt;
mail: rclark@virtual.lab&lt;br /&gt;
givenName: Randall&lt;br /&gt;
cn: randy&lt;br /&gt;
&lt;br /&gt;
[root@vm-01 ~]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2367</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2367"/>
				<updated>2018-11-26T11:57:25Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Предварительные требования */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
* Наличие прямой и обратной записи клиента и kerberos сервера в DNS.&lt;br /&gt;
&lt;br /&gt;
== Предварительная настройка сетевых интерфейсов на виртуальных машинах ==&lt;br /&gt;
==== Настройка параметров ядра ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2366</id>
		<title>Auth krb</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Auth_krb&amp;diff=2366"/>
				<updated>2018-11-26T11:35:12Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: Новая страница: «== Настройка аутентикации Kerberos ==  ==== Предварительные требования ==== * Две виртуальная маши…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка аутентикации Kerberos ==&lt;br /&gt;
&lt;br /&gt;
==== Предварительные требования ====&lt;br /&gt;
* Две виртуальная машины с двумя сетевыми интерфейсами в каждой&lt;br /&gt;
* Установленные пакеты: &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pam_krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;nss-pam-ldapd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-ldap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-krb5-common&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sssd-client&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oddjob-mkhomedir&amp;lt;/code&amp;gt;&lt;br /&gt;
* Установленный и настроенный сервис точного времени&lt;br /&gt;
 &lt;br /&gt;
== Предварительная настройка сетевых интерфейсов на виртуальных машинах ==&lt;br /&gt;
==== Настройка параметров ядра ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-editing_network_configuration_files Редакирование конфигурационных файлов сети]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2365</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2365"/>
				<updated>2018-11-20T07:11:01Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Дальнейшие действия */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Утилита &amp;lt;code&amp;gt;string2hex.pl&amp;lt;/code&amp;gt; служит для создания файла &amp;lt;code&amp;gt;service.keyfile&amp;lt;/code&amp;gt; и вызывается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ ./string2hex.pl -s cn=krbadmin,ou=users,dc=virtual,dc=lab -p test1234&lt;br /&gt;
cn=krbadmin,ou=users,dc=virtual,dc=lab#{HEX}7465737431323334&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Дальнейшие действия ===&lt;br /&gt;
После разворачивания виртуальных машин, необходимо информацию о них занести в DNS, на сервере &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/zone/virtual.lab &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
@               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
; Our services&lt;br /&gt;
_kerberos._tcp.virtual.lab.        IN	SRV	0	0	88	kdc1.virtual.lab.&lt;br /&gt;
_kerberos._udp.virtual.lab.        IN	SRV     0       0       88      kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._tcp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._udp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._udp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._tcp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._udp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._tcp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.         &lt;br /&gt;
_ldap._udp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
_ldap._tcp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
kdc1			IN      A       192.168.10.10&lt;br /&gt;
vm-03		IN	CNAME	kdc1&lt;br /&gt;
ns1			IN	CNAME	kdc1&lt;br /&gt;
&lt;br /&gt;
vm-01			IN	A	192.168.10.8&lt;br /&gt;
vm-01			IN	A	192.168.10.9&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/addr.arpa/10.168.192.in-addr.arpa &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
8      IN      PTR     vm-01.virtual.lab.&lt;br /&gt;
9      IN      PTR     vm-02.virtual.lab.&lt;br /&gt;
10      IN      PTR     kdc1.virtual.lab.&lt;br /&gt;
[root@vm-03 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
На виртуальных машинах нужно прописать адрес DNS из внутренней сети:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth1 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.ignore-auto-dns yes&lt;br /&gt;
[root@vm-02 ~]# systemctl restart NetworkManager&lt;br /&gt;
[root@vm-02 ~]# cat /etc/resolv.conf &lt;br /&gt;
# Generated by NetworkManager&lt;br /&gt;
search virtual.lab&lt;br /&gt;
nameserver 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2364</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2364"/>
				<updated>2018-11-20T07:06:31Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Дальнейшие действия */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Утилита &amp;lt;code&amp;gt;string2hex.pl&amp;lt;/code&amp;gt; служит для создания файла &amp;lt;code&amp;gt;service.keyfile&amp;lt;/code&amp;gt; и вызывается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ ./string2hex.pl -s cn=krbadmin,ou=users,dc=virtual,dc=lab -p test1234&lt;br /&gt;
cn=krbadmin,ou=users,dc=virtual,dc=lab#{HEX}7465737431323334&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Дальнейшие действия ===&lt;br /&gt;
После разворачивания виртуальных машин, необходимо информацию о них занести в DNS, на сервере &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/zone/virtual.lab &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        201811i2000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
@               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
; Our services&lt;br /&gt;
_kerberos._tcp.virtual.lab.        IN	SRV	0	0	88	kdc1.virtual.lab.&lt;br /&gt;
_kerberos._udp.virtual.lab.        IN	SRV     0       0       88      kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._tcp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._udp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._udp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._tcp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._udp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._tcp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.         &lt;br /&gt;
_ldap._udp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
_ldap._tcp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
kdc1			IN      A       192.168.10.10&lt;br /&gt;
vm-03		IN	CNAME	kdc1&lt;br /&gt;
ns1			IN	CNAME	kdc1&lt;br /&gt;
&lt;br /&gt;
vm-01			IN	A	192.168.10.8&lt;br /&gt;
vm-01			IN	A	192.168.10.9&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/addr.arpa/10.168.192.in-addr.arpa &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
8      IN      PTR     vm-01.virtual.lab.&lt;br /&gt;
9      IN      PTR     vm-02.virtual.lab.&lt;br /&gt;
10      IN      PTR     kdc1.virtual.lab.&lt;br /&gt;
[root@vm-03 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
На виртуальных машинах нужно прописать адрес DNS из внутренней сети:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth1 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]# nmcli connection modify eth0 ipv4.ignore-auto-dns yes&lt;br /&gt;
[root@vm-02 ~]# systemctl restart NetworkManager&lt;br /&gt;
[root@vm-02 ~]# cat /etc/resolv.conf &lt;br /&gt;
# Generated by NetworkManager&lt;br /&gt;
search virtual.lab&lt;br /&gt;
nameserver 192.168.10.10&lt;br /&gt;
[root@vm-02 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2363</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2363"/>
				<updated>2018-11-20T07:04:23Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Утилита &amp;lt;code&amp;gt;string2hex.pl&amp;lt;/code&amp;gt; служит для создания файла &amp;lt;code&amp;gt;service.keyfile&amp;lt;/code&amp;gt; и вызывается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ ./string2hex.pl -s cn=krbadmin,ou=users,dc=virtual,dc=lab -p test1234&lt;br /&gt;
cn=krbadmin,ou=users,dc=virtual,dc=lab#{HEX}7465737431323334&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Дальнейшие действия ===&lt;br /&gt;
После разворачивания виртуальных машин, необходимо информацию о них занести в DNS, на сервере &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/zone/virtual.lab &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        201811i2000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
@               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
; Our services&lt;br /&gt;
_kerberos._tcp.virtual.lab.        IN	SRV	0	0	88	kdc1.virtual.lab.&lt;br /&gt;
_kerberos._udp.virtual.lab.        IN	SRV     0       0       88      kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._tcp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos-adm._udp.virtual.lab.    IN	SRV     0       0       749     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._udp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kerberos_master._tcp.virtual.lab. IN	SRV     0       0       751     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._udp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.&lt;br /&gt;
_kpasswd._tcp.virtual.lab.         IN	SRV     0       0       464     kdc1.virtual.lab.         &lt;br /&gt;
_ldap._udp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
_ldap._tcp.virtual.lab.            IN	SRV     0       0       389     kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
kdc1			IN      A       192.168.10.10&lt;br /&gt;
vm-03		IN	CNAME	kdc1&lt;br /&gt;
ns1			IN	CNAME	kdc1&lt;br /&gt;
&lt;br /&gt;
vm-01			IN	A	192.168.10.8&lt;br /&gt;
vm-01			IN	A	192.168.10.9&lt;br /&gt;
[root@vm-03 ~]# cat /var/named/addr.arpa/10.168.192.in-addr.arpa &lt;br /&gt;
$TTL    3600&lt;br /&gt;
@       IN      SOA     kdc1.virtual.lab. admin.virtual.lab. (&lt;br /&gt;
                        2018112000&lt;br /&gt;
                        604800          ; Refresh&lt;br /&gt;
                        86400           ; Retry&lt;br /&gt;
                        2419200         ; Expire&lt;br /&gt;
                        3600 )  ; Negative Cache TTL&lt;br /&gt;
;&lt;br /&gt;
               IN      NS      kdc1.virtual.lab.&lt;br /&gt;
&lt;br /&gt;
8      IN      PTR     vm-01.virtual.lab.&lt;br /&gt;
9      IN      PTR     vm-02.virtual.lab.&lt;br /&gt;
10      IN      PTR     kdc1.virtual.lab.&lt;br /&gt;
[root@vm-03 ~]#&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
На виртуальных машинах нужно прописать адрес DNS из внутренней сети:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
[root@vm-01 ~]# nmcli connection modify eth0 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-01 ~]# nmcli connection modify eth1 ipv4.dns 192.168.10.10&lt;br /&gt;
[root@vm-01 ~]# nmcli connection modify eth0 ipv4.ignore-auto-dns yes&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2362</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2362"/>
				<updated>2018-11-20T06:49:04Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Утилита &amp;lt;code&amp;gt;string2hex.pl&amp;lt;/code&amp;gt; служит для создания файла &amp;lt;code&amp;gt;service.keyfile&amp;lt;/code&amp;gt; и вызывается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ ./string2hex.pl -s cn=krbadmin,ou=users,dc=virtual,dc=lab -p test1234&lt;br /&gt;
cn=krbadmin,ou=users,dc=virtual,dc=lab#{HEX}7465737431323334&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Дальнейшие действия ===&lt;br /&gt;
После разворачивания виртуальных машин, необходимо информацию о них занести в DNS, на сервере &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2361</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2361"/>
				<updated>2018-11-15T07:52:17Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: /* Сервер */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Утилита &amp;lt;code&amp;gt;string2hex.pl&amp;lt;/code&amp;gt; служит для создания файла &amp;lt;code&amp;gt;service.keyfile&amp;lt;/code&amp;gt; и вызывается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ ./string2hex.pl -s cn=krbadmin,ou=users,dc=virtual,dc=lab -p test1234&lt;br /&gt;
cn=krbadmin,ou=users,dc=virtual,dc=lab#{HEX}7465737431323334&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	<entry>
		<id>http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2360</id>
		<title>Rhcsa-rhce-playbook</title>
		<link rel="alternate" type="text/html" href="http://wiki.ipnp.su/index.php?title=Rhcsa-rhce-playbook&amp;diff=2360"/>
				<updated>2018-11-14T11:08:23Z</updated>
		
		<summary type="html">&lt;p&gt;Andy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Ansible playbook для подготовки к экзаменам RHCSA/RHCE (EX200/EX300) ==&lt;br /&gt;
&lt;br /&gt;
=== Общая информация ===&lt;br /&gt;
Плейбук разворачивает окружение для подготовки к экзамену RHCSA-RHCE (EX200/EX300). Пользователь, который &lt;br /&gt;
разворачивает плейбук должен иметь доступ к локальной машине по протоколу &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Domain: virual.lab&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;Network: 192.168.10.0/24&amp;lt;/code&amp;gt;&lt;br /&gt;
Предполагается, что пользовательские виртуальные машины носят название:  и &amp;lt;code&amp;gt;vm-02&amp;lt;/code&amp;gt;, &lt;br /&gt;
сервер называется &amp;lt;code&amp;gt;vm-03&amp;lt;/code&amp;gt; и необходим для работы DNS, LDAP и предоставления тестовых пользователей. &lt;br /&gt;
Все задачи по выполнению экзамена происходят на пользовательских виртуальных машинах.&lt;br /&gt;
Предполагается следующая адресация:&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-01 - 192.168.10.8&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-02 - 192.168.10.9&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;vm-03 - 192.168.10.10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Пользовательские машины ===&lt;br /&gt;
&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Установленные пакеты в виртуальных машинах: &amp;lt;code&amp;gt;nfs-utils&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;krb5-workstation&amp;lt;/code&amp;gt;&lt;br /&gt;
* пароль &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; - &amp;lt;code&amp;gt;test1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_vm.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=9 vmname=vm-02 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
При запуске обязательно следует передавать параметры:&lt;br /&gt;
* &amp;lt;code&amp;gt;lastoctet&amp;lt;/code&amp;gt; - число присваивается последнему октету внутренней сети&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - имя виртуальной машины&lt;br /&gt;
* &amp;lt;code&amp;gt;vmname&amp;lt;/code&amp;gt; - путь к iso файлу, с образом RHEL7. &lt;br /&gt;
Использовать именно RHEL7 именно версии 7.0, не обязательно, можно взять и версию 7.x, либо какую-нибудь СentOS7.x, однако, из-за обновления некоторых программ, возможно иное поведение, отличное от старых версий.&lt;br /&gt;
Например, &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt; в RHEL/CentOS 7.1 и выше знает про опцию &amp;lt;code&amp;gt;ipv4.gateway&amp;lt;/code&amp;gt;, в версии 7.0 она прописывается после опции &amp;lt;code&amp;gt;ipv4.adresses&amp;lt;/code&amp;gt; через пробел. Так же, &amp;lt;code&amp;gt;firewalld&amp;lt;/code&amp;gt; в версии &lt;br /&gt;
RHEL/CentOS 7.1 и выше имеет большее количество шаблонов сервисов. Например:&amp;lt;br /&amp;gt;&lt;br /&gt;
Версия 7.0&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
Red Hat Enterprise Linux Server release 7.0 (Maipo)&lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Версия 7.5&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# cat /etc/redhat-release &lt;br /&gt;
CentOS Linux release 7.5.1804 (Core) &lt;br /&gt;
# firewall-cmd --get-services&lt;br /&gt;
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Сервер ===&lt;br /&gt;
* Виртуальная машина с двумя сетевыми интерфейсами, двумя жесткими дисками&lt;br /&gt;
* Учетные записи:&lt;br /&gt;
1. SSH&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;root/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
2. LDAP&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=admin,dc=virtual,dc=lab/123321&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=lisa,ou=users,dc=virtual,dc=lab/elizabeth1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=mary,ou=users,dc=virtual,dc=lab/maria1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;cn=randy,ou=users,dc=virtual,dc=lab/randy1&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. Kerberos&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;krbadmin/test1234&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Машина разворачивается следующим образом:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -v /home/andy/tmp/rhcsa-rhce/deploy_srv.yml -i /home/andy/tmp/rhcsa-rhce/inventories/localhost/hosts -u andy -k --become-method=su -K -e 'lastoctet=10 vmname=vm-03 isopath=/home/andy/Downloads/RHEL7/rhel-server-7.0-x86_64-dvd.iso playbookpath=/home/andy/tmp/rhcsa-rhce/ username=andy'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
[https://docs.ansible.com Документация для Ansible]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://natenka.gitbooks.io/ansible-dlya-setevih-inzhenerov/content/ Ansible для сетевых инженеров]&lt;/div&gt;</summary>
		<author><name>Andy</name></author>	</entry>

	</feed>