ssh综合项目

ssh综合项目

一、判断你输入的字符是数字、字母还是其他字符。

#!/bin/bash
#判断输入的字符是字母,数字,还是其他
read -p "请输入内容" i
case "$i" in
  [a-z] | [A-Z])
    echo "您输入的是字母"
  ;;
  [0-9])
    echo "您输入的是数字"
  ;;
  *)
    echo "您输入的是其他字符"
exit 1
esac 

在这里插入图片描述

二、打印出6行的菱形图形。

#!/bin/bash
#菱形
read -p "请输入菱形的长度" len
#!/bin/bash
#菱形
read -p "请输入菱形的长度" len
for i in `seq 1 $len`
do
  for ((j=$len-1;j>=$i;j--))
  do
    echo -n " "
  done
  for((m=1;m<=$i;m++))
  do
    echo -n "* "
  done
echo
done
for i in `seq 1 $len`
do
  for((j=1;j<=$i;j++))
  do
  echo -n " "
  done
  for ((n=$len-1;n>=$i;n--))
  do
  echo -n "* "
  done
echo
done

在这里插入图片描述

三、冒泡算法排序,从大到小排出下列数组(66 3 2 15 100 70 160 8)的大小顺序。

#!/bin/bash
score=(66 3 2 15 100 70 160 8)
for ((i=1;i<${#score[*]};i++))
do
    for ((j=0;j<${#score[*]}-$i;j++))
    do
        if [ ${score[j]} -lt ${score[(($j+1))]} ]
        then temp=${score[j]}
             score[j]=${score[(($j+1))]}
             score[(($j+1))]=$temp
        fi
    done
done
echo ${score[*]}

在这里插入图片描述

四、实现ssh的免密登录。

#!/bin/bash
# 免密登录
yum -y install expect &> /dev/null
/usr/bin/expect <<-EOF
spawn ssh-keygen -t rsa
expect "/root/.ssh/id_rsa" {send "\r"}
expect "empty for no passphrase" {send "\r"}
expect "passphrase again" {send "\r"}
expect eof
EOF
/usr/bin/expect <<-EOF
spawn ssh-copy-id 192.168.17.20
expect "yes/no" {send "yes\r"}
expect "root@192.168.17.20's password" {send "123456\r"}
expect eof
EOF
ssh root@192.168.17.20

在这里插入图片描述
在这里插入图片描述

五、实现dns及apache服务的一键化部署,要求apche服务器绑定域名,客户机实现访问。

#!/bin/bash
#实现dns及apache服务的一键化部署,要求apche服务器绑定域名,客户机实现访问。
dns=/var/named
dns_conf=/etc/named.conf
dns_zones=/etc/named.rfc1912.zones
local=/var/named/aa.com.local
zone=/var/named/aa.com.zone

yum -y install httpd
yum -y install bind*

[ -e /var/www/html/index.html ] || touch /var/www/html/index.html
index=/var/www/html/index.html
chmod 755 $index
cat /root/index.html.txt > $index

sed -i '/port/s/{.*}/{ 192.168.17.20; }/' $dns_conf
sed -i '/allow-query/s/{.*}/{ any; }/' $dns_conf
cat /root/named_zones.txt >> $dns_zones

cp -p $dns/named.localhost $dns/aa.com.local
cp -p $dns/named.loopback $dns/aa.com.zone
chown root:named aa.com.zone
chown root:named aa.com.local

cat /root/local.txt > $local
cat /root/zone.txt > $zone

sed -i '1anameserver 192.168.17.20' /etc/resolv.conf
sed -i '1{H;d};2G' /etc/resolv.conf
systemctl restart named.service
systemctl status named.service
systemctl restart httpd
systemctl status httpd

nslookup www.aa.com

vim zone.txt
$TTL 1D
@       IN SOA  @ rname.invalid.  (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A        192.168.17.20
www  IN A     192.168.17.20
ftp  IN A       192.168.17.20
mail IN CNAME   www
vim named_zones.txt
zone "aa.com" IN {
        type master;
        file "aa.com.zone";
        allow-transfer { 192.168.17.20; };
        also-notify { 192.168.17.20; };
};
zone "17.168.192.in-addr.arpa" IN {
        type master;
        file "aa.com.local";
        allow-transfer { 192.168.17.20; };
};
vim local.txt
$TTL 1D
@       IN SOA  aa.com.  rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      aa.com. 
        A       192.168.17.20
10 IN PTR      www.aa.com.
11 IN PTR      ftp.aa.com.
vim index.html.txt
<html><title>web</title><body><h1>this is the web!!!</h1></body></html>

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值