#!/bin/bashfunction installopenssh() {#### 请将此目录放到/opt目录下执行######## 配置YUM源####clearecho -e "\t\t########################"echo -e "\t\t# 配置YUM仓库 #"echo -e "\t\t########################"sleep 1 echo -e "启动脚本....................................\033[32m [成功] \033[0m"sleep 1echo -e "备份YUM源中.................................\033[33m [稍等] \033[0m"sleep 3 mkdir /etc/yum.repos.d/yum.bak &>/dev/null mv /etc/yum.repos.d/* /etc/yum.repos.d/yum.bak/ &>/dev/nullid &>/dev/null if [ $? -eq 0 ];thenecho -e "备份YUM源...................................\033[32m [成功] \033[0m"elseecho -e "备份YUM源...................................\033[31m [失败] \033[0m"fisleep 1echo -e "配置YUM源中.................................\033[33m [稍等] \033[0m"sleep 1cat > /etc/yum.repos.d/local.repo <<EOF[local]name=localyumbaseurl=ftp://x.x.x.x/pub/centos7.5enabled=1gpgcheck=0EOFyum clean all &>/dev/nullif [ $? -eq 0 ];thenecho -e "配置YUM源...................................\033[32m [成功] \033[0m"else echo -e "配置YUM源...................................\033[31m [失败] \033[0m"fi#### 配置install openssh8.0 ####cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak &>/dev/nullecho -e "\t\t########################"echo -e "\t\t# ssh文件备份完成 #"echo -e "\t\t########################"clearecho -e "\t\t########################"echo -e "\t\t# 配置安装openssh #"echo -e "\t\t########################"echo -e "安装依赖包....................................\033[33m [稍等] \033[0m"RPMS='zlib-devel openssl-devel gcc perl-devel pam-devel unzip'yum install -y $RPMS &>/dev/nullecho "openssh8.0默认路径为:/opt/openssh.install/RPM/openssh8.0"echo "openssh8.6默认路径为:/opt/openssh.install/RPM/openssh8.6"read -p "请输入存放RPM包绝对路径目录位置:" pathif [ -d $path ];thenecho -e "判断文件是否存在.......................... \033[032m [存在] \033[0m"cd $pathyum -y install * &>/dev/nullif [ $? -eq 0 ];thenecho -e "安装成功...................................\033[032m [成功] \033[0m" elseecho -e "安装失败...................................\033[031m [失败] \033[0m"fielseecho -e "判断文件是否存在......................... \033[031m [不存在] \033[0m"fisleep 2#### 其他 配置####clearecho -e "\t\t########################"echo -e "\t\t# 其他 配置 #"echo -e "\t\t########################"cd /etc/ssh/chmod 400 ssh_host_ecdsa_key ssh_host_ed25519_key ssh_host_rsa_keyif [ $? -eq 0 ];thenecho -e "调整权限....................................\033[032m [成功] \033[0m"elseecho -e "调整权限....................................\033[031m [失败] \033[0m"fisleep 2 clearecho -e "\t\t########################"echo -e "\t\t# 最后的配置 #"echo -e "\t\t########################"cat >> /etc/ssh/sshd_config <<EOFPubkeyAuthentication yesPasswordAuthentication yes PermitRootLogin yesEOFsshd -t &>/dev/nullif [ $? -eq 0 ];thenread -p "完成所有配置是否重启sshd服务[Y/N]:" ynif [ $yn == y ];thensystemctl restart sshdsleep 2 if [ $? -eq 0 ];thenecho "[重启成功]"else echo "[重启失败]"fielif [ $yn == n ];thenecho "[完成]没有重启sshd服务"else echo "[输入无效]"fifisleep 2clearecho "SElinux开启状态会影响到root用户禁止远程登入状态"read -p "是否关闭SElinux?[Y/N]:" yn2if [ $yn2 == y ];thensetenforce 0sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/configecho "[已关闭]"elif [ $yn2 == n ];thenecho "[不进行操作]"elseecho "[输入无效]"fi#### raw格式优化 ####cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak &>/dev/nullrm -rf /etc/ssh/sshd_config &>/dev/nullcp /opt/openssh.install/sshd_config /etc/ssh/ &>/dev/nullsystemctl restart sshd &>/dev/null}#### 安装telnet ####function telnet_install() {yum -y localinstall /opt/openssh.install/telent/* &>/dev/nullcp telent/telnet /etc/xinetd.d/mv /etc/securetty /etc/securetty.bak &>/dev/nullsystemctl restart xinetd#### firewalld ####firewall-cmd --add-service=telnet --permanent &>/dev/nullfirewall-cmd --reload &>/dev/null}#### 卸载telnet ####function telnet_remove() {rpm -e telnet-0.17-66.el7.x86_64rpm -e telnet-server-0.17-66.el7.x86_64firewall-cmd --remove-service=telnet --permanent firewall-cmd --reload mv /etc/securetty.bak /etc/securettymv /etc/xinetd.d/telnet /etc/xinetd.d/telnet.bak}## =====函数引用===== ##installopenssh#telnet_install #telnet_remove1qaz!QAZ