• Как вычислить последний файл в директории?

    @sergey_fs Автор вопроса
    PS C:\Users\User\Desktop\GoLang_Projects\src\coursera\hw1> go run .\main.go -f
    ├───main.go (2565b)
    ├───main_test.go (1865b)
    ├───testdata
            └───project
    ├───file.txt (19b)
    ├───gopher.png (70372b)
            └───static
            └───a_lorem
    ├───dolor.txt (empty)
    ├───gopher.png (70372b)
    ├───ipsum
    ├───gopher.png (70372b)
            └───css
    ├───body.css (28b)
            └───empty.txt (empty)
            └───html
    ├───index.html (57b)
            └───js
    ├───site.js (10b)
            └───z_lorem
    ├───dolor.txt (empty)
    ├───gopher.png (70372b)
    ├───ipsum
    ├───gopher.png (70372b)
            └───zline
    ├───empty.txt (empty)
    ├───lorem
    ├───dolor.txt (empty)
    ├───gopher.png (70372b)
    ├───ipsum
    ├───gopher.png (70372b)
            └───zzfile.txt (empty)


    Вопрос переделал но проблема с вложенными файлами неккоректно отображаються

    https://play.golang.com/p/Hke6YpA33xQ
  • Распарсить JSON?

    @sergey_fs Автор вопроса
    спасибо
  • Вопрос по скрипту JS?

    @sergey_fs Автор вопроса
    а как вызвать функцию вне {
    }

    ////тут возврашает пустоту
    console.log(url)

    const fetch = require('node-fetch')
    //const url = host();
    let url;

    function host() {
    ////обьявляем переменные по срм какой хост Мастер какой слейв
    var master = 'ххххххххххххх';
    var slave = 'ххххххххххххх';

    return fetch('hххххххххххххi/')
    .then(
    function(response) {
    if (response.status == 200) {
    //console.log('Status Code: ' +
    // response.status);
    return master;
    }else {
    return slave;
    }
    }
    )
    }
    ///Обьявляю переменную которая отдаст адрес активной ноды срм
    host().then(url => {
    console.log("Активный адрес CRM ",url);
    });

    ////тут возврашает пустоту
    console.log(url)
  • Просьба помочь с IPtables Forward?

    @sergey_fs Автор вопроса
    sergey_fs, krosh, внешней сети
  • Просьба помочь с IPtables Forward?

    @sergey_fs Автор вопроса

    *filter
    :INPUT DROP [2:80]
    :FORWARD DROP [2:104]
    :OUTPUT ACCEPT [7824:1650359]
    :l - [0:0]
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 4444 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 8095 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5060 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5061 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5090 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5080 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5085 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5060 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5061 -j ACCEPT
    -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5432 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 9090 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
    -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A FORWARD -p tcp -m tcp --dport 4444 -j ACCEPT
    COMMIT
    # Completed on Sat Nov 11 19:57:24 2017
    # Generated by iptables-save v1.4.21 on Sat Nov 11 19:57:24 2017
    *nat
    :PREROUTING ACCEPT [2:695]
    :INPUT ACCEPT [1:655]
    :OUTPUT ACCEPT [0:0]
    :POSTROUTING ACCEPT [0:0]
    -A PREROUTING -i eno16777984 -p tcp -m tcp --dport 4444 -j DNAT --to-destination 192.168.1.2:22
    -A POSTROUTING -d 192.168.1.2/32 -p tcp -m tcp --sport 22 -j SNAT --to-source 192.168.1.6:22
    -A POSTROUTING -s 192.168.1.6/32 -p tcp -m tcp --sport 4444 -j SNAT --to-source 192.168.1.2:22
    COMMIT
    # Completed on Sat Nov 11 19:57:24 2017

  • Просьба помочь с IPtables Forward?

    @sergey_fs Автор вопроса
    krosh, [root@freeswitch ~]# cat /proc/sys/net/ipv4/ip_forward
    1
  • Просьба помочь с IPtables Forward?

    @sergey_fs Автор вопроса
    [root@freeswitch ~]# ip r s
    default via 192.168.1.1 dev eno16777984 proto static metric 100
    192.168.1.0/24 dev eno16777984 proto kernel scope link src 192.168.1.6 metric 100
  • Просьба помочь с IPtables Forward?

    @sergey_fs Автор вопроса
    [root@freeswitch ~]# ip a
    1: lo: mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
    valid_lft forever preferred_lft forever
    2: eno16777984: mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:50:56:01:18:d0 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.6/24 brd 192.168.1.255 scope global eno16777984
    valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe01:18d0/64 scope link
    valid_lft forever preferred_lft forever
  • Просьба помочь с IPtables Forward?

    @sergey_fs Автор вопроса
    задача проборосить порт до локального сервера и управлять им по ssh

    :OUTPUT ACCEPT [1:68]
    :POSTROUTING ACCEPT [1:68]
    -A PREROUTING -i eno16777984 -p tcp -m tcp --dport 4444 -j DNAT --to-destination 192.168.1.2:22
    -A POSTROUTING -d 192.168.1.2/32 -p tcp -m tcp --dport 22 -j SNAT --to-source 192.168.1.6
    COMMIT
    # Completed on Sat Nov 11 19:30:50 2017
    # Generated by iptables-save v1.4.21 on Sat Nov 11 19:30:50 2017
    *filter
    :INPUT DROP [2:80]
    :FORWARD DROP [0:0]
    :OUTPUT ACCEPT [27260:5925157]
    :l - [0:0]
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 4444 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 8095 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5060 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5061 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5090 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5080 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5085 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5060 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5061 -j ACCEPT
    -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5432 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 9090 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
    -A FORWARD -d 192.168.1.2/32 -i eno16777984 -p tcp -m tcp --dport 8094 -j ACCEPT
    -A FORWARD -d 192.168.1.2/32 -i eno16777984 -p tcp -m tcp --dport 4444 -j ACCEPT
    -A FORWARD -d 192.168.1.2/32 -p tcp -m tcp --dport 4444 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
    -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A FORWARD -p tcp -m tcp --dport 4444 -j ACCEPT
    COMMIT

    Пробовал такой конфиг доступа до локального сервера нет
  • Просьба помочь с IPtables Forward?

    @sergey_fs Автор вопроса
    cat /etc/sysconfig/iptables

    *filter
    :INPUT DROP [3:132]
    :FORWARD DROP [0:0]
    :OUTPUT ACCEPT [12213:2627914]
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 4444 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 8095 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5060 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5061 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5090 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5080 -j ACCEPT
    -A INPUT -p udp -m udp --dport 5085 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5060 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5061 -j ACCEPT
    -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 5432 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 9090 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT
    -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
    -A FORWARD -d 192.168.1.2/32 -p tcp -m tcp --dport 22 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
    COMMIT
    # Completed on Sat Nov 11 18:51:48 2017
    # Generated by iptables-save v1.4.21 on Sat Nov 11 18:51:48 2017
    *nat
    :PREROUTING ACCEPT [0:0]
    :INPUT ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    :POSTROUTING ACCEPT [0:0]
    -A PREROUTING -d 192.168.1.6/32 -p tcp -m tcp --dport 4444 -j DNAT --to-destination 192.168.1.2:22
    -A POSTROUTING -d 192.168.1.2/32 -p tcp -m tcp --dport 22 -j SNAT --to-source 192.168.1.6
    COMMIT
  • При возвращение NULL, возвращается предыдущее значение?

    @sergey_fs Автор вопроса
    спасибо помогло ,можете посоветовать книги или видеокурсы для новичка в Go
  • Не возвращает JSON при использовании goroutine?

    @sergey_fs Автор вопроса
    Хотя вывел в принлн все отает
    GET USER
    8585
  • Не возвращает JSON при использовании goroutine?

    @sergey_fs Автор вопроса
    [root@216530-2 ~]# curl -i -u freeswitch:directory -d "method=get_user&name=8585" 0.0.0.0:9090/directory
    HTTP/1.1 200 OK
    Content-Type: application/json
    Date: Sat, 21 Oct 2017 16:09:30 GMT
    Content-Length: 40

    {"username":"","password":"","state":""}[root@216530-2 ~]#

    но само значение не возврашаеться
  • Не возвращает JSON при использовании goroutine?

    @sergey_fs Автор вопроса
    Можете еще подсказать вызываю функциюю

    func get_user(name string) (Directory,error) {
    var rec Directory
    rows, err := db.Query("SELECT directory.username ,directory.pass,ifnull(blacklist.state,'active') FROM directory LEFT JOIN blacklist ON directory.username=blacklist.username WHERE directory.username = ? ",name)
    checkErr(err)
    for rows.Next() {
    err = rows.Scan(&rec.Username,&rec.Pass,&rec.State)
    fmt.Println(rec.Username)
    checkErr(err)
    }
    return rec, err
    }

    вызываю ее в свич кайсе
    case method == "get_user" :
    fmt.Println("GET USER")
    get_user(name)
    jsresponce, _ := json.Marshal(Directory{})
    io.WriteString(w, string(jsresponce))
    return

    Предварительно обявиви структуру
    ////Структура для Directory
    type Directory struct {
    Username string `json:"username"`
    Pass string `json:"password"`
    State string `json:"state"`
    }