Подготовка ОС РЕДОС 7.3
Базовая настройка
Отключение SElinux
sudo setenforce 0
cat > /etc/selinux/config <<EOF
SELINUX=permissive
SELINUXTYPE=targeted
EOF
Установка базовых приложений
Допускается использовани пакетного менеджера dnf, yum
sudo yum -y update
sudo yum -y install bash-completion htop mc net-tools screen bind-utils vim deltarpm nano chrony iftop ethtool wget curl lm_sensors yum-utils
sudo systemctl disable postfix
sudo systemctl enable --now chronyd
Обновление:
yum -y update && yum -y upgrade
Настройка имени хоста
sudo hostnamectl set-hostname <pc_name>.or<ip_address>.mvs.lyra
sudo systemctl restart systemd-hostnamed.service
Настройка локальной сети
Включение форвардинга
echo "net.ipv4.ip_forward = 1" > /etc/sysctl.conf
echo "net.ipv6.conf.all.disable_ipv6=1" > /etc/sysctl.d/80-ipv6.conf
sysctl –p
Настройка сетевого интерфейса
nmcli device status
nmcli connection show
nmcli connection modify <connectionName>/<mask>
nmcli connection modify <connectionName> ipv4.addresses <staticIp>
nmcli connection modify <connectionName> ipv4.gateway <gatewayIp>
nmcli connection modify <connectionName> ipv4.dns <dnsIp>
nmcli connection modify <connectionName> ipv4.method manual
nmcli connection modify <connectionName> ipv6.method ignore
nmcli connection up <connectionName>
nmcli connection <connection_name> autoconnect yes
Настройка sshd
Необходимо сгенерировать ключевую пару для подключения к серверу (на локальной машине) и добавить на удаленный сервер
ssh-keygen -t ed25519 -C "mvsadmin key" -N "" -f serverHostName.ec.privateKey
ssh-copy-id -i ~/.ssh/serverHostName.ec.pub mvsadmin@remote_ip
На удаленном сервере изменить имя файла, права доступа:
mv /home/mvsadmin/.ssh/authorized_keys /home/mvsadmin/.ssh/authorizedKeys
chown mvsadmin:mvsadmin -R /home/mvsadmin/.ssh
chmod 0500 /home/mvsadmin/.ssh
chmod 0400 /home/mvsadmin/.ssh/authorizedKeys
По умолчанию firewalld не установлен, если требуется установить, выполнить команду:
sudo yum install firewalld
Добавить новый порт для ssh в firewalld
firewall-cmd --permanent --zone=public --add-port=41385/tcp
firewall-cmd --reload
На сервере сделать бэкап конфигурации /etc/ssh/sshd_config
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.orig
Обратите внимание! Терминальную сессию при выполнении следующих команд не закрываем, пока не настроен ssh и не проверено подключение.
Останавить службу ssh:
systemctl stop sshd
Удалить файлы:
rm -fv /etc/ssh/ssh_host_*
Файл конфигурации ssh:
sudo vim /etc/ssh/sshd_config
Здесь в конфигурации: отключение доступа по паролю, разрешено подключение только для mvsadmin, новый порт, не использовать резолвинг dns, и многое другое.
Port 41385
AllowUsers mvsadmin
AllowGroups wheel
LogLevel INFO
#LogLevel DEBUG
SyslogFacility AUTH
AcceptEnv LC_* LANG
AddressFamily inet
ListenAddress 0.0.0.0
TCPKeepAlive yes
UseDNS no
Protocol 2
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
PermitRootLogin no
PermitEmptyPasswords no
PermitTunnel no
PermitUserEnvironment no
UsePAM yes
AuthorizedKeysFile .ssh/authorizedKeys
Banner none
PrintLastLog yes
PrintMotd no
ClientAliveCountMax 4
ClientAliveInterval 10
Compression yes
LoginGraceTime 60
MaxAuthTries 3
MaxSessions 8
MaxStartups 4
StrictModes yes
RekeyLimit 512M 1h
ChallengeResponseAuthentication no
GSSAPIAuthentication no
HostbasedAuthentication no
KerberosAuthentication no
PasswordAuthentication no
PubkeyAuthentication yes
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
Subsystem sftp /usr/libexec/openssh/sftp-server
Сохранить и запустить службу:
sudo systemctl start sshd
Проверить вход по ключу из новой консоли, чтобы была возможность что-то исправить.
ssh mvsadmin@<remote_ip> -p <port> -i <path_to_privateKey>
Цветовая схема в консоли
echo "export PS1='\[\033[00;33m\]\u\[\033[00;32m\]@\H\[\033[00m\]\[\033[01;34m\] \w \$\[\033[00m\] '" >> /home/mvsadmin/.bash_profile
echo "export PS1='\[\033[00;31m\]\u\[\033[00;32m\]@\H\[\033[00m\]\[\033[01;34m\] \w \#\[\033[00m\] '" >> /root/.bash_profile
source .bash_profile
Подключение репозиториев MVS
Релиз yakutsk11 yum
sudo cat << EOF > /etc/yum.repos.d/mvs-yakutsk11.repo
[mvs-yakutsk11]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/yakutsk11/redos/7/
gpgcheck = 0
gpgkey = file:///etc/pki/rpm-gpg/mvs_key
name = MVS yakutsk11 repository
enabled = 1
EOF
Релиз yakutsk yum
sudo cat << EOF > /etc/yum.repos.d/mvs-yakutsk.repo
[mvs-yakutsk]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/yakutsk/redos/7/
gpgcheck = 0
gpgkey = file:///etc/pki/rpm-gpg/mvs_key
name = MVS yakutsk repository
enabled = 1
EOF
Релиз Saratov yum
sudo cat << EOF > /etc/yum.repos.d/mvs-saratov.repo
[mvs-saratov]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/saratov/
gpgcheck = 0
gpgkey = file:///etc/pki/rpm-gpg/mvs_key
name = MVS saratov repository
enabled = 1
EOF
Релиз Yukki1.1 yum
sudo cat << EOF > /etc/yum.repos.d/mvs-yukki11.repo
[mvs-yukki1.1]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/yukki1.1/
gpgcheck = 0
gpgkey = file:///etc/pki/rpm-gpg/mvs_key
name = MVS yukki1.1 repository
enabled = 1
EOF
Релиз icu2.0 yum
sudo cat << EOF > /etc/yum.repos.d/mvs-icu2.0.repo
[mvs-icu2.0]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/icu2.0/
gpgcheck = 0
gpgkey = file:///etc/pki/rpm-gpg/mvs_key
name = MVS icu2.0 repository
enabled = 1
EOF
Релиз Yukki1.0 yum
sudo cat << EOF > /etc/yum.repos.d/mvs-yukki.repo
[mvs-yukki]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/yukki/
gpgcheck = 0
gpgkey = file:///etc/pki/rpm-gpg/mvs_key
name = MVS yukki repository
enabled = 1
EOF
Релиз njc yum
sudo cat << EOF > /etc/yum.repos.d/mvs-njc.repo
[njc1.0]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/njc1.0
gpgcheck = 0
name = MVS ES control1
enabled = 1
EOF
Репозиторий зависимостей Lyra3 yum
В этом репозитории выкладываются пакеты, требуемые остальными релизами
sudo cat << EOF > /etc/yum.repos.d/mvs-3rdparty.repo
[lyra3.3rdparty]
baseurl = https://<login>:<password>@repo.mvslyra.com/repository/lyra3.3rdparty/
gpgcheck = 0
name = MVS 3rdparty
enabled = 1
EOF
Обновление кэша:
sudo yum makecache
Проверить пакеты в репозитории можно с помощью команды:
sudo yum search mvs